/** \file
 *  This C source file was generated by $ANTLR version 3.4
 *
 *     -  From the grammar source file : MySQL.g
 *     -                            On : 2015-12-10 14:46:30
 *     -                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"
#ifdef __clang___
// Comparison of unsigned expression >= 0 is always true.
#pragma GCC diagnostic ignored "-Wtautological-compare"
#else
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 6 )
#pragma GCC diagnostic ignored "-Wtype-limits"
#endif
#endif
#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 onMySQLParseError(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[804+4]
     = {
        (pANTLR3_UINT8) "<invalid>",       /* String to print to indicate an invalid token */
        (pANTLR3_UINT8) "<EOR>",
        (pANTLR3_UINT8) "<DOWN>",
        (pANTLR3_UINT8) "<UP>",
        (pANTLR3_UINT8) "ACCOUNT_SYMBOL",
        (pANTLR3_UINT8) "ASCII_SYMBOL",
        (pANTLR3_UINT8) "ALWAYS_SYMBOL",
        (pANTLR3_UINT8) "BACKUP_SYMBOL",
        (pANTLR3_UINT8) "BEGIN_SYMBOL",
        (pANTLR3_UINT8) "BYTE_SYMBOL",
        (pANTLR3_UINT8) "CACHE_SYMBOL",
        (pANTLR3_UINT8) "CHARSET_SYMBOL",
        (pANTLR3_UINT8) "CHECKSUM_SYMBOL",
        (pANTLR3_UINT8) "CLOSE_SYMBOL",
        (pANTLR3_UINT8) "COMMENT_SYMBOL",
        (pANTLR3_UINT8) "COMMIT_SYMBOL",
        (pANTLR3_UINT8) "CONTAINS_SYMBOL",
        (pANTLR3_UINT8) "DEALLOCATE_SYMBOL",
        (pANTLR3_UINT8) "DO_SYMBOL",
        (pANTLR3_UINT8) "END_SYMBOL",
        (pANTLR3_UINT8) "EXECUTE_SYMBOL",
        (pANTLR3_UINT8) "FLUSH_SYMBOL",
        (pANTLR3_UINT8) "FOLLOWS_SYMBOL",
        (pANTLR3_UINT8) "FORMAT_SYMBOL",
        (pANTLR3_UINT8) "GROUP_REPLICATION_SYMBOL",
        (pANTLR3_UINT8) "HANDLER_SYMBOL",
        (pANTLR3_UINT8) "HELP_SYMBOL",
        (pANTLR3_UINT8) "HOST_SYMBOL",
        (pANTLR3_UINT8) "INSTALL_SYMBOL",
        (pANTLR3_UINT8) "LANGUAGE_SYMBOL",
        (pANTLR3_UINT8) "NO_SYMBOL",
        (pANTLR3_UINT8) "OPEN_SYMBOL",
        (pANTLR3_UINT8) "OPTIONS_SYMBOL",
        (pANTLR3_UINT8) "OWNER_SYMBOL",
        (pANTLR3_UINT8) "PARSER_SYMBOL",
        (pANTLR3_UINT8) "PARTITION_SYMBOL",
        (pANTLR3_UINT8) "PORT_SYMBOL",
        (pANTLR3_UINT8) "PRECEDES_SYMBOL",
        (pANTLR3_UINT8) "PREPARE_SYMBOL",
        (pANTLR3_UINT8) "REMOVE_SYMBOL",
        (pANTLR3_UINT8) "REPAIR_SYMBOL",
        (pANTLR3_UINT8) "RESET_SYMBOL",
        (pANTLR3_UINT8) "RESTORE_SYMBOL",
        (pANTLR3_UINT8) "ROLLBACK_SYMBOL",
        (pANTLR3_UINT8) "SAVEPOINT_SYMBOL",
        (pANTLR3_UINT8) "SECURITY_SYMBOL",
        (pANTLR3_UINT8) "SERVER_SYMBOL",
        (pANTLR3_UINT8) "SIGNED_SYMBOL",
        (pANTLR3_UINT8) "SLAVE_SYMBOL",
        (pANTLR3_UINT8) "SOCKET_SYMBOL",
        (pANTLR3_UINT8) "SONAME_SYMBOL",
        (pANTLR3_UINT8) "START_SYMBOL",
        (pANTLR3_UINT8) "STOP_SYMBOL",
        (pANTLR3_UINT8) "TRUNCATE_SYMBOL",
        (pANTLR3_UINT8) "UNICODE_SYMBOL",
        (pANTLR3_UINT8) "UNINSTALL_SYMBOL",
        (pANTLR3_UINT8) "UPGRADE_SYMBOL",
        (pANTLR3_UINT8) "WRAPPER_SYMBOL",
        (pANTLR3_UINT8) "XA_SYMBOL",
        (pANTLR3_UINT8) "ACTION_SYMBOL",
        (pANTLR3_UINT8) "ADDDATE_SYMBOL",
        (pANTLR3_UINT8) "AFTER_SYMBOL",
        (pANTLR3_UINT8) "AGAINST_SYMBOL",
        (pANTLR3_UINT8) "AGGREGATE_SYMBOL",
        (pANTLR3_UINT8) "ALGORITHM_SYMBOL",
        (pANTLR3_UINT8) "ANALYZE_SYMBOL",
        (pANTLR3_UINT8) "ANY_SYMBOL",
        (pANTLR3_UINT8) "AT_SYMBOL",
        (pANTLR3_UINT8) "AUTHORS_SYMBOL",
        (pANTLR3_UINT8) "AUTO_INCREMENT_SYMBOL",
        (pANTLR3_UINT8) "AUTOEXTEND_SIZE_SYMBOL",
        (pANTLR3_UINT8) "AVG_ROW_LENGTH_SYMBOL",
        (pANTLR3_UINT8) "AVG_SYMBOL",
        (pANTLR3_UINT8) "BINLOG_SYMBOL",
        (pANTLR3_UINT8) "BIT_SYMBOL",
        (pANTLR3_UINT8) "BLOCK_SYMBOL",
        (pANTLR3_UINT8) "BOOL_SYMBOL",
        (pANTLR3_UINT8) "BOOLEAN_SYMBOL",
        (pANTLR3_UINT8) "BTREE_SYMBOL",
        (pANTLR3_UINT8) "CASCADED_SYMBOL",
        (pANTLR3_UINT8) "CATALOG_NAME_SYMBOL",
        (pANTLR3_UINT8) "CHAIN_SYMBOL",
        (pANTLR3_UINT8) "CHANGED_SYMBOL",
        (pANTLR3_UINT8) "CHANNEL_SYMBOL",
        (pANTLR3_UINT8) "CIPHER_SYMBOL",
        (pANTLR3_UINT8) "CLIENT_SYMBOL",
        (pANTLR3_UINT8) "CLASS_ORIGIN_SYMBOL",
        (pANTLR3_UINT8) "COALESCE_SYMBOL",
        (pANTLR3_UINT8) "CODE_SYMBOL",
        (pANTLR3_UINT8) "COLLATION_SYMBOL",
        (pANTLR3_UINT8) "COLUMN_NAME_SYMBOL",
        (pANTLR3_UINT8) "COLUMN_FORMAT_SYMBOL",
        (pANTLR3_UINT8) "COLUMNS_SYMBOL",
        (pANTLR3_UINT8) "COMMITTED_SYMBOL",
        (pANTLR3_UINT8) "COMPACT_SYMBOL",
        (pANTLR3_UINT8) "COMPLETION_SYMBOL",
        (pANTLR3_UINT8) "COMPRESSED_SYMBOL",
        (pANTLR3_UINT8) "COMPRESSION_SYMBOL",
        (pANTLR3_UINT8) "CONCURRENT_SYMBOL",
        (pANTLR3_UINT8) "CONNECTION_SYMBOL",
        (pANTLR3_UINT8) "CONSISTENT_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_CATALOG_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_SCHEMA_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_NAME_SYMBOL",
        (pANTLR3_UINT8) "CONTEXT_SYMBOL",
        (pANTLR3_UINT8) "CONTRIBUTORS_SYMBOL",
        (pANTLR3_UINT8) "CPU_SYMBOL",
        (pANTLR3_UINT8) "CUBE_SYMBOL",
        (pANTLR3_UINT8) "CURRENT_SYMBOL",
        (pANTLR3_UINT8) "CURSOR_NAME_SYMBOL",
        (pANTLR3_UINT8) "DATA_SYMBOL",
        (pANTLR3_UINT8) "DATAFILE_SYMBOL",
        (pANTLR3_UINT8) "DATETIME_SYMBOL",
        (pANTLR3_UINT8) "DATE_SYMBOL",
        (pANTLR3_UINT8) "DAY_SYMBOL",
        (pANTLR3_UINT8) "DEFAULT_AUTH_SYMBOL",
        (pANTLR3_UINT8) "DEFINER_SYMBOL",
        (pANTLR3_UINT8) "DELAY_KEY_WRITE_SYMBOL",
        (pANTLR3_UINT8) "DES_KEY_FILE_SYMBOL",
        (pANTLR3_UINT8) "DIAGNOSTICS_SYMBOL",
        (pANTLR3_UINT8) "DIRECTORY_SYMBOL",
        (pANTLR3_UINT8) "DISABLE_SYMBOL",
        (pANTLR3_UINT8) "DISCARD_SYMBOL",
        (pANTLR3_UINT8) "DISK_SYMBOL",
        (pANTLR3_UINT8) "DUMPFILE_SYMBOL",
        (pANTLR3_UINT8) "DUPLICATE_SYMBOL",
        (pANTLR3_UINT8) "DYNAMIC_SYMBOL",
        (pANTLR3_UINT8) "ENDS_SYMBOL",
        (pANTLR3_UINT8) "ENUM_SYMBOL",
        (pANTLR3_UINT8) "ENGINE_SYMBOL",
        (pANTLR3_UINT8) "ENGINES_SYMBOL",
        (pANTLR3_UINT8) "ERROR_SYMBOL",
        (pANTLR3_UINT8) "ERRORS_SYMBOL",
        (pANTLR3_UINT8) "ESCAPE_SYMBOL",
        (pANTLR3_UINT8) "EVENT_SYMBOL",
        (pANTLR3_UINT8) "EVENTS_SYMBOL",
        (pANTLR3_UINT8) "EVERY_SYMBOL",
        (pANTLR3_UINT8) "EXPANSION_SYMBOL",
        (pANTLR3_UINT8) "EXPORT_SYMBOL",
        (pANTLR3_UINT8) "EXTENDED_SYMBOL",
        (pANTLR3_UINT8) "EXTENT_SIZE_SYMBOL",
        (pANTLR3_UINT8) "FAULTS_SYMBOL",
        (pANTLR3_UINT8) "FAST_SYMBOL",
        (pANTLR3_UINT8) "FOUND_SYMBOL",
        (pANTLR3_UINT8) "ENABLE_SYMBOL",
        (pANTLR3_UINT8) "FULL_SYMBOL",
        (pANTLR3_UINT8) "FILE_SYMBOL",
        (pANTLR3_UINT8) "FILE_BLOCK_SIZE_SYMBOL",
        (pANTLR3_UINT8) "FILTER_SYMBOL",
        (pANTLR3_UINT8) "FIRST_SYMBOL",
        (pANTLR3_UINT8) "FIXED_SYMBOL",
        (pANTLR3_UINT8) "GENERAL_SYMBOL",
        (pANTLR3_UINT8) "GEOMETRY_SYMBOL",
        (pANTLR3_UINT8) "GEOMETRYCOLLECTION_SYMBOL",
        (pANTLR3_UINT8) "GET_FORMAT_SYMBOL",
        (pANTLR3_UINT8) "GRANTS_SYMBOL",
        (pANTLR3_UINT8) "GLOBAL_SYMBOL",
        (pANTLR3_UINT8) "HASH_SYMBOL",
        (pANTLR3_UINT8) "HOSTS_SYMBOL",
        (pANTLR3_UINT8) "HOUR_SYMBOL",
        (pANTLR3_UINT8) "IDENTIFIED_SYMBOL",
        (pANTLR3_UINT8) "IGNORE_SERVER_IDS_SYMBOL",
        (pANTLR3_UINT8) "INVOKER_SYMBOL",
        (pANTLR3_UINT8) "IMPORT_SYMBOL",
        (pANTLR3_UINT8) "INDEXES_SYMBOL",
        (pANTLR3_UINT8) "INITIAL_SIZE_SYMBOL",
        (pANTLR3_UINT8) "INNODB_SYMBOL",
        (pANTLR3_UINT8) "IO_SYMBOL",
        (pANTLR3_UINT8) "IPC_SYMBOL",
        (pANTLR3_UINT8) "ISOLATION_SYMBOL",
        (pANTLR3_UINT8) "ISSUER_SYMBOL",
        (pANTLR3_UINT8) "INSERT_METHOD_SYMBOL",
        (pANTLR3_UINT8) "JSON_SYMBOL",
        (pANTLR3_UINT8) "KEY_BLOCK_SIZE_SYMBOL",
        (pANTLR3_UINT8) "LAST_SYMBOL",
        (pANTLR3_UINT8) "LEAVES_SYMBOL",
        (pANTLR3_UINT8) "LESS_SYMBOL",
        (pANTLR3_UINT8) "LEVEL_SYMBOL",
        (pANTLR3_UINT8) "LINESTRING_SYMBOL",
        (pANTLR3_UINT8) "LIST_SYMBOL",
        (pANTLR3_UINT8) "LOCAL_SYMBOL",
        (pANTLR3_UINT8) "LOCKS_SYMBOL",
        (pANTLR3_UINT8) "LOGFILE_SYMBOL",
        (pANTLR3_UINT8) "LOGS_SYMBOL",
        (pANTLR3_UINT8) "MAX_ROWS_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SYMBOL",
        (pANTLR3_UINT8) "MASTER_HEARTBEAT_PERIOD_SYMBOL",
        (pANTLR3_UINT8) "MASTER_HOST_SYMBOL",
        (pANTLR3_UINT8) "MASTER_PORT_SYMBOL",
        (pANTLR3_UINT8) "MASTER_LOG_FILE_SYMBOL",
        (pANTLR3_UINT8) "MASTER_LOG_POS_SYMBOL",
        (pANTLR3_UINT8) "MASTER_USER_SYMBOL",
        (pANTLR3_UINT8) "MASTER_PASSWORD_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SERVER_ID_SYMBOL",
        (pANTLR3_UINT8) "MASTER_CONNECT_RETRY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_RETRY_COUNT_SYMBOL",
        (pANTLR3_UINT8) "MASTER_DELAY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CA_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CAPATH_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CERT_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CIPHER_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CRL_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_CRLPATH_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_KEY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_AUTO_POSITION_SYMBOL",
        (pANTLR3_UINT8) "MAX_CONNECTIONS_PER_HOUR_SYMBOL",
        (pANTLR3_UINT8) "MAX_QUERIES_PER_HOUR_SYMBOL",
        (pANTLR3_UINT8) "MAX_STATEMENT_TIME_SYMBOL",
        (pANTLR3_UINT8) "MAX_SIZE_SYMBOL",
        (pANTLR3_UINT8) "MAX_UPDATES_PER_HOUR_SYMBOL",
        (pANTLR3_UINT8) "MAX_USER_CONNECTIONS_SYMBOL",
        (pANTLR3_UINT8) "MEDIUM_SYMBOL",
        (pANTLR3_UINT8) "MEMORY_SYMBOL",
        (pANTLR3_UINT8) "MERGE_SYMBOL",
        (pANTLR3_UINT8) "MESSAGE_TEXT_SYMBOL",
        (pANTLR3_UINT8) "MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "MIGRATE_SYMBOL",
        (pANTLR3_UINT8) "MINUTE_SYMBOL",
        (pANTLR3_UINT8) "MIN_ROWS_SYMBOL",
        (pANTLR3_UINT8) "MODIFY_SYMBOL",
        (pANTLR3_UINT8) "MODE_SYMBOL",
        (pANTLR3_UINT8) "MONTH_SYMBOL",
        (pANTLR3_UINT8) "MULTILINESTRING_SYMBOL",
        (pANTLR3_UINT8) "MULTIPOINT_SYMBOL",
        (pANTLR3_UINT8) "MULTIPOLYGON_SYMBOL",
        (pANTLR3_UINT8) "MUTEX_SYMBOL",
        (pANTLR3_UINT8) "MYSQL_ERRNO_SYMBOL",
        (pANTLR3_UINT8) "NAME_SYMBOL",
        (pANTLR3_UINT8) "NAMES_SYMBOL",
        (pANTLR3_UINT8) "NATIONAL_SYMBOL",
        (pANTLR3_UINT8) "NCHAR_SYMBOL",
        (pANTLR3_UINT8) "NDBCLUSTER_SYMBOL",
        (pANTLR3_UINT8) "NEVER_SYMBOL",
        (pANTLR3_UINT8) "NEXT_SYMBOL",
        (pANTLR3_UINT8) "NEW_SYMBOL",
        (pANTLR3_UINT8) "NO_WAIT_SYMBOL",
        (pANTLR3_UINT8) "NODEGROUP_SYMBOL",
        (pANTLR3_UINT8) "NONE_SYMBOL",
        (pANTLR3_UINT8) "NUMBER_SYMBOL",
        (pANTLR3_UINT8) "NVARCHAR_SYMBOL",
        (pANTLR3_UINT8) "OFFSET_SYMBOL",
        (pANTLR3_UINT8) "OLD_PASSWORD_SYMBOL",
        (pANTLR3_UINT8) "ONE_SHOT_SYMBOL",
        (pANTLR3_UINT8) "ONE_SYMBOL",
        (pANTLR3_UINT8) "PACK_KEYS_SYMBOL",
        (pANTLR3_UINT8) "PAGE_SYMBOL",
        (pANTLR3_UINT8) "PARTIAL_SYMBOL",
        (pANTLR3_UINT8) "PARTITIONING_SYMBOL",
        (pANTLR3_UINT8) "PARTITIONS_SYMBOL",
        (pANTLR3_UINT8) "PASSWORD_SYMBOL",
        (pANTLR3_UINT8) "PHASE_SYMBOL",
        (pANTLR3_UINT8) "PLUGIN_DIR_SYMBOL",
        (pANTLR3_UINT8) "PLUGIN_SYMBOL",
        (pANTLR3_UINT8) "PLUGINS_SYMBOL",
        (pANTLR3_UINT8) "POINT_SYMBOL",
        (pANTLR3_UINT8) "POLYGON_SYMBOL",
        (pANTLR3_UINT8) "PRESERVE_SYMBOL",
        (pANTLR3_UINT8) "PREV_SYMBOL",
        (pANTLR3_UINT8) "PRIVILEGES_SYMBOL",
        (pANTLR3_UINT8) "PROCESS_SYMBOL",
        (pANTLR3_UINT8) "PROCESSLIST_SYMBOL",
        (pANTLR3_UINT8) "PROFILE_SYMBOL",
        (pANTLR3_UINT8) "PROFILES_SYMBOL",
        (pANTLR3_UINT8) "PROXY_SYMBOL",
        (pANTLR3_UINT8) "QUARTER_SYMBOL",
        (pANTLR3_UINT8) "QUERY_SYMBOL",
        (pANTLR3_UINT8) "QUICK_SYMBOL",
        (pANTLR3_UINT8) "READ_ONLY_SYMBOL",
        (pANTLR3_UINT8) "REBUILD_SYMBOL",
        (pANTLR3_UINT8) "RECOVER_SYMBOL",
        (pANTLR3_UINT8) "REDO_BUFFER_SIZE_SYMBOL",
        (pANTLR3_UINT8) "REDOFILE_SYMBOL",
        (pANTLR3_UINT8) "REDUNDANT_SYMBOL",
        (pANTLR3_UINT8) "RELAY_SYMBOL",
        (pANTLR3_UINT8) "RELAYLOG_SYMBOL",
        (pANTLR3_UINT8) "RELAY_LOG_FILE_SYMBOL",
        (pANTLR3_UINT8) "RELAY_LOG_POS_SYMBOL",
        (pANTLR3_UINT8) "RELAY_THREAD_SYMBOL",
        (pANTLR3_UINT8) "RELOAD_SYMBOL",
        (pANTLR3_UINT8) "REORGANIZE_SYMBOL",
        (pANTLR3_UINT8) "REPEATABLE_SYMBOL",
        (pANTLR3_UINT8) "REPLICATION_SYMBOL",
        (pANTLR3_UINT8) "REPLICATE_DO_DB_SYMBOL",
        (pANTLR3_UINT8) "REPLICATE_IGNORE_DB_SYMBOL",
        (pANTLR3_UINT8) "REPLICATE_DO_TABLE_SYMBOL",
        (pANTLR3_UINT8) "REPLICATE_IGNORE_TABLE_SYMBOL",
        (pANTLR3_UINT8) "REPLICATE_WILD_DO_TABLE_SYMBOL",
        (pANTLR3_UINT8) "REPLICATE_WILD_IGNORE_TABLE_SYMBOL",
        (pANTLR3_UINT8) "REPLICATE_REWRITE_DB_SYMBOL",
        (pANTLR3_UINT8) "RESUME_SYMBOL",
        (pANTLR3_UINT8) "RETURNED_SQLSTATE_SYMBOL",
        (pANTLR3_UINT8) "RETURNS_SYMBOL",
        (pANTLR3_UINT8) "REVERSE_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) "SCHEDULE_SYMBOL",
        (pANTLR3_UINT8) "SCHEMA_NAME_SYMBOL",
        (pANTLR3_UINT8) "SECOND_SYMBOL",
        (pANTLR3_UINT8) "SERIAL_SYMBOL",
        (pANTLR3_UINT8) "SERIALIZABLE_SYMBOL",
        (pANTLR3_UINT8) "SESSION_SYMBOL",
        (pANTLR3_UINT8) "SIMPLE_SYMBOL",
        (pANTLR3_UINT8) "SHARE_SYMBOL",
        (pANTLR3_UINT8) "SHUTDOWN_SYMBOL",
        (pANTLR3_UINT8) "SLOW_SYMBOL",
        (pANTLR3_UINT8) "SNAPSHOT_SYMBOL",
        (pANTLR3_UINT8) "SOUNDS_SYMBOL",
        (pANTLR3_UINT8) "SOURCE_SYMBOL",
        (pANTLR3_UINT8) "SQL_AFTER_GTIDS_SYMBOL",
        (pANTLR3_UINT8) "SQL_AFTER_MTS_GAPS_SYMBOL",
        (pANTLR3_UINT8) "SQL_BEFORE_GTIDS_SYMBOL",
        (pANTLR3_UINT8) "SQL_CACHE_SYMBOL",
        (pANTLR3_UINT8) "SQL_BUFFER_RESULT_SYMBOL",
        (pANTLR3_UINT8) "SQL_NO_CACHE_SYMBOL",
        (pANTLR3_UINT8) "SQL_THREAD_SYMBOL",
        (pANTLR3_UINT8) "STACKED_SYMBOL",
        (pANTLR3_UINT8) "STARTS_SYMBOL",
        (pANTLR3_UINT8) "STATS_AUTO_RECALC_SYMBOL",
        (pANTLR3_UINT8) "STATS_PERSISTENT_SYMBOL",
        (pANTLR3_UINT8) "STATS_SAMPLE_PAGES_SYMBOL",
        (pANTLR3_UINT8) "STATUS_SYMBOL",
        (pANTLR3_UINT8) "STORAGE_SYMBOL",
        (pANTLR3_UINT8) "STRING_SYMBOL",
        (pANTLR3_UINT8) "SUBCLASS_ORIGIN_SYMBOL",
        (pANTLR3_UINT8) "SUBDATE_SYMBOL",
        (pANTLR3_UINT8) "SUBJECT_SYMBOL",
        (pANTLR3_UINT8) "SUBPARTITION_SYMBOL",
        (pANTLR3_UINT8) "SUBPARTITIONS_SYMBOL",
        (pANTLR3_UINT8) "SUPER_SYMBOL",
        (pANTLR3_UINT8) "SUSPEND_SYMBOL",
        (pANTLR3_UINT8) "SWAPS_SYMBOL",
        (pANTLR3_UINT8) "SWITCHES_SYMBOL",
        (pANTLR3_UINT8) "TABLE_NAME_SYMBOL",
        (pANTLR3_UINT8) "TABLES_SYMBOL",
        (pANTLR3_UINT8) "TABLE_CHECKSUM_SYMBOL",
        (pANTLR3_UINT8) "TABLESPACE_SYMBOL",
        (pANTLR3_UINT8) "TEMPORARY_SYMBOL",
        (pANTLR3_UINT8) "TEMPTABLE_SYMBOL",
        (pANTLR3_UINT8) "TEXT_SYMBOL",
        (pANTLR3_UINT8) "THAN_SYMBOL",
        (pANTLR3_UINT8) "TRANSACTION_SYMBOL",
        (pANTLR3_UINT8) "TRIGGERS_SYMBOL",
        (pANTLR3_UINT8) "TIMESTAMP_SYMBOL",
        (pANTLR3_UINT8) "TIMESTAMP_ADD_SYMBOL",
        (pANTLR3_UINT8) "TIMESTAMP_DIFF_SYMBOL",
        (pANTLR3_UINT8) "TIME_SYMBOL",
        (pANTLR3_UINT8) "TYPES_SYMBOL",
        (pANTLR3_UINT8) "TYPE_SYMBOL",
        (pANTLR3_UINT8) "UDF_RETURNS_SYMBOL",
        (pANTLR3_UINT8) "FUNCTION_SYMBOL",
        (pANTLR3_UINT8) "UNCOMMITTED_SYMBOL",
        (pANTLR3_UINT8) "UNDEFINED_SYMBOL",
        (pANTLR3_UINT8) "UNDO_BUFFER_SIZE_SYMBOL",
        (pANTLR3_UINT8) "UNDOFILE_SYMBOL",
        (pANTLR3_UINT8) "UNKNOWN_SYMBOL",
        (pANTLR3_UINT8) "UNTIL_SYMBOL",
        (pANTLR3_UINT8) "USER_RESOURCES_SYMBOL",
        (pANTLR3_UINT8) "USER_SYMBOL",
        (pANTLR3_UINT8) "USE_FRM_SYMBOL",
        (pANTLR3_UINT8) "VARIABLES_SYMBOL",
        (pANTLR3_UINT8) "VIEW_SYMBOL",
        (pANTLR3_UINT8) "VALUE_SYMBOL",
        (pANTLR3_UINT8) "WARNINGS_SYMBOL",
        (pANTLR3_UINT8) "WAIT_SYMBOL",
        (pANTLR3_UINT8) "WEEK_SYMBOL",
        (pANTLR3_UINT8) "WORK_SYMBOL",
        (pANTLR3_UINT8) "WEIGHT_STRING_SYMBOL",
        (pANTLR3_UINT8) "X509_SYMBOL",
        (pANTLR3_UINT8) "XID_SYMBOL",
        (pANTLR3_UINT8) "XML_SYMBOL",
        (pANTLR3_UINT8) "YEAR_SYMBOL",
        (pANTLR3_UINT8) "ACCESSIBLE_SYMBOL",
        (pANTLR3_UINT8) "ADD_SYMBOL",
        (pANTLR3_UINT8) "ALL_SYMBOL",
        (pANTLR3_UINT8) "ALTER_SYMBOL",
        (pANTLR3_UINT8) "ALTER_TABLE_ITEM_TOKEN",
        (pANTLR3_UINT8) "ANALYSE_SYMBOL",
        (pANTLR3_UINT8) "AND_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_TEXT_SUFFIX",
        (pANTLR3_UINT8) "BACK_TICK",
        (pANTLR3_UINT8) "BACK_TICK_QUOTED_ID",
        (pANTLR3_UINT8) "BEFORE_SYMBOL",
        (pANTLR3_UINT8) "BETWEEN_SYMBOL",
        (pANTLR3_UINT8) "BIGINT_SYMBOL",
        (pANTLR3_UINT8) "BINARY_SYMBOL",
        (pANTLR3_UINT8) "BIN_NUMBER",
        (pANTLR3_UINT8) "BIN_NUM_SYMBOL",
        (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_XOR_SYMBOL",
        (pANTLR3_UINT8) "BLOB_SYMBOL",
        (pANTLR3_UINT8) "BLOCK_COMMENT",
        (pANTLR3_UINT8) "BOTH_SYMBOL",
        (pANTLR3_UINT8) "BY_SYMBOL",
        (pANTLR3_UINT8) "CALL_SYMBOL",
        (pANTLR3_UINT8) "CASCADE_SYMBOL",
        (pANTLR3_UINT8) "CASE_SYMBOL",
        (pANTLR3_UINT8) "CAST_SYMBOL",
        (pANTLR3_UINT8) "CHANGE_MASTER_OPTIONS_TOKEN",
        (pANTLR3_UINT8) "CHANGE_SYMBOL",
        (pANTLR3_UINT8) "CHARACTER_SYMBOL",
        (pANTLR3_UINT8) "CHAR_SYMBOL",
        (pANTLR3_UINT8) "CHECK_SYMBOL",
        (pANTLR3_UINT8) "CLOSE_CURLY_SYMBOL",
        (pANTLR3_UINT8) "CLOSE_PAR_SYMBOL",
        (pANTLR3_UINT8) "COLLATE_SYMBOL",
        (pANTLR3_UINT8) "COLON_SYMBOL",
        (pANTLR3_UINT8) "COLUMN_ASSIGNMENT_LIST_TOKEN",
        (pANTLR3_UINT8) "COLUMN_INTERNAL_REF_TOKEN",
        (pANTLR3_UINT8) "COLUMN_NAME_TOKEN",
        (pANTLR3_UINT8) "COLUMN_REF_TOKEN",
        (pANTLR3_UINT8) "COLUMN_SYMBOL",
        (pANTLR3_UINT8) "COMMA_SYMBOL",
        (pANTLR3_UINT8) "COMMENT_RULE",
        (pANTLR3_UINT8) "CONCAT_PIPES_SYMBOL",
        (pANTLR3_UINT8) "CONDITION_SYMBOL",
        (pANTLR3_UINT8) "CONSTRAINT_SYMBOL",
        (pANTLR3_UINT8) "CONTINUE_SYMBOL",
        (pANTLR3_UINT8) "CONVERT_SYMBOL",
        (pANTLR3_UINT8) "COUNT_SYMBOL",
        (pANTLR3_UINT8) "CREATE_ITEM_TOKEN",
        (pANTLR3_UINT8) "CREATE_SYMBOL",
        (pANTLR3_UINT8) "CROSS_SYMBOL",
        (pANTLR3_UINT8) "CURDATE_SYMBOL",
        (pANTLR3_UINT8) "CURRENT_TIMESTAMP_SYMBOL",
        (pANTLR3_UINT8) "CURRENT_USER_SYMBOL",
        (pANTLR3_UINT8) "CURSOR_SYMBOL",
        (pANTLR3_UINT8) "CURTIME_SYMBOL",
        (pANTLR3_UINT8) "DASHDASH_COMMENT",
        (pANTLR3_UINT8) "DATABASES_SYMBOL",
        (pANTLR3_UINT8) "DATABASE_SYMBOL",
        (pANTLR3_UINT8) "DATA_TYPE_TOKEN",
        (pANTLR3_UINT8) "DATE_ADD_INTERVAL_SYMBOL",
        (pANTLR3_UINT8) "DATE_ADD_SYMBOL",
        (pANTLR3_UINT8) "DATE_SUB_INTERVAL_SYMBOL",
        (pANTLR3_UINT8) "DATE_SUB_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) "DECIMAL_NUMBER",
        (pANTLR3_UINT8) "DECIMAL_NUM_SYMBOL",
        (pANTLR3_UINT8) "DECIMAL_SYMBOL",
        (pANTLR3_UINT8) "DECLARE_SYMBOL",
        (pANTLR3_UINT8) "DEC_SYMBOL",
        (pANTLR3_UINT8) "DEFAULT_SYMBOL",
        (pANTLR3_UINT8) "DELAYED_SYMBOL",
        (pANTLR3_UINT8) "DELETE_SYMBOL",
        (pANTLR3_UINT8) "DESCRIBE_SYMBOL",
        (pANTLR3_UINT8) "DESC_SYMBOL",
        (pANTLR3_UINT8) "DETERMINISTIC_SYMBOL",
        (pANTLR3_UINT8) "DIGIT",
        (pANTLR3_UINT8) "DIGITS",
        (pANTLR3_UINT8) "DISTINCTROW_SYMBOL",
        (pANTLR3_UINT8) "DISTINCT_SYMBOL",
        (pANTLR3_UINT8) "DIV_OPERATOR",
        (pANTLR3_UINT8) "DIV_SYMBOL",
        (pANTLR3_UINT8) "DOT_SYMBOL",
        (pANTLR3_UINT8) "DOUBLE_DASH",
        (pANTLR3_UINT8) "DOUBLE_QUOTE",
        (pANTLR3_UINT8) "DOUBLE_QUOTED_TEXT",
        (pANTLR3_UINT8) "DOUBLE_SYMBOL",
        (pANTLR3_UINT8) "DROP_SYMBOL",
        (pANTLR3_UINT8) "DUAL_SYMBOL",
        (pANTLR3_UINT8) "EACH_SYMBOL",
        (pANTLR3_UINT8) "ELSEIF_SYMBOL",
        (pANTLR3_UINT8) "ELSE_SYMBOL",
        (pANTLR3_UINT8) "ENCLOSED_SYMBOL",
        (pANTLR3_UINT8) "END_OF_INPUT_SYMBOL",
        (pANTLR3_UINT8) "ENGINE_REF_TOKEN",
        (pANTLR3_UINT8) "EQUAL_OPERATOR",
        (pANTLR3_UINT8) "ESCAPED_SYMBOL",
        (pANTLR3_UINT8) "ESCAPE_OPERATOR",
        (pANTLR3_UINT8) "EVENT_NAME_TOKEN",
        (pANTLR3_UINT8) "EVENT_REF_TOKEN",
        (pANTLR3_UINT8) "EXCHANGE_SYMBOL",
        (pANTLR3_UINT8) "EXISTS_SYMBOL",
        (pANTLR3_UINT8) "EXIT_SYMBOL",
        (pANTLR3_UINT8) "EXPIRE_SYMBOL",
        (pANTLR3_UINT8) "EXPLAIN_SYMBOL",
        (pANTLR3_UINT8) "EXPRESSION_TOKEN",
        (pANTLR3_UINT8) "EXTRACT_SYMBOL",
        (pANTLR3_UINT8) "FALSE_SYMBOL",
        (pANTLR3_UINT8) "FETCH_SYMBOL",
        (pANTLR3_UINT8) "FIELDS_SYMBOL",
        (pANTLR3_UINT8) "FLOAT4_SYMBOL",
        (pANTLR3_UINT8) "FLOAT8_SYMBOL",
        (pANTLR3_UINT8) "FLOAT_NUMBER",
        (pANTLR3_UINT8) "FLOAT_SYMBOL",
        (pANTLR3_UINT8) "FORCE_SYMBOL",
        (pANTLR3_UINT8) "FOREIGN_SYMBOL",
        (pANTLR3_UINT8) "FOR_SYMBOL",
        (pANTLR3_UINT8) "FRAC_SECOND_SYMBOL",
        (pANTLR3_UINT8) "FROM_SYMBOL",
        (pANTLR3_UINT8) "FULLTEXT_SYMBOL",
        (pANTLR3_UINT8) "FUNCTION_CALL_TOKEN",
        (pANTLR3_UINT8) "FUNCTION_NAME_TOKEN",
        (pANTLR3_UINT8) "FUNCTION_REF_TOKEN",
        (pANTLR3_UINT8) "GENERATED_SYMBOL",
        (pANTLR3_UINT8) "GET_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) "HAVING_SYMBOL",
        (pANTLR3_UINT8) "HEXDIGIT",
        (pANTLR3_UINT8) "HEX_NUMBER",
        (pANTLR3_UINT8) "HIGH_PRIORITY_SYMBOL",
        (pANTLR3_UINT8) "HOUR_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "HOUR_MINUTE_SYMBOL",
        (pANTLR3_UINT8) "HOUR_SECOND_SYMBOL",
        (pANTLR3_UINT8) "IDENTIFIER",
        (pANTLR3_UINT8) "IF_SYMBOL",
        (pANTLR3_UINT8) "IGNORE_SYMBOL",
        (pANTLR3_UINT8) "INDEX_HINT_LIST_TOKEN",
        (pANTLR3_UINT8) "INDEX_NAME_TOKEN",
        (pANTLR3_UINT8) "INDEX_REF_TOKEN",
        (pANTLR3_UINT8) "INDEX_SYMBOL",
        (pANTLR3_UINT8) "INFILE_SYMBOL",
        (pANTLR3_UINT8) "INNER_SYMBOL",
        (pANTLR3_UINT8) "INOUT_SYMBOL",
        (pANTLR3_UINT8) "INSENSITIVE_SYMBOL",
        (pANTLR3_UINT8) "INSERT_SYMBOL",
        (pANTLR3_UINT8) "INT1_SYMBOL",
        (pANTLR3_UINT8) "INT2_SYMBOL",
        (pANTLR3_UINT8) "INT3_SYMBOL",
        (pANTLR3_UINT8) "INT4_SYMBOL",
        (pANTLR3_UINT8) "INT8_SYMBOL",
        (pANTLR3_UINT8) "INTEGER_SYMBOL",
        (pANTLR3_UINT8) "INTERVAL_SYMBOL",
        (pANTLR3_UINT8) "INTO_SYMBOL",
        (pANTLR3_UINT8) "INT_NUMBER",
        (pANTLR3_UINT8) "INT_SYMBOL",
        (pANTLR3_UINT8) "INVALID_INPUT",
        (pANTLR3_UINT8) "IN_SYMBOL",
        (pANTLR3_UINT8) "IO_AFTER_GTIDS_SYMBOL",
        (pANTLR3_UINT8) "IO_BEFORE_GTIDS_SYMBOL",
        (pANTLR3_UINT8) "IO_THREAD_SYMBOL",
        (pANTLR3_UINT8) "IS_SYMBOL",
        (pANTLR3_UINT8) "ITERATE_SYMBOL",
        (pANTLR3_UINT8) "JOIN_EXPR_TOKEN",
        (pANTLR3_UINT8) "JOIN_SYMBOL",
        (pANTLR3_UINT8) "JSON_SEPARATOR_SYMBOL",
        (pANTLR3_UINT8) "KEYS_SYMBOL",
        (pANTLR3_UINT8) "KEY_CACHE_LIST_TOKEN",
        (pANTLR3_UINT8) "KEY_CACHE_PARTITION_TOKEN",
        (pANTLR3_UINT8) "KEY_SYMBOL",
        (pANTLR3_UINT8) "KILL_SYMBOL",
        (pANTLR3_UINT8) "LABEL_TOKEN",
        (pANTLR3_UINT8) "LEADING_SYMBOL",
        (pANTLR3_UINT8) "LEAVE_SYMBOL",
        (pANTLR3_UINT8) "LEFT_SYMBOL",
        (pANTLR3_UINT8) "LESS_OR_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "LESS_THAN_OPERATOR",
        (pANTLR3_UINT8) "LETTER_WHEN_UNQUOTED",
        (pANTLR3_UINT8) "LETTER_WHEN_UNQUOTED_NO_DIGIT",
        (pANTLR3_UINT8) "LIKE_SYMBOL",
        (pANTLR3_UINT8) "LIMIT_SYMBOL",
        (pANTLR3_UINT8) "LINEAR_SYMBOL",
        (pANTLR3_UINT8) "LINEBREAK",
        (pANTLR3_UINT8) "LINES_SYMBOL",
        (pANTLR3_UINT8) "LOAD_SYMBOL",
        (pANTLR3_UINT8) "LOCALTIMESTAMP_SYMBOL",
        (pANTLR3_UINT8) "LOCALTIME_SYMBOL",
        (pANTLR3_UINT8) "LOCATOR_SYMBOL",
        (pANTLR3_UINT8) "LOCK_SYMBOL",
        (pANTLR3_UINT8) "LOGFILE_GROUP_NAME_TOKEN",
        (pANTLR3_UINT8) "LOGFILE_GROUP_OPTIONS_TOKEN",
        (pANTLR3_UINT8) "LOGFILE_GROUP_REF_TOKEN",
        (pANTLR3_UINT8) "LOGICAL_AND_OPERATOR",
        (pANTLR3_UINT8) "LOGICAL_NOT_OPERATOR",
        (pANTLR3_UINT8) "LOGICAL_OR_OPERATOR",
        (pANTLR3_UINT8) "LONGBLOB_SYMBOL",
        (pANTLR3_UINT8) "LONGTEXT_SYMBOL",
        (pANTLR3_UINT8) "LONG_NUMBER",
        (pANTLR3_UINT8) "LONG_NUM_SYMBOL",
        (pANTLR3_UINT8) "LONG_SYMBOL",
        (pANTLR3_UINT8) "LOOP_SYMBOL",
        (pANTLR3_UINT8) "LOW_PRIORITY_SYMBOL",
        (pANTLR3_UINT8) "MASTER_BIND_SYMBOL",
        (pANTLR3_UINT8) "MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL",
        (pANTLR3_UINT8) "MATCH_SYMBOL",
        (pANTLR3_UINT8) "MAXVALUE_SYMBOL",
        (pANTLR3_UINT8) "MAX_SYMBOL",
        (pANTLR3_UINT8) "MEDIUMBLOB_SYMBOL",
        (pANTLR3_UINT8) "MEDIUMINT_SYMBOL",
        (pANTLR3_UINT8) "MEDIUMTEXT_SYMBOL",
        (pANTLR3_UINT8) "MIDDLEINT_SYMBOL",
        (pANTLR3_UINT8) "MID_SYMBOL",
        (pANTLR3_UINT8) "MINUS_OPERATOR",
        (pANTLR3_UINT8) "MINUTE_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "MINUTE_SECOND_SYMBOL",
        (pANTLR3_UINT8) "MIN_SYMBOL",
        (pANTLR3_UINT8) "ML_COMMENT_END",
        (pANTLR3_UINT8) "ML_COMMENT_HEAD",
        (pANTLR3_UINT8) "MODIFIES_SYMBOL",
        (pANTLR3_UINT8) "MOD_OPERATOR",
        (pANTLR3_UINT8) "MOD_SYMBOL",
        (pANTLR3_UINT8) "MULTILINE_COMMENT",
        (pANTLR3_UINT8) "MULT_OPERATOR",
        (pANTLR3_UINT8) "NATURAL_SYMBOL",
        (pANTLR3_UINT8) "NCHAR_STRING_SYMBOL",
        (pANTLR3_UINT8) "NCHAR_TEXT",
        (pANTLR3_UINT8) "NDB_SYMBOL",
        (pANTLR3_UINT8) "NEG_SYMBOL",
        (pANTLR3_UINT8) "NONBLOCKING_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_WRITE_TO_BINLOG_SYMBOL",
        (pANTLR3_UINT8) "NULL2_SYMBOL",
        (pANTLR3_UINT8) "NULL_SAFE_EQUAL_OPERATOR",
        (pANTLR3_UINT8) "NULL_SYMBOL",
        (pANTLR3_UINT8) "NUMBER",
        (pANTLR3_UINT8) "NUMERIC_SYMBOL",
        (pANTLR3_UINT8) "OFFLINE_SYMBOL",
        (pANTLR3_UINT8) "ONLINE_SYMBOL",
        (pANTLR3_UINT8) "ONLY_SYMBOL",
        (pANTLR3_UINT8) "ON_SYMBOL",
        (pANTLR3_UINT8) "OPEN_CURLY_SYMBOL",
        (pANTLR3_UINT8) "OPEN_PAR_SYMBOL",
        (pANTLR3_UINT8) "OPTIMIZER_COSTS_SYMBOL",
        (pANTLR3_UINT8) "OPTIMIZE_SYMBOL",
        (pANTLR3_UINT8) "OPTIONALLY_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) "PARAM_MARKER",
        (pANTLR3_UINT8) "PAR_EXPRESSION_TOKEN",
        (pANTLR3_UINT8) "PLUS_OPERATOR",
        (pANTLR3_UINT8) "POSITION_SYMBOL",
        (pANTLR3_UINT8) "POUND_COMMENT",
        (pANTLR3_UINT8) "PRECISION_SYMBOL",
        (pANTLR3_UINT8) "PRIMARY_SYMBOL",
        (pANTLR3_UINT8) "PRIVILEGE_TARGET_TOKEN",
        (pANTLR3_UINT8) "PROCEDURE_NAME_TOKEN",
        (pANTLR3_UINT8) "PROCEDURE_REF_TOKEN",
        (pANTLR3_UINT8) "PROCEDURE_SYMBOL",
        (pANTLR3_UINT8) "PURGE_SYMBOL",
        (pANTLR3_UINT8) "RANGE_SYMBOL",
        (pANTLR3_UINT8) "READS_SYMBOL",
        (pANTLR3_UINT8) "READ_SYMBOL",
        (pANTLR3_UINT8) "READ_WRITE_SYMBOL",
        (pANTLR3_UINT8) "REAL_SYMBOL",
        (pANTLR3_UINT8) "REFERENCES_SYMBOL",
        (pANTLR3_UINT8) "REGEXP_SYMBOL",
        (pANTLR3_UINT8) "RELEASE_SYMBOL",
        (pANTLR3_UINT8) "RENAME_SYMBOL",
        (pANTLR3_UINT8) "REPEAT_SYMBOL",
        (pANTLR3_UINT8) "REPLACE_SYMBOL",
        (pANTLR3_UINT8) "REQUIRE_SYMBOL",
        (pANTLR3_UINT8) "RESIGNAL_SYMBOL",
        (pANTLR3_UINT8) "RESTRICT_SYMBOL",
        (pANTLR3_UINT8) "RETURN_SYMBOL",
        (pANTLR3_UINT8) "REVOKE_SYMBOL",
        (pANTLR3_UINT8) "RIGHT_SYMBOL",
        (pANTLR3_UINT8) "RLIKE_SYMBOL",
        (pANTLR3_UINT8) "ROUTINE_ALTER_OPTIONS",
        (pANTLR3_UINT8) "ROUTINE_CREATE_OPTIONS",
        (pANTLR3_UINT8) "RUNTIME_FUNCTION_TOKEN",
        (pANTLR3_UINT8) "SCHEMAS_SYMBOL",
        (pANTLR3_UINT8) "SCHEMA_NAME_TOKEN",
        (pANTLR3_UINT8) "SCHEMA_REF_TOKEN",
        (pANTLR3_UINT8) "SCHEMA_SYMBOL",
        (pANTLR3_UINT8) "SECOND_MICROSECOND_SYMBOL",
        (pANTLR3_UINT8) "SELECT_EXPR_TOKEN",
        (pANTLR3_UINT8) "SELECT_SYMBOL",
        (pANTLR3_UINT8) "SEMICOLON_SYMBOL",
        (pANTLR3_UINT8) "SENSITIVE_SYMBOL",
        (pANTLR3_UINT8) "SEPARATOR_SYMBOL",
        (pANTLR3_UINT8) "SERVER_NAME_TOKEN",
        (pANTLR3_UINT8) "SERVER_OPTIONS_SYMBOL",
        (pANTLR3_UINT8) "SERVER_REF_TOKEN",
        (pANTLR3_UINT8) "SESSION_USER_SYMBOL",
        (pANTLR3_UINT8) "SET_SYMBOL",
        (pANTLR3_UINT8) "SET_VAR_SYMBOL",
        (pANTLR3_UINT8) "SHIFT_LEFT_OPERATOR",
        (pANTLR3_UINT8) "SHIFT_RIGHT_OPERATOR",
        (pANTLR3_UINT8) "SHOW_SYMBOL",
        (pANTLR3_UINT8) "SIGNAL_SYMBOL",
        (pANTLR3_UINT8) "SIMPLE_IDENTIFIER",
        (pANTLR3_UINT8) "SINGLE_QUOTE",
        (pANTLR3_UINT8) "SINGLE_QUOTED_TEXT",
        (pANTLR3_UINT8) "SLAVE_THREAD_OPTIONS_TOKEN",
        (pANTLR3_UINT8) "SMALLINT_SYMBOL",
        (pANTLR3_UINT8) "SPATIAL_SYMBOL",
        (pANTLR3_UINT8) "SPECIFIC_SYMBOL",
        (pANTLR3_UINT8) "SQLEXCEPTION_SYMBOL",
        (pANTLR3_UINT8) "SQLSTATE_SYMBOL",
        (pANTLR3_UINT8) "SQLWARNING_SYMBOL",
        (pANTLR3_UINT8) "SQL_BIG_RESULT_SYMBOL",
        (pANTLR3_UINT8) "SQL_CALC_FOUND_ROWS_SYMBOL",
        (pANTLR3_UINT8) "SQL_SMALL_RESULT_SYMBOL",
        (pANTLR3_UINT8) "SQL_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) "STDDEV_POP_SYMBOL",
        (pANTLR3_UINT8) "STDDEV_SAMP_SYMBOL",
        (pANTLR3_UINT8) "STDDEV_SYMBOL",
        (pANTLR3_UINT8) "STD_SYMBOL",
        (pANTLR3_UINT8) "STORED_SYMBOL",
        (pANTLR3_UINT8) "STRAIGHT_JOIN_SYMBOL",
        (pANTLR3_UINT8) "STRING_NO_LINEBREAK_TOKEN",
        (pANTLR3_UINT8) "STRING_TOKEN",
        (pANTLR3_UINT8) "SUBQUERY_TOKEN",
        (pANTLR3_UINT8) "SUBSTRING_SYMBOL",
        (pANTLR3_UINT8) "SUBSTR_SYMBOL",
        (pANTLR3_UINT8) "SUM_SYMBOL",
        (pANTLR3_UINT8) "SYSDATE_SYMBOL",
        (pANTLR3_UINT8) "SYSTEM_USER_SYMBOL",
        (pANTLR3_UINT8) "TABLESPACE_NAME_TOKEN",
        (pANTLR3_UINT8) "TABLESPACE_OPTIONS_TOKEN",
        (pANTLR3_UINT8) "TABLESPACE_REF_TOKEN",
        (pANTLR3_UINT8) "TABLE_NAME_TOKEN",
        (pANTLR3_UINT8) "TABLE_REF_PRIORITY_SYMBOL",
        (pANTLR3_UINT8) "TABLE_REF_TOKEN",
        (pANTLR3_UINT8) "TABLE_SYMBOL",
        (pANTLR3_UINT8) "TERMINATED_SYMBOL",
        (pANTLR3_UINT8) "THEN_SYMBOL",
        (pANTLR3_UINT8) "TINYBLOB_SYMBOL",
        (pANTLR3_UINT8) "TINYINT_SYMBOL",
        (pANTLR3_UINT8) "TINYTEXT_SYMBOL",
        (pANTLR3_UINT8) "TO_SYMBOL",
        (pANTLR3_UINT8) "TRAILING_SYMBOL",
        (pANTLR3_UINT8) "TRIGGER_NAME_TOKEN",
        (pANTLR3_UINT8) "TRIGGER_REF_TOKEN",
        (pANTLR3_UINT8) "TRIGGER_SYMBOL",
        (pANTLR3_UINT8) "TRIM_SYMBOL",
        (pANTLR3_UINT8) "TRUE_SYMBOL",
        (pANTLR3_UINT8) "UDF_CALL_TOKEN",
        (pANTLR3_UINT8) "UDF_NAME_TOKEN",
        (pANTLR3_UINT8) "ULONGLONG_NUMBER",
        (pANTLR3_UINT8) "UNDERLINE_SYMBOL",
        (pANTLR3_UINT8) "UNDERSCORE_CHARSET",
        (pANTLR3_UINT8) "UNDO_SYMBOL",
        (pANTLR3_UINT8) "UNION_SYMBOL",
        (pANTLR3_UINT8) "UNIQUE_SYMBOL",
        (pANTLR3_UINT8) "UNLOCK_SYMBOL",
        (pANTLR3_UINT8) "UNSIGNED_SYMBOL",
        (pANTLR3_UINT8) "UPDATE_SYMBOL",
        (pANTLR3_UINT8) "USAGE_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) "VALIDATION_SYMBOL",
        (pANTLR3_UINT8) "VALUES_SYMBOL",
        (pANTLR3_UINT8) "VARBINARY_SYMBOL",
        (pANTLR3_UINT8) "VARCHARACTER_SYMBOL",
        (pANTLR3_UINT8) "VARCHAR_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_TOKEN",
        (pANTLR3_UINT8) "VERSION_COMMENT_TAIL",
        (pANTLR3_UINT8) "VIEW_NAME_TOKEN",
        (pANTLR3_UINT8) "VIEW_REF_TOKEN",
        (pANTLR3_UINT8) "VIRTUAL_SYMBOL",
        (pANTLR3_UINT8) "WHEN_SYMBOL",
        (pANTLR3_UINT8) "WHERE_SYMBOL",
        (pANTLR3_UINT8) "WHILE_SYMBOL",
        (pANTLR3_UINT8) "WHITESPACE",
        (pANTLR3_UINT8) "WITHOUT_SYMBOL",
        (pANTLR3_UINT8) "WITH_CUBE_SYMBOL",
        (pANTLR3_UINT8) "WITH_ROLLUP_SYMBOL",
        (pANTLR3_UINT8) "WITH_SYMBOL",
        (pANTLR3_UINT8) "WRITE_SYMBOL",
        (pANTLR3_UINT8) "XA_ID_TOKEN",
        (pANTLR3_UINT8) "XOR_SYMBOL",
        (pANTLR3_UINT8) "YEAR_MONTH_SYMBOL",
        (pANTLR3_UINT8) "ZEROFILL_SYMBOL"
       };



// 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_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_table_list_entry_return
	alter_table_list_entry    (pMySQLParser ctx);
static 
 MySQLParser_key_def_return
	key_def    (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_validation_return
	validation    (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_tablespace_option_return
	alter_tablespace_option    (pMySQLParser ctx);
static 
 MySQLParser_change_tablespace_option_return
	change_tablespace_option    (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_database_tail_return
	create_database_tail    (pMySQLParser ctx);
static 
 MySQLParser_create_with_definer_return
	create_with_definer    (pMySQLParser ctx);
static 
 MySQLParser_create_event_return
	create_event    (pMySQLParser ctx);
static 
 MySQLParser_create_event_tail_return
	create_event_tail    (pMySQLParser ctx);
static 
 MySQLParser_create_routine_return
	create_routine    (pMySQLParser ctx);
static 
 MySQLParser_create_procedure_return
	create_procedure    (pMySQLParser ctx);
static 
 MySQLParser_create_function_return
	create_function    (pMySQLParser ctx);
static 
 MySQLParser_create_routine_or_udf_return
	create_routine_or_udf    (pMySQLParser ctx);
static 
 MySQLParser_procedure_body_return
	procedure_body    (pMySQLParser ctx);
static 
 MySQLParser_function_body_return
	function_body    (pMySQLParser ctx);
static 
 MySQLParser_udf_tail_return
	udf_tail    (pMySQLParser ctx);
static 
 MySQLParser_routine_create_options_return
	routine_create_options    (pMySQLParser ctx);
static 
 MySQLParser_routine_create_option_return
	routine_create_option    (pMySQLParser ctx);
static 
 MySQLParser_routine_alter_options_return
	routine_alter_options    (pMySQLParser ctx);
static 
 MySQLParser_routine_option_return
	routine_option    (pMySQLParser ctx);
static 
 MySQLParser_create_index_return
	create_index    (pMySQLParser ctx);
static 
 MySQLParser_create_index_tail_return
	create_index_tail    (pMySQLParser ctx);
static 
 MySQLParser_create_index_target_return
	create_index_target    (pMySQLParser ctx);
static 
 MySQLParser_create_logfile_group_return
	create_logfile_group    (pMySQLParser ctx);
static 
 MySQLParser_create_logfile_group_tail_return
	create_logfile_group_tail    (pMySQLParser ctx);
static 
 MySQLParser_logfile_group_options_return
	logfile_group_options    (pMySQLParser ctx);
static 
 MySQLParser_logfile_group_option_return
	logfile_group_option    (pMySQLParser ctx);
static 
 MySQLParser_create_server_return
	create_server    (pMySQLParser ctx);
static 
 MySQLParser_create_server_tail_return
	create_server_tail    (pMySQLParser ctx);
static 
 MySQLParser_server_options_return
	server_options    (pMySQLParser ctx);
static 
 MySQLParser_server_option_return
	server_option    (pMySQLParser ctx);
static 
 MySQLParser_create_table_return
	create_table    (pMySQLParser ctx);
static 
 MySQLParser_create_table_tail_return
	create_table_tail    (pMySQLParser ctx);
static 
 MySQLParser_create_field_list_return
	create_field_list    (pMySQLParser ctx);
static 
 MySQLParser_create_item_return
	create_item    (pMySQLParser ctx);
static 
 MySQLParser_create_field_list_item_return
	create_field_list_item    (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_create_tablespace_tail_return
	create_tablespace_tail    (pMySQLParser ctx);
static 
 MySQLParser_tablespace_options_return
	tablespace_options    (pMySQLParser ctx);
static 
 MySQLParser_tablespace_option_return
	tablespace_option    (pMySQLParser ctx);
static 
 MySQLParser_create_trigger_return
	create_trigger    (pMySQLParser ctx);
static 
 MySQLParser_create_trigger_tail_return
	create_trigger_tail    (pMySQLParser ctx);
static 
 MySQLParser_trigger_follows_precedes_clause_return
	trigger_follows_precedes_clause    (pMySQLParser ctx);
static 
 MySQLParser_create_view_return
	create_view    (pMySQLParser ctx);
static 
 MySQLParser_create_view_tail_return
	create_view_tail    (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_drop_logfile_group_option_return
	drop_logfile_group_option    (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_do_statement_return
	do_statement    (pMySQLParser ctx);
static 
 MySQLParser_handler_statement_return
	handler_statement    (pMySQLParser ctx);
static 
 MySQLParser_handler_read_or_scan_return
	handler_read_or_scan    (pMySQLParser ctx);
static 
 MySQLParser_insert_statement_return
	insert_statement    (pMySQLParser ctx);
static 
 MySQLParser_insert_lock_option_return
	insert_lock_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_values_return
	insert_values    (pMySQLParser ctx);
static 
 MySQLParser_insert_query_expression_return
	insert_query_expression    (pMySQLParser ctx);
static 
 MySQLParser_insert_value_list_return
	insert_value_list    (pMySQLParser ctx);
static 
 MySQLParser_values_return
	values    (pMySQLParser ctx);
static 
 MySQLParser_duplicate_key_update_return
	duplicate_key_update    (pMySQLParser ctx);
static 
 MySQLParser_load_statement_return
	load_statement    (pMySQLParser ctx);
static 
 MySQLParser_data_or_xml_return
	data_or_xml    (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_from_return
	select_from    (pMySQLParser ctx);
static 
 MySQLParser_select_part2_return
	select_part2    (pMySQLParser ctx);
static 
 MySQLParser_table_expression_return
	table_expression    (pMySQLParser ctx);
static 
 MySQLParser_subquery_return
	subquery    (pMySQLParser ctx);
static 
 MySQLParser_query_expression_body_return
	query_expression_body    (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_spec_option_return
	query_spec_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_limit_clause_return
	limit_clause    (pMySQLParser ctx);
static 
 MySQLParser_simple_limit_clause_return
	simple_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_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_order_by_or_limit_return
	order_by_or_limit    (pMySQLParser ctx);
static 
 MySQLParser_direction_return
	direction    (pMySQLParser ctx);
static 
 MySQLParser_from_clause_return
	from_clause    (pMySQLParser ctx);
static 
 MySQLParser_where_clause_return
	where_clause    (pMySQLParser ctx);
static 
 MySQLParser_table_reference_list_return
	table_reference_list    (pMySQLParser ctx);
static 
 MySQLParser_join_table_list_return
	join_table_list    (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_select_table_factor_union_return
	select_table_factor_union    (pMySQLParser ctx);
static 
 MySQLParser_query_specification_return
	query_specification    (pMySQLParser ctx);
static 
 MySQLParser_join_table_return
	join_table    (pMySQLParser ctx);
static 
 MySQLParser_join_condition_return
	join_condition    (pMySQLParser ctx);
static 
 MySQLParser_union_clause_return
	union_clause    (pMySQLParser ctx);
static 
 MySQLParser_union_option_return
	union_option    (pMySQLParser ctx);
static 
 MySQLParser_union_or_order_by_or_limit_return
	union_or_order_by_or_limit    (pMySQLParser ctx);
static 
 MySQLParser_select_lock_type_return
	select_lock_type    (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_option_return
	lock_option    (pMySQLParser ctx);
static 
 MySQLParser_xa_statement_return
	xa_statement    (pMySQLParser ctx);
static 
 MySQLParser_xa_convert_return
	xa_convert    (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_change_master_options_return
	change_master_options    (pMySQLParser ctx);
static 
 MySQLParser_master_option_return
	master_option    (pMySQLParser ctx);
static 
 MySQLParser_master_file_def_return
	master_file_def    (pMySQLParser ctx);
static 
 MySQLParser_server_id_list_return
	server_id_list    (pMySQLParser ctx);
static 
 MySQLParser_change_replication_return
	change_replication    (pMySQLParser ctx);
static 
 MySQLParser_filter_definition_return
	filter_definition    (pMySQLParser ctx);
static 
 MySQLParser_filter_db_list_return
	filter_db_list    (pMySQLParser ctx);
static 
 MySQLParser_filter_table_list_return
	filter_table_list    (pMySQLParser ctx);
static 
 MySQLParser_filter_string_list_return
	filter_string_list    (pMySQLParser ctx);
static 
 MySQLParser_filter_wild_db_table_string_return
	filter_wild_db_table_string    (pMySQLParser ctx);
static 
 MySQLParser_filter_db_pair_list_return
	filter_db_pair_list    (pMySQLParser ctx);
static 
 MySQLParser_slave_return
	slave    (pMySQLParser ctx);
static 
 MySQLParser_slave_until_options_return
	slave_until_options    (pMySQLParser ctx);
static 
 MySQLParser_slave_connection_options_return
	slave_connection_options    (pMySQLParser ctx);
static 
 MySQLParser_slave_thread_options_return
	slave_thread_options    (pMySQLParser ctx);
static 
 MySQLParser_slave_thread_option_return
	slave_thread_option    (pMySQLParser ctx);
static 
 MySQLParser_group_replication_return
	group_replication    (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_alter_user_tail_return
	alter_user_tail    (pMySQLParser ctx);
static 
 MySQLParser_create_user_return
	create_user    (pMySQLParser ctx);
static 
 MySQLParser_create_user_tail_return
	create_user_tail    (pMySQLParser ctx);
static 
 MySQLParser_require_clause_return
	require_clause    (pMySQLParser ctx);
static 
 MySQLParser_connect_options_return
	connect_options    (pMySQLParser ctx);
static 
 MySQLParser_account_lock_password_expire_options_return
	account_lock_password_expire_options    (pMySQLParser ctx);
static 
 MySQLParser_drop_user_return
	drop_user    (pMySQLParser ctx);
static 
 MySQLParser_parse_grant_return
	parse_grant    (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_privilege_target_return
	privilege_target    (pMySQLParser ctx);
static 
 MySQLParser_set_password_return
	set_password    (pMySQLParser ctx);
static 
 MySQLParser_grant_object_type_return
	grant_object_type    (pMySQLParser ctx);
static 
 MySQLParser_grant_privileges_return
	grant_privileges    (pMySQLParser ctx);
static 
 MySQLParser_privilege_type_return
	privilege_type    (pMySQLParser ctx);
static 
 MySQLParser_privilege_level_return
	privilege_level    (pMySQLParser ctx);
static 
 MySQLParser_require_list_return
	require_list    (pMySQLParser ctx);
static 
 MySQLParser_require_list_element_return
	require_list_element    (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_option_value_no_option_type_return
	option_value_no_option_type    (pMySQLParser ctx);
static 
 MySQLParser_option_value_following_option_type_return
	option_value_following_option_type    (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_non_blocking_return
	non_blocking    (pMySQLParser ctx);
static 
 MySQLParser_from_or_in_return
	from_or_in    (pMySQLParser ctx);
static 
 MySQLParser_in_db_return
	in_db    (pMySQLParser ctx);
static 
 MySQLParser_profile_type_return
	profile_type    (pMySQLParser ctx);
static 
 MySQLParser_other_administrative_statement_return
	other_administrative_statement    (pMySQLParser ctx);
static 
 MySQLParser_key_cache_list_or_parts_return
	key_cache_list_or_parts    (pMySQLParser ctx);
static 
 MySQLParser_key_cache_list_return
	key_cache_list    (pMySQLParser ctx);
static 
 MySQLParser_assign_to_keycache_return
	assign_to_keycache    (pMySQLParser ctx);
static 
 MySQLParser_assign_to_keycache_partition_return
	assign_to_keycache_partition    (pMySQLParser ctx);
static 
 MySQLParser_cache_keys_spec_return
	cache_keys_spec    (pMySQLParser ctx);
static 
 MySQLParser_key_usage_element_return
	key_usage_element    (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_use_command_return
	use_command    (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_predicate_in_return
	predicate_in    (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_expression_with_nested_parentheses_return
	expression_with_nested_parentheses    (pMySQLParser ctx);
static 
 MySQLParser_comparison_operator_return
	comparison_operator    (pMySQLParser ctx);
static 
 MySQLParser_multiplication_operator_return
	multiplication_operator    (pMySQLParser ctx);
static 
 MySQLParser_runtime_function_call_return
	runtime_function_call    (pMySQLParser ctx);
static 
 MySQLParser_runtime_function_call_expression_return
	runtime_function_call_expression    (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_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_in_aggregate_expression_return
	in_aggregate_expression    (pMySQLParser ctx);
static 
 MySQLParser_count_function_return
	count_function    (pMySQLParser ctx);
static 
 MySQLParser_udf_call_return
	udf_call    (pMySQLParser ctx);
static 
 MySQLParser_udf_call_expression_return
	udf_call_expression    (pMySQLParser ctx);
static 
 MySQLParser_stored_function_call_return
	stored_function_call    (pMySQLParser ctx);
static 
 MySQLParser_stored_function_call_expression_return
	stored_function_call_expression    (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_optional_expression_list_with_parentheses_return
	optional_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_channel_return
	channel    (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_sp_condition_return
	sp_condition    (pMySQLParser ctx);
static 
 MySQLParser_sqlstate_return
	sqlstate    (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_signal_allowed_expression_return
	signal_allowed_expression    (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_signal_information_item_name_return
	signal_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_database_option_return
	database_option    (pMySQLParser ctx);
static 
 MySQLParser_column_definition_return
	column_definition    (pMySQLParser ctx);
static 
 MySQLParser_field_spec_return
	field_spec    (pMySQLParser ctx);
static 
 MySQLParser_field_def_return
	field_def    (pMySQLParser ctx);
static 
 MySQLParser_field_def_tail_return
	field_def_tail    (pMySQLParser ctx);
static 
 MySQLParser_attribute_return
	attribute    (pMySQLParser ctx);
static 
 MySQLParser_gcol_attribute_return
	gcol_attribute    (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_normal_index_option_return
	normal_index_option    (pMySQLParser ctx);
static 
 MySQLParser_fulltext_index_option_return
	fulltext_index_option    (pMySQLParser ctx);
static 
 MySQLParser_spatial_index_option_return
	spatial_index_option    (pMySQLParser ctx);
static 
 MySQLParser_all_key_option_return
	all_key_option    (pMySQLParser ctx);
static 
 MySQLParser_reference_option_return
	reference_option    (pMySQLParser ctx);
static 
 MySQLParser_data_type_return
	data_type    (pMySQLParser ctx);
static 
 MySQLParser_data_type_definition_return
	data_type_definition    (pMySQLParser ctx);
static 
 MySQLParser_data_type_elements_return
	data_type_elements    (pMySQLParser ctx);
static 
 MySQLParser_field_length_return
	field_length    (pMySQLParser ctx);
static 
 MySQLParser_field_options_return
	field_options    (pMySQLParser ctx);
static 
 MySQLParser_string_binary_return
	string_binary    (pMySQLParser ctx);
static 
 MySQLParser_ascii_return
	ascii    (pMySQLParser ctx);
static 
 MySQLParser_unicode_return
	unicode    (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_return
	collation_name    (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_key_algorithm_return
	partition_key_algorithm    (pMySQLParser ctx);
static 
 MySQLParser_partition_definitions_return
	partition_definitions    (pMySQLParser ctx);
static 
 MySQLParser_partition_definition_return
	partition_definition    (pMySQLParser ctx);
static 
 MySQLParser_partition_option_return
	partition_option    (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_exists_return
	if_exists    (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_schema_identifier_pair_return
	schema_identifier_pair    (pMySQLParser ctx);
static 
 MySQLParser_view_identifier_list_return
	view_identifier_list    (pMySQLParser ctx);
static 
 MySQLParser_field_name_list_return
	field_name_list    (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_grant_list_return
	grant_list    (pMySQLParser ctx);
static 
 MySQLParser_grant_user_return
	grant_user    (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_use_partition_return
	use_partition    (pMySQLParser ctx);
static 
 MySQLParser_column_name_return
	column_name    (pMySQLParser ctx);
static 
 MySQLParser_column_ref_return
	column_ref    (pMySQLParser ctx);
static 
 MySQLParser_column_ref_variants_return
	column_ref_variants    (pMySQLParser ctx);
static 
 MySQLParser_column_internal_ref_return
	column_internal_ref    (pMySQLParser ctx);
static 
 MySQLParser_column_ref_with_wildcard_return
	column_ref_with_wildcard    (pMySQLParser ctx);
static 
 MySQLParser_column_ref_with_wildcard2_return
	column_ref_with_wildcard2    (pMySQLParser ctx);
static 
 MySQLParser_index_name_return
	index_name    (pMySQLParser ctx);
static 
 MySQLParser_index_ref_return
	index_ref    (pMySQLParser ctx);
static 
 MySQLParser_table_wild_return
	table_wild    (pMySQLParser ctx);
static 
 MySQLParser_schema_name_return
	schema_name    (pMySQLParser ctx);
static 
 MySQLParser_schema_ref_return
	schema_ref    (pMySQLParser ctx);
static 
 MySQLParser_procedure_name_return
	procedure_name    (pMySQLParser ctx);
static 
 MySQLParser_procedure_ref_return
	procedure_ref    (pMySQLParser ctx);
static 
 MySQLParser_function_name_return
	function_name    (pMySQLParser ctx);
static 
 MySQLParser_function_ref_return
	function_ref    (pMySQLParser ctx);
static 
 MySQLParser_trigger_name_return
	trigger_name    (pMySQLParser ctx);
static 
 MySQLParser_trigger_ref_return
	trigger_ref    (pMySQLParser ctx);
static 
 MySQLParser_view_name_return
	view_name    (pMySQLParser ctx);
static 
 MySQLParser_view_ref_return
	view_ref    (pMySQLParser ctx);
static 
 MySQLParser_tablespace_name_return
	tablespace_name    (pMySQLParser ctx);
static 
 MySQLParser_tablespace_ref_return
	tablespace_ref    (pMySQLParser ctx);
static 
 MySQLParser_logfile_group_name_return
	logfile_group_name    (pMySQLParser ctx);
static 
 MySQLParser_logfile_group_ref_return
	logfile_group_ref    (pMySQLParser ctx);
static 
 MySQLParser_event_name_return
	event_name    (pMySQLParser ctx);
static 
 MySQLParser_event_ref_return
	event_ref    (pMySQLParser ctx);
static 
 MySQLParser_udf_name_return
	udf_name    (pMySQLParser ctx);
static 
 MySQLParser_server_name_return
	server_name    (pMySQLParser ctx);
static 
 MySQLParser_server_ref_return
	server_ref    (pMySQLParser ctx);
static 
 MySQLParser_engine_ref_return
	engine_ref    (pMySQLParser ctx);
static 
 MySQLParser_table_name_return
	table_name    (pMySQLParser ctx);
static 
 MySQLParser_filter_table_ref_return
	filter_table_ref    (pMySQLParser ctx);
static 
 MySQLParser_table_ref_with_wildcard_return
	table_ref_with_wildcard    (pMySQLParser ctx);
static 
 MySQLParser_table_ref_return
	table_ref    (pMySQLParser ctx);
static 
 MySQLParser_table_ref_no_db_return
	table_ref_no_db    (pMySQLParser ctx);
static 
 MySQLParser_table_name_variants_return
	table_name_variants    (pMySQLParser ctx);
static 
 MySQLParser_table_ref_list_return
	table_ref_list    (pMySQLParser ctx);
static 
 MySQLParser_table_ref_list_with_wildcard_return
	table_ref_list_with_wildcard    (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_qualified_identifier_return
	qualified_identifier    (pMySQLParser ctx);
static 
 MySQLParser_ulong_number_return
	ulong_number    (pMySQLParser ctx);
static 
 MySQLParser_real_ulong_number_return
	real_ulong_number    (pMySQLParser ctx);
static 
 MySQLParser_ulonglong_number_return
	ulonglong_number    (pMySQLParser ctx);
static 
 MySQLParser_real_ulonglong_number_return
	real_ulonglong_number    (pMySQLParser ctx);
static 
 MySQLParser_string_list_return
	string_list    (pMySQLParser ctx);
static 
 MySQLParser_text_string_return
	text_string    (pMySQLParser ctx);
static 
 MySQLParser_text_string_no_linebreak_return
	text_string_no_linebreak    (pMySQLParser ctx);
static 
 MySQLParser_literal_return
	literal    (pMySQLParser ctx);
static 
 MySQLParser_signed_literal_return
	signed_literal    (pMySQLParser ctx);
static 
 MySQLParser_string_literal_return
	string_literal    (pMySQLParser ctx);
static 
 MySQLParser_string_return
	string    (pMySQLParser ctx);
static 
 MySQLParser_num_literal_return
	num_literal    (pMySQLParser ctx);
static 
 MySQLParser_bool_literal_return
	bool_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_text_or_identifier_return
	text_or_identifier    (pMySQLParser ctx);
static 
 MySQLParser_size_number_return
	size_number    (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 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_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_table_list_entry	= alter_table_list_entry;
    ctx->key_def	= key_def;
    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->validation	= validation;
    ctx->remove_partitioning	= remove_partitioning;
    ctx->all_or_partition_name_list	= all_or_partition_name_list;
    ctx->alter_tablespace	= alter_tablespace;
    ctx->alter_tablespace_option	= alter_tablespace_option;
    ctx->change_tablespace_option	= change_tablespace_option;
    ctx->alter_view	= alter_view;
    ctx->create_statement	= create_statement;
    ctx->create_database	= create_database;
    ctx->create_database_tail	= create_database_tail;
    ctx->create_with_definer	= create_with_definer;
    ctx->create_event	= create_event;
    ctx->create_event_tail	= create_event_tail;
    ctx->create_routine	= create_routine;
    ctx->create_procedure	= create_procedure;
    ctx->create_function	= create_function;
    ctx->create_routine_or_udf	= create_routine_or_udf;
    ctx->procedure_body	= procedure_body;
    ctx->function_body	= function_body;
    ctx->udf_tail	= udf_tail;
    ctx->routine_create_options	= routine_create_options;
    ctx->routine_create_option	= routine_create_option;
    ctx->routine_alter_options	= routine_alter_options;
    ctx->routine_option	= routine_option;
    ctx->create_index	= create_index;
    ctx->create_index_tail	= create_index_tail;
    ctx->create_index_target	= create_index_target;
    ctx->create_logfile_group	= create_logfile_group;
    ctx->create_logfile_group_tail	= create_logfile_group_tail;
    ctx->logfile_group_options	= logfile_group_options;
    ctx->logfile_group_option	= logfile_group_option;
    ctx->create_server	= create_server;
    ctx->create_server_tail	= create_server_tail;
    ctx->server_options	= server_options;
    ctx->server_option	= server_option;
    ctx->create_table	= create_table;
    ctx->create_table_tail	= create_table_tail;
    ctx->create_field_list	= create_field_list;
    ctx->create_item	= create_item;
    ctx->create_field_list_item	= create_field_list_item;
    ctx->table_creation_source	= table_creation_source;
    ctx->create_select	= create_select;
    ctx->create_tablespace	= create_tablespace;
    ctx->create_tablespace_tail	= create_tablespace_tail;
    ctx->tablespace_options	= tablespace_options;
    ctx->tablespace_option	= tablespace_option;
    ctx->create_trigger	= create_trigger;
    ctx->create_trigger_tail	= create_trigger_tail;
    ctx->trigger_follows_precedes_clause	= trigger_follows_precedes_clause;
    ctx->create_view	= create_view;
    ctx->create_view_tail	= create_view_tail;
    ctx->view_replace_or_algorithm	= view_replace_or_algorithm;
    ctx->view_algorithm	= view_algorithm;
    ctx->drop_statement	= drop_statement;
    ctx->drop_logfile_group_option	= drop_logfile_group_option;
    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->do_statement	= do_statement;
    ctx->handler_statement	= handler_statement;
    ctx->handler_read_or_scan	= handler_read_or_scan;
    ctx->insert_statement	= insert_statement;
    ctx->insert_lock_option	= insert_lock_option;
    ctx->insert_field_spec	= insert_field_spec;
    ctx->fields	= fields;
    ctx->insert_identifier	= insert_identifier;
    ctx->insert_values	= insert_values;
    ctx->insert_query_expression	= insert_query_expression;
    ctx->insert_value_list	= insert_value_list;
    ctx->values	= values;
    ctx->duplicate_key_update	= duplicate_key_update;
    ctx->load_statement	= load_statement;
    ctx->data_or_xml	= data_or_xml;
    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_from	= select_from;
    ctx->select_part2	= select_part2;
    ctx->table_expression	= table_expression;
    ctx->subquery	= subquery;
    ctx->query_expression_body	= query_expression_body;
    ctx->select_part2_derived	= select_part2_derived;
    ctx->select_option	= select_option;
    ctx->query_spec_option	= query_spec_option;
    ctx->select_item_list	= select_item_list;
    ctx->select_item	= select_item;
    ctx->select_alias	= select_alias;
    ctx->limit_clause	= limit_clause;
    ctx->simple_limit_clause	= simple_limit_clause;
    ctx->limit_options	= limit_options;
    ctx->limit_option	= limit_option;
    ctx->into_clause	= into_clause;
    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->order_by_or_limit	= order_by_or_limit;
    ctx->direction	= direction;
    ctx->from_clause	= from_clause;
    ctx->where_clause	= where_clause;
    ctx->table_reference_list	= table_reference_list;
    ctx->join_table_list	= join_table_list;
    ctx->escaped_table_reference	= escaped_table_reference;
    ctx->table_reference	= table_reference;
    ctx->join	= join;
    ctx->table_factor	= table_factor;
    ctx->select_table_factor_union	= select_table_factor_union;
    ctx->query_specification	= query_specification;
    ctx->join_table	= join_table;
    ctx->join_condition	= join_condition;
    ctx->union_clause	= union_clause;
    ctx->union_option	= union_option;
    ctx->union_or_order_by_or_limit	= union_or_order_by_or_limit;
    ctx->select_lock_type	= select_lock_type;
    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_option	= lock_option;
    ctx->xa_statement	= xa_statement;
    ctx->xa_convert	= xa_convert;
    ctx->xid	= xid;
    ctx->replication_statement	= replication_statement;
    ctx->replication_load	= replication_load;
    ctx->change_master	= change_master;
    ctx->change_master_options	= change_master_options;
    ctx->master_option	= master_option;
    ctx->master_file_def	= master_file_def;
    ctx->server_id_list	= server_id_list;
    ctx->change_replication	= change_replication;
    ctx->filter_definition	= filter_definition;
    ctx->filter_db_list	= filter_db_list;
    ctx->filter_table_list	= filter_table_list;
    ctx->filter_string_list	= filter_string_list;
    ctx->filter_wild_db_table_string	= filter_wild_db_table_string;
    ctx->filter_db_pair_list	= filter_db_pair_list;
    ctx->slave	= slave;
    ctx->slave_until_options	= slave_until_options;
    ctx->slave_connection_options	= slave_connection_options;
    ctx->slave_thread_options	= slave_thread_options;
    ctx->slave_thread_option	= slave_thread_option;
    ctx->group_replication	= group_replication;
    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->alter_user_tail	= alter_user_tail;
    ctx->create_user	= create_user;
    ctx->create_user_tail	= create_user_tail;
    ctx->require_clause	= require_clause;
    ctx->connect_options	= connect_options;
    ctx->account_lock_password_expire_options	= account_lock_password_expire_options;
    ctx->drop_user	= drop_user;
    ctx->parse_grant	= parse_grant;
    ctx->grant	= grant;
    ctx->grant_proxy	= grant_proxy;
    ctx->rename_user	= rename_user;
    ctx->revoke_statement	= revoke_statement;
    ctx->privilege_target	= privilege_target;
    ctx->set_password	= set_password;
    ctx->grant_object_type	= grant_object_type;
    ctx->grant_privileges	= grant_privileges;
    ctx->privilege_type	= privilege_type;
    ctx->privilege_level	= privilege_level;
    ctx->require_list	= require_list;
    ctx->require_list_element	= require_list_element;
    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->option_value_no_option_type	= option_value_no_option_type;
    ctx->option_value_following_option_type	= option_value_following_option_type;
    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->non_blocking	= non_blocking;
    ctx->from_or_in	= from_or_in;
    ctx->in_db	= in_db;
    ctx->profile_type	= profile_type;
    ctx->other_administrative_statement	= other_administrative_statement;
    ctx->key_cache_list_or_parts	= key_cache_list_or_parts;
    ctx->key_cache_list	= key_cache_list;
    ctx->assign_to_keycache	= assign_to_keycache;
    ctx->assign_to_keycache_partition	= assign_to_keycache_partition;
    ctx->cache_keys_spec	= cache_keys_spec;
    ctx->key_usage_element	= key_usage_element;
    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->use_command	= use_command;
    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->predicate_in	= predicate_in;
    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->expression_with_nested_parentheses	= expression_with_nested_parentheses;
    ctx->comparison_operator	= comparison_operator;
    ctx->multiplication_operator	= multiplication_operator;
    ctx->runtime_function_call	= runtime_function_call;
    ctx->runtime_function_call_expression	= runtime_function_call_expression;
    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->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->in_aggregate_expression	= in_aggregate_expression;
    ctx->count_function	= count_function;
    ctx->udf_call	= udf_call;
    ctx->udf_call_expression	= udf_call_expression;
    ctx->stored_function_call	= stored_function_call;
    ctx->stored_function_call_expression	= stored_function_call_expression;
    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->optional_expression_list_with_parentheses	= optional_expression_list_with_parentheses;
    ctx->expression_list	= expression_list;
    ctx->expression_list_with_direction	= expression_list_with_direction;
    ctx->channel	= channel;
    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->sp_condition	= sp_condition;
    ctx->sqlstate	= sqlstate;
    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->signal_allowed_expression	= signal_allowed_expression;
    ctx->statement_information_item	= statement_information_item;
    ctx->condition_information_item	= condition_information_item;
    ctx->signal_information_item_name	= signal_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->database_option	= database_option;
    ctx->column_definition	= column_definition;
    ctx->field_spec	= field_spec;
    ctx->field_def	= field_def;
    ctx->field_def_tail	= field_def_tail;
    ctx->attribute	= attribute;
    ctx->gcol_attribute	= gcol_attribute;
    ctx->reference_definition	= reference_definition;
    ctx->index_columns	= index_columns;
    ctx->index_column	= index_column;
    ctx->index_type	= index_type;
    ctx->normal_index_option	= normal_index_option;
    ctx->fulltext_index_option	= fulltext_index_option;
    ctx->spatial_index_option	= spatial_index_option;
    ctx->all_key_option	= all_key_option;
    ctx->reference_option	= reference_option;
    ctx->data_type	= data_type;
    ctx->data_type_definition	= data_type_definition;
    ctx->data_type_elements	= data_type_elements;
    ctx->field_length	= field_length;
    ctx->field_options	= field_options;
    ctx->string_binary	= string_binary;
    ctx->ascii	= ascii;
    ctx->unicode	= unicode;
    ctx->type_datetime_precision	= type_datetime_precision;
    ctx->charset_name	= charset_name;
    ctx->charset_name_or_default	= charset_name_or_default;
    ctx->collation_name	= collation_name;
    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_key_algorithm	= partition_key_algorithm;
    ctx->partition_definitions	= partition_definitions;
    ctx->partition_definition	= partition_definition;
    ctx->partition_option	= partition_option;
    ctx->subpartition_definition	= subpartition_definition;
    ctx->partition_value_list	= partition_value_list;
    ctx->definer_clause	= definer_clause;
    ctx->if_exists	= if_exists;
    ctx->if_not_exists	= if_not_exists;
    ctx->procedure_parameter	= procedure_parameter;
    ctx->function_parameter	= function_parameter;
    ctx->schema_identifier_pair	= schema_identifier_pair;
    ctx->view_identifier_list	= view_identifier_list;
    ctx->field_name_list	= field_name_list;
    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->grant_list	= grant_list;
    ctx->grant_user	= grant_user;
    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->use_partition	= use_partition;
    ctx->column_name	= column_name;
    ctx->column_ref	= column_ref;
    ctx->column_ref_variants	= column_ref_variants;
    ctx->column_internal_ref	= column_internal_ref;
    ctx->column_ref_with_wildcard	= column_ref_with_wildcard;
    ctx->column_ref_with_wildcard2	= column_ref_with_wildcard2;
    ctx->index_name	= index_name;
    ctx->index_ref	= index_ref;
    ctx->table_wild	= table_wild;
    ctx->schema_name	= schema_name;
    ctx->schema_ref	= schema_ref;
    ctx->procedure_name	= procedure_name;
    ctx->procedure_ref	= procedure_ref;
    ctx->function_name	= function_name;
    ctx->function_ref	= function_ref;
    ctx->trigger_name	= trigger_name;
    ctx->trigger_ref	= trigger_ref;
    ctx->view_name	= view_name;
    ctx->view_ref	= view_ref;
    ctx->tablespace_name	= tablespace_name;
    ctx->tablespace_ref	= tablespace_ref;
    ctx->logfile_group_name	= logfile_group_name;
    ctx->logfile_group_ref	= logfile_group_ref;
    ctx->event_name	= event_name;
    ctx->event_ref	= event_ref;
    ctx->udf_name	= udf_name;
    ctx->server_name	= server_name;
    ctx->server_ref	= server_ref;
    ctx->engine_ref	= engine_ref;
    ctx->table_name	= table_name;
    ctx->filter_table_ref	= filter_table_ref;
    ctx->table_ref_with_wildcard	= table_ref_with_wildcard;
    ctx->table_ref	= table_ref;
    ctx->table_ref_no_db	= table_ref_no_db;
    ctx->table_name_variants	= table_name_variants;
    ctx->table_ref_list	= table_ref_list;
    ctx->table_ref_list_with_wildcard	= table_ref_list_with_wildcard;
    ctx->pure_identifier	= pure_identifier;
    ctx->identifier	= identifier;
    ctx->identifier_list	= identifier_list;
    ctx->identifier_list_with_parentheses	= identifier_list_with_parentheses;
    ctx->qualified_identifier	= qualified_identifier;
    ctx->ulong_number	= ulong_number;
    ctx->real_ulong_number	= real_ulong_number;
    ctx->ulonglong_number	= ulonglong_number;
    ctx->real_ulonglong_number	= real_ulonglong_number;
    ctx->string_list	= string_list;
    ctx->text_string	= text_string;
    ctx->text_string_no_linebreak	= text_string_no_linebreak;
    ctx->literal	= literal;
    ctx->signed_literal	= signed_literal;
    ctx->string_literal	= string_literal;
    ctx->string	= string;
    ctx->num_literal	= num_literal;
    ctx->bool_literal	= bool_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->text_or_identifier	= text_or_identifier;
    ctx->size_number	= size_number;
    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->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 = onMySQLParseError;

    /* 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_query439  */
static	ANTLR3_BITWORD FOLLOW_statement_in_query439_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_statement_in_query439	= { FOLLOW_statement_in_query439_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_query441  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_query441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_query441	= { FOLLOW_SEMICOLON_SYMBOL_in_query441_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_query446  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_query446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_query446	= { FOLLOW_EOF_in_query446_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_statement_in_statement457  */
static	ANTLR3_BITWORD FOLLOW_alter_statement_in_statement457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_statement_in_statement457	= { FOLLOW_alter_statement_in_statement457_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_statement_in_statement462  */
static	ANTLR3_BITWORD FOLLOW_create_statement_in_statement462_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_statement_in_statement462	= { FOLLOW_create_statement_in_statement462_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_statement_in_statement467  */
static	ANTLR3_BITWORD FOLLOW_drop_statement_in_statement467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_statement_in_statement467	= { FOLLOW_drop_statement_in_statement467_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_rename_table_statement_in_statement472  */
static	ANTLR3_BITWORD FOLLOW_rename_table_statement_in_statement472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_rename_table_statement_in_statement472	= { FOLLOW_rename_table_statement_in_statement472_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_truncate_table_statement_in_statement477  */
static	ANTLR3_BITWORD FOLLOW_truncate_table_statement_in_statement477_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_truncate_table_statement_in_statement477	= { FOLLOW_truncate_table_statement_in_statement477_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_call_statement_in_statement486  */
static	ANTLR3_BITWORD FOLLOW_call_statement_in_statement486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_call_statement_in_statement486	= { FOLLOW_call_statement_in_statement486_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_statement_in_statement491  */
static	ANTLR3_BITWORD FOLLOW_delete_statement_in_statement491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_statement_in_statement491	= { FOLLOW_delete_statement_in_statement491_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_do_statement_in_statement496  */
static	ANTLR3_BITWORD FOLLOW_do_statement_in_statement496_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_do_statement_in_statement496	= { FOLLOW_do_statement_in_statement496_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_statement_in_statement501  */
static	ANTLR3_BITWORD FOLLOW_handler_statement_in_statement501_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_statement_in_statement501	= { FOLLOW_handler_statement_in_statement501_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_statement_in_statement506  */
static	ANTLR3_BITWORD FOLLOW_insert_statement_in_statement506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_statement_in_statement506	= { FOLLOW_insert_statement_in_statement506_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_statement_in_statement511  */
static	ANTLR3_BITWORD FOLLOW_load_statement_in_statement511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_statement_in_statement511	= { FOLLOW_load_statement_in_statement511_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replace_statement_in_statement516  */
static	ANTLR3_BITWORD FOLLOW_replace_statement_in_statement516_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replace_statement_in_statement516	= { FOLLOW_replace_statement_in_statement516_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_statement521  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_statement521_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_statement521	= { FOLLOW_select_statement_in_statement521_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_update_statement_in_statement526  */
static	ANTLR3_BITWORD FOLLOW_update_statement_in_statement526_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_update_statement_in_statement526	= { FOLLOW_update_statement_in_statement526_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_statement534  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_statement534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_statement534	= { FOLLOW_partitioning_in_statement534_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_or_locking_statement_in_statement544  */
static	ANTLR3_BITWORD FOLLOW_transaction_or_locking_statement_in_statement544_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_or_locking_statement_in_statement544	= { FOLLOW_transaction_or_locking_statement_in_statement544_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replication_statement_in_statement551  */
static	ANTLR3_BITWORD FOLLOW_replication_statement_in_statement551_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replication_statement_in_statement551	= { FOLLOW_replication_statement_in_statement551_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_prepared_statement_in_statement558  */
static	ANTLR3_BITWORD FOLLOW_prepared_statement_in_statement558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_prepared_statement_in_statement558	= { FOLLOW_prepared_statement_in_statement558_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_account_management_statement_in_statement567  */
static	ANTLR3_BITWORD FOLLOW_account_management_statement_in_statement567_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_account_management_statement_in_statement567	= { FOLLOW_account_management_statement_in_statement567_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_administration_statement_in_statement572  */
static	ANTLR3_BITWORD FOLLOW_table_administration_statement_in_statement572_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_administration_statement_in_statement572	= { FOLLOW_table_administration_statement_in_statement572_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_install_uninstall_statment_in_statement577  */
static	ANTLR3_BITWORD FOLLOW_install_uninstall_statment_in_statement577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_install_uninstall_statment_in_statement577	= { FOLLOW_install_uninstall_statment_in_statement577_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_statement_in_statement584  */
static	ANTLR3_BITWORD FOLLOW_set_statement_in_statement584_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_statement_in_statement584	= { FOLLOW_set_statement_in_statement584_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_show_statement_in_statement590  */
static	ANTLR3_BITWORD FOLLOW_show_statement_in_statement590_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_show_statement_in_statement590	= { FOLLOW_show_statement_in_statement590_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_other_administrative_statement_in_statement595  */
static	ANTLR3_BITWORD FOLLOW_other_administrative_statement_in_statement595_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_other_administrative_statement_in_statement595	= { FOLLOW_other_administrative_statement_in_statement595_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_utility_statement_in_statement604  */
static	ANTLR3_BITWORD FOLLOW_utility_statement_in_statement604_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_utility_statement_in_statement604	= { FOLLOW_utility_statement_in_statement604_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_statement616  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_statement616_bits[]	= { ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0010000000000001), ANTLR3_UINT64_LIT(0x0040000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400800200000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x1800000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000100000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_alter_statement616	= { FOLLOW_ALTER_SYMBOL_in_alter_statement616_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_database_in_alter_statement624  */
static	ANTLR3_BITWORD FOLLOW_alter_database_in_alter_statement624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_database_in_alter_statement624	= { FOLLOW_alter_database_in_alter_statement624_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_log_file_group_in_alter_statement629  */
static	ANTLR3_BITWORD FOLLOW_alter_log_file_group_in_alter_statement629_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_log_file_group_in_alter_statement629	= { FOLLOW_alter_log_file_group_in_alter_statement629_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_alter_statement634  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_alter_statement634_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_alter_statement634	= { FOLLOW_FUNCTION_SYMBOL_in_alter_statement634_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_ref_in_alter_statement636  */
static	ANTLR3_BITWORD FOLLOW_function_ref_in_alter_statement636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000060014002), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008002000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_function_ref_in_alter_statement636	= { FOLLOW_function_ref_in_alter_statement636_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_alter_options_in_alter_statement638  */
static	ANTLR3_BITWORD FOLLOW_routine_alter_options_in_alter_statement638_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_alter_options_in_alter_statement638	= { FOLLOW_routine_alter_options_in_alter_statement638_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_alter_statement644  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_alter_statement644_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_alter_statement644	= { FOLLOW_PROCEDURE_SYMBOL_in_alter_statement644_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_alter_statement646  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_alter_statement646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000060014002), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008002000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_alter_statement646	= { FOLLOW_procedure_ref_in_alter_statement646_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_alter_options_in_alter_statement648  */
static	ANTLR3_BITWORD FOLLOW_routine_alter_options_in_alter_statement648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_alter_options_in_alter_statement648	= { FOLLOW_routine_alter_options_in_alter_statement648_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_server_in_alter_statement654  */
static	ANTLR3_BITWORD FOLLOW_alter_server_in_alter_statement654_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_server_in_alter_statement654	= { FOLLOW_alter_server_in_alter_statement654_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_in_alter_statement659  */
static	ANTLR3_BITWORD FOLLOW_alter_table_in_alter_statement659_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_in_alter_statement659	= { FOLLOW_alter_table_in_alter_statement659_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_tablespace_in_alter_statement664  */
static	ANTLR3_BITWORD FOLLOW_alter_tablespace_in_alter_statement664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_tablespace_in_alter_statement664	= { FOLLOW_alter_tablespace_in_alter_statement664_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_event_in_alter_statement671  */
static	ANTLR3_BITWORD FOLLOW_alter_event_in_alter_statement671_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_event_in_alter_statement671	= { FOLLOW_alter_event_in_alter_statement671_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_view_in_alter_statement676  */
static	ANTLR3_BITWORD FOLLOW_alter_view_in_alter_statement676_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_view_in_alter_statement676	= { FOLLOW_alter_view_in_alter_statement676_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_alter_database689  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_alter_database689_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_alter_database689	= { FOLLOW_DATABASE_SYMBOL_in_alter_database689_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_alter_database691  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_alter_database691_bits[]	= { ANTLR3_UINT64_LIT(0x0100000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002200000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_alter_database691	= { FOLLOW_schema_ref_in_alter_database691_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_database_option_in_alter_database699  */
static	ANTLR3_BITWORD FOLLOW_database_option_in_alter_database699_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002200000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_database_option_in_alter_database699	= { FOLLOW_database_option_in_alter_database699_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPGRADE_SYMBOL_in_alter_database706  */
static	ANTLR3_BITWORD FOLLOW_UPGRADE_SYMBOL_in_alter_database706_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPGRADE_SYMBOL_in_alter_database706	= { FOLLOW_UPGRADE_SYMBOL_in_alter_database706_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_alter_database708  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_alter_database708_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_alter_database708	= { FOLLOW_DATA_SYMBOL_in_alter_database708_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_alter_database710  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_alter_database710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_alter_database710	= { FOLLOW_DIRECTORY_SYMBOL_in_alter_database710_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NAME_SYMBOL_in_alter_database712  */
static	ANTLR3_BITWORD FOLLOW_NAME_SYMBOL_in_alter_database712_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NAME_SYMBOL_in_alter_database712	= { FOLLOW_NAME_SYMBOL_in_alter_database712_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_alter_event724  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_alter_event724_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_alter_event724	= { FOLLOW_definer_clause_in_alter_event724_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_alter_event729  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_alter_event729_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_alter_event729	= { FOLLOW_EVENT_SYMBOL_in_alter_event729_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_event_ref_in_alter_event731  */
static	ANTLR3_BITWORD FOLLOW_event_ref_in_alter_event731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_event_ref_in_alter_event731	= { FOLLOW_event_ref_in_alter_event731_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event736  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event736_bits[]	= { 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_ON_SYMBOL_in_alter_event736	= { FOLLOW_ON_SYMBOL_in_alter_event736_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SCHEDULE_SYMBOL_in_alter_event738  */
static	ANTLR3_BITWORD FOLLOW_SCHEDULE_SYMBOL_in_alter_event738_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_SCHEDULE_SYMBOL_in_alter_event738	= { FOLLOW_SCHEDULE_SYMBOL_in_alter_event738_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schedule_in_alter_event740  */
static	ANTLR3_BITWORD FOLLOW_schedule_in_alter_event740_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_schedule_in_alter_event740	= { FOLLOW_schedule_in_alter_event740_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event747  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event747_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_alter_event747	= { FOLLOW_ON_SYMBOL_in_alter_event747_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMPLETION_SYMBOL_in_alter_event749  */
static	ANTLR3_BITWORD FOLLOW_COMPLETION_SYMBOL_in_alter_event749_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), 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_COMPLETION_SYMBOL_in_alter_event749	= { FOLLOW_COMPLETION_SYMBOL_in_alter_event749_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_alter_event751  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_alter_event751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_alter_event751	= { FOLLOW_NOT_SYMBOL_in_alter_event751_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRESERVE_SYMBOL_in_alter_event754  */
static	ANTLR3_BITWORD FOLLOW_PRESERVE_SYMBOL_in_alter_event754_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRESERVE_SYMBOL_in_alter_event754	= { FOLLOW_PRESERVE_SYMBOL_in_alter_event754_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_alter_event761  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_alter_event761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RENAME_SYMBOL_in_alter_event761	= { FOLLOW_RENAME_SYMBOL_in_alter_event761_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_alter_event763  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_alter_event763_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_alter_event763	= { FOLLOW_TO_SYMBOL_in_alter_event763_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_event765  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_event765_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_event765	= { FOLLOW_identifier_in_alter_event765_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_alter_event772  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_alter_event772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENABLE_SYMBOL_in_alter_event772	= { FOLLOW_ENABLE_SYMBOL_in_alter_event772_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_alter_event776  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_alter_event776_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DISABLE_SYMBOL_in_alter_event776	= { FOLLOW_DISABLE_SYMBOL_in_alter_event776_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_alter_event779  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_alter_event779_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_alter_event779	= { FOLLOW_ON_SYMBOL_in_alter_event779_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_alter_event781  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_alter_event781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044002) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_alter_event781	= { FOLLOW_SLAVE_SYMBOL_in_alter_event781_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_alter_event790  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_alter_event790_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_alter_event790	= { FOLLOW_COMMENT_SYMBOL_in_alter_event790_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_event792  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_event792_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000040002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_alter_event792	= { FOLLOW_string_literal_in_alter_event792_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_alter_event799  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_alter_event799_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_alter_event799	= { FOLLOW_DO_SYMBOL_in_alter_event799_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_alter_event801  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_alter_event801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_alter_event801	= { FOLLOW_compound_statement_in_alter_event801_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group812  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group812_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOGFILE_SYMBOL_in_alter_log_file_group812	= { FOLLOW_LOGFILE_SYMBOL_in_alter_log_file_group812_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_alter_log_file_group814  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_alter_log_file_group814_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_alter_log_file_group814	= { FOLLOW_GROUP_SYMBOL_in_alter_log_file_group814_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_ref_in_alter_log_file_group816  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_ref_in_alter_log_file_group816_bits[]	= { 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_logfile_group_ref_in_alter_log_file_group816	= { FOLLOW_logfile_group_ref_in_alter_log_file_group816_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_log_file_group818  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_log_file_group818_bits[]	= { 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_ADD_SYMBOL_in_alter_log_file_group818	= { FOLLOW_ADD_SYMBOL_in_alter_log_file_group818_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group820  */
static	ANTLR3_BITWORD FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group820_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group820	= { FOLLOW_UNDOFILE_SYMBOL_in_alter_log_file_group820_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_log_file_group822  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_log_file_group822_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_alter_log_file_group822	= { FOLLOW_string_literal_in_alter_log_file_group822_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group827  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group827_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group827	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group827_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group829  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group829_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group829	= { FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group829_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_alter_log_file_group832  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_alter_log_file_group832_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_alter_log_file_group832	= { FOLLOW_size_number_in_alter_log_file_group832_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WAIT_SYMBOL_in_alter_log_file_group836  */
static	ANTLR3_BITWORD FOLLOW_WAIT_SYMBOL_in_alter_log_file_group836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WAIT_SYMBOL_in_alter_log_file_group836	= { FOLLOW_WAIT_SYMBOL_in_alter_log_file_group836_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group839  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group839_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group839	= { FOLLOW_ENGINE_SYMBOL_in_alter_log_file_group839_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group841  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group841_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_EQUAL_OPERATOR_in_alter_log_file_group841	= { FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group841_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_alter_log_file_group844  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_alter_log_file_group844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_alter_log_file_group844	= { FOLLOW_IDENTIFIER_in_alter_log_file_group844_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_alter_server853  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_alter_server853_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_alter_server853	= { FOLLOW_SERVER_SYMBOL_in_alter_server853_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_ref_in_alter_server855  */
static	ANTLR3_BITWORD FOLLOW_server_ref_in_alter_server855_bits[]	= { ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_server_ref_in_alter_server855	= { FOLLOW_server_ref_in_alter_server855_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_options_in_alter_server857  */
static	ANTLR3_BITWORD FOLLOW_server_options_in_alter_server857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_options_in_alter_server857	= { FOLLOW_server_options_in_alter_server857_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_alter_table866  */
static	ANTLR3_BITWORD FOLLOW_online_option_in_alter_table866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_online_option_in_alter_table866	= { FOLLOW_online_option_in_alter_table866_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_alter_table869  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_alter_table869_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IGNORE_SYMBOL_in_alter_table869	= { FOLLOW_IGNORE_SYMBOL_in_alter_table869_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_alter_table872  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_alter_table872_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_alter_table872	= { FOLLOW_TABLE_SYMBOL_in_alter_table872_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_alter_table874  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_alter_table874_bits[]	= { ANTLR3_UINT64_LIT(0x0120018800005802), ANTLR3_UINT64_LIT(0x0620400A008000A3), ANTLR3_UINT64_LIT(0x0100280800010002), ANTLR3_UINT64_LIT(0x0420000018000000), ANTLR3_UINT64_LIT(0x0000040001002000), ANTLR3_UINT64_LIT(0x14000002003000B8), ANTLR3_UINT64_LIT(0x0004002680000000), ANTLR3_UINT64_LIT(0x0400100080004000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000040000024), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_alter_table874	= { FOLLOW_table_ref_in_alter_table874_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_commands_in_alter_table876  */
static	ANTLR3_BITWORD FOLLOW_alter_table_commands_in_alter_table876_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_commands_in_alter_table876	= { FOLLOW_alter_table_commands_in_alter_table876_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISCARD_SYMBOL_in_alter_table_commands886  */
static	ANTLR3_BITWORD FOLLOW_DISCARD_SYMBOL_in_alter_table_commands886_bits[]	= { 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_DISCARD_SYMBOL_in_alter_table_commands886	= { FOLLOW_DISCARD_SYMBOL_in_alter_table_commands886_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands888  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands888	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands888_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IMPORT_SYMBOL_in_alter_table_commands893  */
static	ANTLR3_BITWORD FOLLOW_IMPORT_SYMBOL_in_alter_table_commands893_bits[]	= { 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_IMPORT_SYMBOL_in_alter_table_commands893	= { FOLLOW_IMPORT_SYMBOL_in_alter_table_commands893_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands895  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands895	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_table_commands895_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_list_item_in_alter_table_commands900  */
static	ANTLR3_BITWORD FOLLOW_alter_table_list_item_in_alter_table_commands900_bits[]	= { ANTLR3_UINT64_LIT(0x0000008800000002), 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_alter_table_list_item_in_alter_table_commands900	= { FOLLOW_alter_table_list_item_in_alter_table_commands900_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_table_commands903  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_table_commands903_bits[]	= { ANTLR3_UINT64_LIT(0x0100000000005800), ANTLR3_UINT64_LIT(0x0220400A000000A1), ANTLR3_UINT64_LIT(0x0100280000010002), ANTLR3_UINT64_LIT(0x0420000018000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x14000002003000B8), ANTLR3_UINT64_LIT(0x0004002280000000), ANTLR3_UINT64_LIT(0x0400000080004000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000040000020), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_table_commands903	= { FOLLOW_COMMA_SYMBOL_in_alter_table_commands903_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_list_item_in_alter_table_commands905  */
static	ANTLR3_BITWORD FOLLOW_alter_table_list_item_in_alter_table_commands905_bits[]	= { ANTLR3_UINT64_LIT(0x0000008800000002), 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_alter_table_list_item_in_alter_table_commands905	= { FOLLOW_alter_table_list_item_in_alter_table_commands905_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_alter_table_commands910  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_alter_table_commands910_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_alter_table_commands910	= { FOLLOW_partitioning_in_alter_table_commands910_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_remove_partitioning_in_alter_table_commands915  */
static	ANTLR3_BITWORD FOLLOW_remove_partitioning_in_alter_table_commands915_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_remove_partitioning_in_alter_table_commands915	= { FOLLOW_remove_partitioning_in_alter_table_commands915_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_remove_partitioning_in_alter_table_commands921  */
static	ANTLR3_BITWORD FOLLOW_remove_partitioning_in_alter_table_commands921_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_remove_partitioning_in_alter_table_commands921	= { FOLLOW_remove_partitioning_in_alter_table_commands921_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_alter_table_commands926  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_alter_table_commands926_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_alter_table_commands926	= { FOLLOW_partitioning_in_alter_table_commands926_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_partition_in_alter_table_commands933  */
static	ANTLR3_BITWORD FOLLOW_alter_partition_in_alter_table_commands933_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_partition_in_alter_table_commands933	= { FOLLOW_alter_partition_in_alter_table_commands933_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_list_entry_in_alter_table_list_item942  */
static	ANTLR3_BITWORD FOLLOW_alter_table_list_entry_in_alter_table_list_item942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_list_entry_in_alter_table_list_item942	= { FOLLOW_alter_table_list_entry_in_alter_table_list_item942_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_table_options_in_alter_table_list_entry959  */
static	ANTLR3_BITWORD FOLLOW_alter_table_options_in_alter_table_list_entry959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_table_options_in_alter_table_list_entry959	= { FOLLOW_alter_table_options_in_alter_table_list_entry959_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_entry964  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_entry964_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000080000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_entry964	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_entry964_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry966  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry966_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry966	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry966_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_entry976  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_entry976_bits[]	= { ANTLR3_UINT64_LIT(0x2000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_entry976	= { FOLLOW_column_definition_in_alter_table_list_entry976_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry979  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry979_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry979	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry979_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry983  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry983_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry983	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry983_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_entry985  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_entry985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_entry985	= { FOLLOW_identifier_in_alter_table_list_entry985_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry994  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry994_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry994	= { FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry994_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_entry996  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_entry996_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_entry996	= { FOLLOW_column_definition_in_alter_table_list_entry996_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry999  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry999_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry999	= { FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry999_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_alter_table_list_entry1001  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_alter_table_list_entry1001_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_alter_table_list_entry1001	= { FOLLOW_column_definition_in_alter_table_list_entry1001_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1005  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1005_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1005	= { FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1005_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1014  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1014_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000400000000), ANTLR3_UINT64_LIT(0x8800000000000000), ANTLR3_UINT64_LIT(0x0010000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1014	= { FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1014_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_def_in_alter_table_list_entry1016  */
static	ANTLR3_BITWORD FOLLOW_key_def_in_alter_table_list_entry1016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_key_def_in_alter_table_list_entry1016	= { FOLLOW_key_def_in_alter_table_list_entry1016_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1021  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1021_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000080000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1021	= { FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1021_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1023  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1023_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1023	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1023_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_internal_ref_in_alter_table_list_entry1026  */
static	ANTLR3_BITWORD FOLLOW_column_internal_ref_in_alter_table_list_entry1026_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_internal_ref_in_alter_table_list_entry1026	= { FOLLOW_column_internal_ref_in_alter_table_list_entry1026_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_alter_table_list_entry1029  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_alter_table_list_entry1029_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_alter_table_list_entry1029	= { FOLLOW_SET_SYMBOL_in_alter_table_list_entry1029_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1031  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1031_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000090000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0108000020000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0140100080010000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x2900000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1031	= { FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1031_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signed_literal_in_alter_table_list_entry1033  */
static	ANTLR3_BITWORD FOLLOW_signed_literal_in_alter_table_list_entry1033_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signed_literal_in_alter_table_list_entry1033	= { FOLLOW_signed_literal_in_alter_table_list_entry1033_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1037  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1037_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1037	= { FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1037_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1039  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1039_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1039	= { FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1039_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1045  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1045_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000080000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1045	= { FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1045_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1047  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1047_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1047	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1047_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_internal_ref_in_alter_table_list_entry1050  */
static	ANTLR3_BITWORD FOLLOW_column_internal_ref_in_alter_table_list_entry1050_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_internal_ref_in_alter_table_list_entry1050	= { FOLLOW_column_internal_ref_in_alter_table_list_entry1050_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_spec_in_alter_table_list_entry1052  */
static	ANTLR3_BITWORD FOLLOW_field_spec_in_alter_table_list_entry1052_bits[]	= { ANTLR3_UINT64_LIT(0x2000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_spec_in_alter_table_list_entry1052	= { FOLLOW_field_spec_in_alter_table_list_entry1052_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1055  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1055_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1055	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1055_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1059  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1059_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1059	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1059_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_entry1061  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_entry1061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_entry1061	= { FOLLOW_identifier_in_alter_table_list_entry1061_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1068  */
static	ANTLR3_BITWORD FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1068_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000080000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1068	= { FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1068_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1070  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1070_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1070	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1070_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_internal_ref_in_alter_table_list_entry1073  */
static	ANTLR3_BITWORD FOLLOW_column_internal_ref_in_alter_table_list_entry1073_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0003000000003400), ANTLR3_UINT64_LIT(0x0004100003400001), ANTLR3_UINT64_LIT(0x800100C380000000), ANTLR3_UINT64_LIT(0x0001000000000001), ANTLR3_UINT64_LIT(0x0100000091000000), ANTLR3_UINT64_LIT(0x0000000200401800), ANTLR3_UINT64_LIT(0x0200000040000800), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x040000001C04C000), ANTLR3_UINT64_LIT(0x0200000004000000), ANTLR3_UINT64_LIT(0x0003800000000008), ANTLR3_UINT64_LIT(0x0000000000005000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_internal_ref_in_alter_table_list_entry1073	= { FOLLOW_column_internal_ref_in_alter_table_list_entry1073_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_alter_table_list_entry1075  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_alter_table_list_entry1075_bits[]	= { ANTLR3_UINT64_LIT(0x2000000000004002), ANTLR3_UINT64_LIT(0x0000000008000020), ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x4148000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_alter_table_list_entry1075	= { FOLLOW_data_type_in_alter_table_list_entry1075_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_attribute_in_alter_table_list_entry1077  */
static	ANTLR3_BITWORD FOLLOW_attribute_in_alter_table_list_entry1077_bits[]	= { ANTLR3_UINT64_LIT(0x2000000000004002), ANTLR3_UINT64_LIT(0x0000000008000020), ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x4148000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_attribute_in_alter_table_list_entry1077	= { FOLLOW_attribute_in_alter_table_list_entry1077_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1081  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1081_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1081	= { FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1081_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1085  */
static	ANTLR3_BITWORD FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1085_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1085	= { FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1085_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_table_list_entry1087  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_table_list_entry1087_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_table_list_entry1087	= { FOLLOW_identifier_in_alter_table_list_entry1087_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1094  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1094_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000080000000100), ANTLR3_UINT64_LIT(0x0800000024000000), ANTLR3_UINT64_LIT(0x0010000000820000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1094	= { FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1094_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_table_list_entry1103  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_table_list_entry1103_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_table_list_entry1103	= { FOLLOW_set_in_alter_table_list_entry1103_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1111  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_alter_table_list_entry1111	= { FOLLOW_column_ref_in_alter_table_list_entry1111_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1118  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1118_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1118	= { FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1118_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_internal_ref_in_alter_table_list_entry1121  */
static	ANTLR3_BITWORD FOLLOW_column_internal_ref_in_alter_table_list_entry1121_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_internal_ref_in_alter_table_list_entry1121	= { FOLLOW_column_internal_ref_in_alter_table_list_entry1121_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1128  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1128_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1128	= { FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1128_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1130  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1130_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1130	= { FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1130_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1137  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1137_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1137	= { FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1137_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1139  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1139_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1139	= { FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1139_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1162  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1162_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_alter_table_list_entry1162	= { FOLLOW_column_ref_in_alter_table_list_entry1162_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1175  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1175_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_alter_table_list_entry1175	= { FOLLOW_column_ref_in_alter_table_list_entry1175_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_alter_table_list_entry1191  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_alter_table_list_entry1191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DISABLE_SYMBOL_in_alter_table_list_entry1191	= { FOLLOW_DISABLE_SYMBOL_in_alter_table_list_entry1191_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1193  */
static	ANTLR3_BITWORD FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1193_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1193	= { FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1193_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_alter_table_list_entry1198  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_alter_table_list_entry1198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ENABLE_SYMBOL_in_alter_table_list_entry1198	= { FOLLOW_ENABLE_SYMBOL_in_alter_table_list_entry1198_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1200  */
static	ANTLR3_BITWORD FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1200	= { FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1200_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1205  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1205_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000108), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1205	= { FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1205_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_alter_table_list_entry1216  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_alter_table_list_entry1216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_alter_table_list_entry1216	= { FOLLOW_table_ref_in_alter_table_list_entry1216_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1223  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1223	= { FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1223_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_table_list_entry1225  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_table_list_entry1225_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_table_list_entry1225	= { FOLLOW_set_in_alter_table_list_entry1225_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1233  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1233_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_column_ref_in_alter_table_list_entry1233	= { FOLLOW_column_ref_in_alter_table_list_entry1233_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_alter_table_list_entry1235  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_alter_table_list_entry1235_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_alter_table_list_entry1235	= { FOLLOW_TO_SYMBOL_in_alter_table_list_entry1235_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_alter_table_list_entry1237  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_alter_table_list_entry1237_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_alter_table_list_entry1237	= { FOLLOW_column_ref_in_alter_table_list_entry1237_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_order_by_in_alter_table_list_entry1242  */
static	ANTLR3_BITWORD FOLLOW_alter_order_by_in_alter_table_list_entry1242_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_order_by_in_alter_table_list_entry1242	= { FOLLOW_alter_order_by_in_alter_table_list_entry1242_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONVERT_SYMBOL_in_alter_table_list_entry1247  */
static	ANTLR3_BITWORD FOLLOW_CONVERT_SYMBOL_in_alter_table_list_entry1247_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CONVERT_SYMBOL_in_alter_table_list_entry1247	= { FOLLOW_CONVERT_SYMBOL_in_alter_table_list_entry1247_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_alter_table_list_entry1249  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_alter_table_list_entry1249_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000800), 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_TO_SYMBOL_in_alter_table_list_entry1249	= { FOLLOW_TO_SYMBOL_in_alter_table_list_entry1249_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_alter_table_list_entry1251  */
static	ANTLR3_BITWORD FOLLOW_charset_in_alter_table_list_entry1251_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_alter_table_list_entry1251	= { FOLLOW_charset_in_alter_table_list_entry1251_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_alter_table_list_entry1253  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_alter_table_list_entry1253_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_alter_table_list_entry1253	= { FOLLOW_charset_name_or_default_in_alter_table_list_entry1253_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1256  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1256_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1256	= { FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1256_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_alter_table_list_entry1258  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_alter_table_list_entry1258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_alter_table_list_entry1258	= { FOLLOW_collation_name_or_default_in_alter_table_list_entry1258_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1265  */
static	ANTLR3_BITWORD FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1265_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1265	= { FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1265_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_alter_table_list_entry1272  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_alter_table_list_entry1272_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_alter_table_list_entry1272	= { FOLLOW_alter_algorithm_option_in_alter_table_list_entry1272_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_alter_table_list_entry1279  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_alter_table_list_entry1279_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_alter_table_list_entry1279	= { FOLLOW_alter_lock_option_in_alter_table_list_entry1279_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1286  */
static	ANTLR3_BITWORD FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1286_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1286	= { FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1286_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1288  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1288_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1288	= { FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1288_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONSTRAINT_SYMBOL_in_key_def1298  */
static	ANTLR3_BITWORD FOLLOW_CONSTRAINT_SYMBOL_in_key_def1298_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000400000100), ANTLR3_UINT64_LIT(0x0800000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CONSTRAINT_SYMBOL_in_key_def1298	= { FOLLOW_CONSTRAINT_SYMBOL_in_key_def1298_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1300  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1300_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_key_def1300	= { FOLLOW_column_ref_in_key_def1300_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_key_def1312  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_key_def1312_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_key_def1312	= { FOLLOW_PRIMARY_SYMBOL_in_key_def1312_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_key_def1314  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_key_def1314_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_key_def1314	= { FOLLOW_KEY_SYMBOL_in_key_def1314_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1316  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_key_def1316	= { FOLLOW_column_ref_in_key_def1316_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_key_def1319  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_key_def1319_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_index_type_in_key_def1319	= { FOLLOW_index_type_in_key_def1319_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1322  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_key_def1322	= { FOLLOW_index_columns_in_key_def1322_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_key_def1324  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_key_def1324_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_key_def1324	= { FOLLOW_normal_index_option_in_key_def1324_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_key_def1332  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_key_def1332_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_key_def1332	= { FOLLOW_FOREIGN_SYMBOL_in_key_def1332_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_key_def1334  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_key_def1334_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_key_def1334	= { FOLLOW_KEY_SYMBOL_in_key_def1334_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1336  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1336_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_column_ref_in_key_def1336	= { FOLLOW_column_ref_in_key_def1336_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1339  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1339_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_columns_in_key_def1339	= { FOLLOW_index_columns_in_key_def1339_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_definition_in_key_def1341  */
static	ANTLR3_BITWORD FOLLOW_reference_definition_in_key_def1341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_definition_in_key_def1341	= { FOLLOW_reference_definition_in_key_def1341_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_key_def1348  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_key_def1348_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0010000000820000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_key_def1348	= { FOLLOW_UNIQUE_SYMBOL_in_key_def1348_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1359  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_key_def1359	= { FOLLOW_column_ref_in_key_def1359_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_key_def1362  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_key_def1362_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_index_type_in_key_def1362	= { FOLLOW_index_type_in_key_def1362_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1365  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1365_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_key_def1365	= { FOLLOW_index_columns_in_key_def1365_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_key_def1367  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_key_def1367_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_key_def1367	= { FOLLOW_normal_index_option_in_key_def1367_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_key_def1375  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_key_def1375_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_CHECK_SYMBOL_in_key_def1375	= { FOLLOW_CHECK_SYMBOL_in_key_def1375_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_key_def1377  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_key_def1377_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_key_def1377	= { FOLLOW_OPEN_PAR_SYMBOL_in_key_def1377_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_key_def1379  */
static	ANTLR3_BITWORD FOLLOW_expression_in_key_def1379_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_key_def1379	= { FOLLOW_expression_in_key_def1379_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1381  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1381_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1381	= { FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1381_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_key_def1390  */
static	ANTLR3_BITWORD FOLLOW_set_in_key_def1390_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_key_def1390	= { FOLLOW_set_in_key_def1390_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1398  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1398_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_key_def1398	= { FOLLOW_column_ref_in_key_def1398_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_key_def1401  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_key_def1401_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_index_type_in_key_def1401	= { FOLLOW_index_type_in_key_def1401_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1404  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1404_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_key_def1404	= { FOLLOW_index_columns_in_key_def1404_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_key_def1406  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_key_def1406_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_key_def1406	= { FOLLOW_normal_index_option_in_key_def1406_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_key_def1412  */
static	ANTLR3_BITWORD FOLLOW_set_in_key_def1412_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0010000000820000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_key_def1412	= { FOLLOW_set_in_key_def1412_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_key_def1429  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_key_def1429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_column_ref_in_key_def1429	= { FOLLOW_column_ref_in_key_def1429_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_key_def1432  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_key_def1432_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_key_def1432	= { FOLLOW_index_columns_in_key_def1432_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_key_def1434  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_key_def1434_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_key_def1434	= { FOLLOW_normal_index_option_in_key_def1434_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_alter_order_by1444  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_alter_order_by1444_bits[]	= { ANTLR3_UINT64_LIT(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_ORDER_SYMBOL_in_alter_order_by1444	= { FOLLOW_ORDER_SYMBOL_in_alter_order_by1444_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_alter_order_by1446  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_alter_order_by1446_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_alter_order_by1446	= { FOLLOW_BY_SYMBOL_in_alter_order_by1446_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_order_by1448  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_order_by1448_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_order_by1448	= { FOLLOW_identifier_in_alter_order_by1448_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_alter_order_by1450  */
static	ANTLR3_BITWORD FOLLOW_direction_in_alter_order_by1450_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_alter_order_by1450	= { FOLLOW_direction_in_alter_order_by1450_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_order_by1465  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_order_by1465_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_order_by1465	= { FOLLOW_COMMA_SYMBOL_in_alter_order_by1465_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_order_by1467  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_order_by1467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_order_by1467	= { FOLLOW_identifier_in_alter_order_by1467_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_alter_order_by1469  */
static	ANTLR3_BITWORD FOLLOW_direction_in_alter_order_by1469_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_alter_order_by1469	= { FOLLOW_direction_in_alter_order_by1469_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1480  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1480_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1480	= { FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1480_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1482  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1482_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1482	= { FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1482_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1487  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1487_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1487	= { FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1487_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_algorithm_option1491  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_algorithm_option1491_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_algorithm_option1491	= { FOLLOW_identifier_in_alter_algorithm_option1491_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_alter_lock_option1502  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_alter_lock_option1502_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_alter_lock_option1502	= { FOLLOW_LOCK_SYMBOL_in_alter_lock_option1502_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1504  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1504_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1504	= { FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1504_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1508  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1508_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1508	= { FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1508_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_lock_option1512  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_lock_option1512_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_alter_lock_option1512	= { FOLLOW_identifier_in_alter_lock_option1512_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_index_lock_algorithm1534  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_index_lock_algorithm1534_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(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_index_lock_algorithm1534	= { FOLLOW_alter_algorithm_option_in_index_lock_algorithm1534_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_index_lock_algorithm1536  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_index_lock_algorithm1536_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_index_lock_algorithm1536	= { FOLLOW_alter_lock_option_in_index_lock_algorithm1536_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_lock_option_in_index_lock_algorithm1544  */
static	ANTLR3_BITWORD FOLLOW_alter_lock_option_in_index_lock_algorithm1544_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_lock_option_in_index_lock_algorithm1544	= { FOLLOW_alter_lock_option_in_index_lock_algorithm1544_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_algorithm_option_in_index_lock_algorithm1546  */
static	ANTLR3_BITWORD FOLLOW_alter_algorithm_option_in_index_lock_algorithm1546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_algorithm_option_in_index_lock_algorithm1546	= { FOLLOW_alter_algorithm_option_in_index_lock_algorithm1546_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_alter_partition1564  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_alter_partition1564_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_alter_partition1564	= { FOLLOW_ADD_SYMBOL_in_alter_partition1564_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1566  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1566_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), 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(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1566	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1566_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1568  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1568_bits[]	= { 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1568	= { FOLLOW_no_write_to_bin_log_in_alter_partition1568_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1578  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1578_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1578	= { FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1578_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_alter_partition1580  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_alter_partition1580_bits[]	= { ANTLR3_UINT64_LIT(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_partition_definition_in_alter_partition1580	= { FOLLOW_partition_definition_in_alter_partition1580_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1582  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1582_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1582	= { FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1582_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1589  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1589_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1589	= { FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1589_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_alter_partition1591  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_alter_partition1591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_alter_partition1591	= { FOLLOW_real_ulong_number_in_alter_partition1591_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_alter_partition1600  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_alter_partition1600_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_alter_partition1600	= { FOLLOW_DROP_SYMBOL_in_alter_partition1600_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1602  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1602_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1602	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1602_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_alter_partition1604  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_alter_partition1604_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_alter_partition1604	= { FOLLOW_identifier_list_in_alter_partition1604_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REBUILD_SYMBOL_in_alter_partition1609  */
static	ANTLR3_BITWORD FOLLOW_REBUILD_SYMBOL_in_alter_partition1609_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REBUILD_SYMBOL_in_alter_partition1609	= { FOLLOW_REBUILD_SYMBOL_in_alter_partition1609_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1611  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1611_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1611	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1611_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1613  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1613_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1613	= { FOLLOW_no_write_to_bin_log_in_alter_partition1613_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1616  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1616	= { FOLLOW_all_or_partition_name_list_in_alter_partition1616_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1621  */
static	ANTLR3_BITWORD FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1621_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1621	= { FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1621_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1623  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1623_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1623	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1623_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1625  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1625_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1625	= { FOLLOW_no_write_to_bin_log_in_alter_partition1625_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1628  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(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_all_or_partition_name_list_in_alter_partition1628	= { FOLLOW_all_or_partition_name_list_in_alter_partition1628_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1630  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1630	= { FOLLOW_no_write_to_bin_log_in_alter_partition1630_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYZE_SYMBOL_in_alter_partition1637  */
static	ANTLR3_BITWORD FOLLOW_ANALYZE_SYMBOL_in_alter_partition1637_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ANALYZE_SYMBOL_in_alter_partition1637	= { FOLLOW_ANALYZE_SYMBOL_in_alter_partition1637_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1639  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1639_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1639	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1639_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1641  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1641_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1641	= { FOLLOW_no_write_to_bin_log_in_alter_partition1641_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1644  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1644_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1644	= { FOLLOW_all_or_partition_name_list_in_alter_partition1644_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_alter_partition1649  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_alter_partition1649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHECK_SYMBOL_in_alter_partition1649	= { FOLLOW_CHECK_SYMBOL_in_alter_partition1649_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1651  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1651_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1651	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1651_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1653  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000004800), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1653	= { FOLLOW_all_or_partition_name_list_in_alter_partition1653_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_check_option_in_alter_partition1655  */
static	ANTLR3_BITWORD FOLLOW_check_option_in_alter_partition1655_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000004800), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_check_option_in_alter_partition1655	= { FOLLOW_check_option_in_alter_partition1655_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPAIR_SYMBOL_in_alter_partition1661  */
static	ANTLR3_BITWORD FOLLOW_REPAIR_SYMBOL_in_alter_partition1661_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPAIR_SYMBOL_in_alter_partition1661	= { FOLLOW_REPAIR_SYMBOL_in_alter_partition1661_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1663  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1663_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1663	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1663_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1665  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1665_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1665	= { FOLLOW_no_write_to_bin_log_in_alter_partition1665_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1668  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1668_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1668	= { FOLLOW_all_or_partition_name_list_in_alter_partition1668_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repair_option_in_alter_partition1670  */
static	ANTLR3_BITWORD FOLLOW_repair_option_in_alter_partition1670_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_repair_option_in_alter_partition1670	= { FOLLOW_repair_option_in_alter_partition1670_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COALESCE_SYMBOL_in_alter_partition1676  */
static	ANTLR3_BITWORD FOLLOW_COALESCE_SYMBOL_in_alter_partition1676_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COALESCE_SYMBOL_in_alter_partition1676	= { FOLLOW_COALESCE_SYMBOL_in_alter_partition1676_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1678  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1678_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0020000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1678	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1678_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1680  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1680	= { FOLLOW_no_write_to_bin_log_in_alter_partition1680_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_alter_partition1683  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_alter_partition1683_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_alter_partition1683	= { FOLLOW_real_ulong_number_in_alter_partition1683_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1690  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1690_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1690	= { FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1690_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1692  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1692_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1692	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1692_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1694  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_or_partition_name_list_in_alter_partition1694	= { FOLLOW_all_or_partition_name_list_in_alter_partition1694_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1699  */
static	ANTLR3_BITWORD FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1699_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1699	= { FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1699_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1701  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1701_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1701	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1701_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_alter_partition1703  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_alter_partition1703_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_alter_partition1703	= { FOLLOW_identifier_in_alter_partition1703_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_alter_partition1705  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_alter_partition1705_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WITH_SYMBOL_in_alter_partition1705	= { FOLLOW_WITH_SYMBOL_in_alter_partition1705_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_alter_partition1707  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_alter_partition1707_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_alter_partition1707	= { FOLLOW_TABLE_SYMBOL_in_alter_partition1707_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_alter_partition1709  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_alter_partition1709_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000480000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_alter_partition1709	= { FOLLOW_table_ref_in_alter_partition1709_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_validation_in_alter_partition1711  */
static	ANTLR3_BITWORD FOLLOW_validation_in_alter_partition1711_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_validation_in_alter_partition1711	= { FOLLOW_validation_in_alter_partition1711_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1717  */
static	ANTLR3_BITWORD FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1717	= { FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1719  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1719_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0020000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1719	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1719_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_alter_partition1721  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_alter_partition1721_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_alter_partition1721	= { FOLLOW_no_write_to_bin_log_in_alter_partition1721_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_alter_partition1725  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_alter_partition1725_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_list_in_alter_partition1725	= { FOLLOW_identifier_list_in_alter_partition1725_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_alter_partition1727  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_alter_partition1727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_INTO_SYMBOL_in_alter_partition1727	= { FOLLOW_INTO_SYMBOL_in_alter_partition1727_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definitions_in_alter_partition1729  */
static	ANTLR3_BITWORD FOLLOW_partition_definitions_in_alter_partition1729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definitions_in_alter_partition1729	= { FOLLOW_partition_definitions_in_alter_partition1729_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISCARD_SYMBOL_in_alter_partition1738  */
static	ANTLR3_BITWORD FOLLOW_DISCARD_SYMBOL_in_alter_partition1738_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DISCARD_SYMBOL_in_alter_partition1738	= { FOLLOW_DISCARD_SYMBOL_in_alter_partition1738_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1740  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1740_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1740	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1740_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1742  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1742_bits[]	= { 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_all_or_partition_name_list_in_alter_partition1742	= { FOLLOW_all_or_partition_name_list_in_alter_partition1742_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1744  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1744	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IMPORT_SYMBOL_in_alter_partition1751  */
static	ANTLR3_BITWORD FOLLOW_IMPORT_SYMBOL_in_alter_partition1751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IMPORT_SYMBOL_in_alter_partition1751	= { FOLLOW_IMPORT_SYMBOL_in_alter_partition1751_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_alter_partition1753  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_alter_partition1753_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_alter_partition1753	= { FOLLOW_PARTITION_SYMBOL_in_alter_partition1753_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_or_partition_name_list_in_alter_partition1755  */
static	ANTLR3_BITWORD FOLLOW_all_or_partition_name_list_in_alter_partition1755_bits[]	= { 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_all_or_partition_name_list_in_alter_partition1755	= { FOLLOW_all_or_partition_name_list_in_alter_partition1755_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1757  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1757_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1757	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1757_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_validation1770  */
static	ANTLR3_BITWORD FOLLOW_set_in_validation1770_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_validation1770	= { FOLLOW_set_in_validation1770_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALIDATION_SYMBOL_in_validation1778  */
static	ANTLR3_BITWORD FOLLOW_VALIDATION_SYMBOL_in_validation1778_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VALIDATION_SYMBOL_in_validation1778	= { FOLLOW_VALIDATION_SYMBOL_in_validation1778_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1791  */
static	ANTLR3_BITWORD FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1791_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1791	= { FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1791_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1793  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1793_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1793	= { FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1793_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1802  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1802_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1802	= { FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1802_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_all_or_partition_name_list1807  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_all_or_partition_name_list1807_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_all_or_partition_name_list1807	= { FOLLOW_identifier_list_in_all_or_partition_name_list1807_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1816  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1816_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1816	= { FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1816_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_ref_in_alter_tablespace1818  */
static	ANTLR3_BITWORD FOLLOW_tablespace_ref_in_alter_tablespace1818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_ref_in_alter_tablespace1818	= { FOLLOW_tablespace_ref_in_alter_tablespace1818_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_tablespace1825  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_tablespace1825_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_tablespace1825	= { FOLLOW_set_in_alter_tablespace1825_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1833  */
static	ANTLR3_BITWORD FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1833_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1833	= { FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1833_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_tablespace1835  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_tablespace1835_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000100000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_alter_tablespace1835	= { FOLLOW_string_literal_in_alter_tablespace1835_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_tablespace_option_in_alter_tablespace1838  */
static	ANTLR3_BITWORD FOLLOW_alter_tablespace_option_in_alter_tablespace1838_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000100000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_tablespace_option_in_alter_tablespace1838	= { FOLLOW_alter_tablespace_option_in_alter_tablespace1838_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_tablespace1841  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_tablespace1841_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000100000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_tablespace1841	= { FOLLOW_COMMA_SYMBOL_in_alter_tablespace1841_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_tablespace_option_in_alter_tablespace1844  */
static	ANTLR3_BITWORD FOLLOW_alter_tablespace_option_in_alter_tablespace1844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000100000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_tablespace_option_in_alter_tablespace1844	= { FOLLOW_alter_tablespace_option_in_alter_tablespace1844_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1857  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1857	= { FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1857_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1859  */
static	ANTLR3_BITWORD FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1859_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1859	= { FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1859_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_alter_tablespace1861  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_alter_tablespace1861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_alter_tablespace1861	= { FOLLOW_string_literal_in_alter_tablespace1861_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_tablespace_option_in_alter_tablespace1864  */
static	ANTLR3_BITWORD FOLLOW_change_tablespace_option_in_alter_tablespace1864_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_change_tablespace_option_in_alter_tablespace1864	= { FOLLOW_change_tablespace_option_in_alter_tablespace1864_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_alter_tablespace1867  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_alter_tablespace1867_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_alter_tablespace1867	= { FOLLOW_COMMA_SYMBOL_in_alter_tablespace1867_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_tablespace_option_in_alter_tablespace1870  */
static	ANTLR3_BITWORD FOLLOW_change_tablespace_option_in_alter_tablespace1870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_change_tablespace_option_in_alter_tablespace1870	= { FOLLOW_change_tablespace_option_in_alter_tablespace1870_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1880  */
static	ANTLR3_BITWORD FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1880	= { FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1880_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1886  */
static	ANTLR3_BITWORD FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1886_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1886	= { FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1886_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_alter_tablespace1892  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_alter_tablespace1892_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) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_alter_tablespace1892	= { FOLLOW_NOT_SYMBOL_in_alter_tablespace1892_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1894  */
static	ANTLR3_BITWORD FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1894_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1894	= { FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1894_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1906  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1906_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1906	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1906_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1908  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1908_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1908	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1908_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_alter_tablespace_option1911  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_alter_tablespace_option1911_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_alter_tablespace_option1911	= { FOLLOW_size_number_in_alter_tablespace_option1911_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1916  */
static	ANTLR3_BITWORD FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1916_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1916	= { FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1916_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1918  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1918_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1918	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1918_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_alter_tablespace_option1921  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_alter_tablespace_option1921_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_alter_tablespace_option1921	= { FOLLOW_size_number_in_alter_tablespace_option1921_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1926  */
static	ANTLR3_BITWORD FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1926_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1926	= { FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1926_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1928  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1928_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1928	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1928_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_alter_tablespace_option1931  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_alter_tablespace_option1931_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_alter_tablespace_option1931	= { FOLLOW_size_number_in_alter_tablespace_option1931_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1936  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1936_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1936	= { FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1936_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1939  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1939_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1939	= { FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1939_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1941  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1941_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1941	= { FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1941_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_alter_tablespace_option1944  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_alter_tablespace_option1944_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_alter_tablespace_option1944	= { FOLLOW_engine_ref_in_alter_tablespace_option1944_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_tablespace_option1949  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_tablespace_option1949_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_alter_tablespace_option1949	= { FOLLOW_set_in_alter_tablespace_option1949_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option1964  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option1964_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option1964	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option1964_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1966  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1966_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1966	= { FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1966_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_change_tablespace_option1969  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_change_tablespace_option1969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_change_tablespace_option1969	= { FOLLOW_size_number_in_change_tablespace_option1969_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option1974  */
static	ANTLR3_BITWORD FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option1974_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option1974	= { FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option1974_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1976  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1976_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1976	= { FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1976_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_change_tablespace_option1979  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_change_tablespace_option1979_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_change_tablespace_option1979	= { FOLLOW_size_number_in_change_tablespace_option1979_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option1984  */
static	ANTLR3_BITWORD FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option1984_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option1984	= { FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option1984_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1986  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1986_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1986	= { FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1986_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_change_tablespace_option1989  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_change_tablespace_option1989_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_change_tablespace_option1989	= { FOLLOW_size_number_in_change_tablespace_option1989_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_alter_view1999  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_alter_view1999_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALGORITHM_SYMBOL_in_alter_view1999	= { FOLLOW_ALGORITHM_SYMBOL_in_alter_view1999_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_alter_view2001  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_alter_view2001_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_alter_view2001	= { FOLLOW_EQUAL_OPERATOR_in_alter_view2001_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_view2003  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_view2003_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), 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_set_in_alter_view2003	= { FOLLOW_set_in_alter_view2003_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_alter_view2019  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_alter_view2019_bits[]	= { 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(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_definer_clause_in_alter_view2019	= { FOLLOW_definer_clause_in_alter_view2019_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_alter_view2025  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_alter_view2025_bits[]	= { ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_alter_view2025	= { FOLLOW_SQL_SYMBOL_in_alter_view2025_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_alter_view2027  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_alter_view2027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_alter_view2027	= { FOLLOW_SECURITY_SYMBOL_in_alter_view2027_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_alter_view2029  */
static	ANTLR3_BITWORD FOLLOW_set_in_alter_view2029_bits[]	= { 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_set_in_alter_view2029	= { FOLLOW_set_in_alter_view2029_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_alter_view2041  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_alter_view2041_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_alter_view2041	= { FOLLOW_VIEW_SYMBOL_in_alter_view2041_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_ref_in_alter_view2043  */
static	ANTLR3_BITWORD FOLLOW_view_ref_in_alter_view2043_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_view_ref_in_alter_view2043	= { FOLLOW_view_ref_in_alter_view2043_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_alter_view2045  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_alter_view2045_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_list_with_parentheses_in_alter_view2045	= { FOLLOW_identifier_list_with_parentheses_in_alter_view2045_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_alter_view2048  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_alter_view2048_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_alter_view2048	= { FOLLOW_AS_SYMBOL_in_alter_view2048_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_alter_view2050  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_alter_view2050_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_alter_view2050	= { FOLLOW_select_statement_in_alter_view2050_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_alter_view2055  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_alter_view2055_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_alter_view2055	= { FOLLOW_WITH_SYMBOL_in_alter_view2055_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_alter_view2066  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_alter_view2066_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECK_SYMBOL_in_alter_view2066	= { FOLLOW_CHECK_SYMBOL_in_alter_view2066_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_alter_view2068  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_alter_view2068_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_alter_view2068	= { FOLLOW_OPTION_SYMBOL_in_alter_view2068_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_statement2084  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_statement2084_bits[]	= { ANTLR3_UINT64_LIT(0x8000400000000000), ANTLR3_UINT64_LIT(0x0010000000000001), ANTLR3_UINT64_LIT(0x0040000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400800600000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x1800000000000000), ANTLR3_UINT64_LIT(0x0000000000100040), ANTLR3_UINT64_LIT(0x0040100000001010), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_statement2084	= { FOLLOW_CREATE_SYMBOL_in_create_statement2084_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_tail_in_create_statement2092  */
static	ANTLR3_BITWORD FOLLOW_create_table_tail_in_create_statement2092_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_tail_in_create_statement2092	= { FOLLOW_create_table_tail_in_create_statement2092_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_tail_in_create_statement2098  */
static	ANTLR3_BITWORD FOLLOW_create_index_tail_in_create_statement2098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_tail_in_create_statement2098	= { FOLLOW_create_index_tail_in_create_statement2098_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_database_tail_in_create_statement2104  */
static	ANTLR3_BITWORD FOLLOW_create_database_tail_in_create_statement2104_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_database_tail_in_create_statement2104	= { FOLLOW_create_database_tail_in_create_statement2104_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_statement2110  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_statement2110_bits[]	= { ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0040000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_create_statement2110	= { FOLLOW_definer_clause_in_create_statement2110_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_event_tail_in_create_statement2124  */
static	ANTLR3_BITWORD FOLLOW_create_event_tail_in_create_statement2124_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_event_tail_in_create_statement2124	= { FOLLOW_create_event_tail_in_create_statement2124_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_view_tail_in_create_statement2132  */
static	ANTLR3_BITWORD FOLLOW_create_view_tail_in_create_statement2132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_view_tail_in_create_statement2132	= { FOLLOW_create_view_tail_in_create_statement2132_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_routine_or_udf_in_create_statement2140  */
static	ANTLR3_BITWORD FOLLOW_create_routine_or_udf_in_create_statement2140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_routine_or_udf_in_create_statement2140	= { FOLLOW_create_routine_or_udf_in_create_statement2140_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_trigger_tail_in_create_statement2148  */
static	ANTLR3_BITWORD FOLLOW_create_trigger_tail_in_create_statement2148_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_trigger_tail_in_create_statement2148	= { FOLLOW_create_trigger_tail_in_create_statement2148_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_replace_or_algorithm_in_create_statement2159  */
static	ANTLR3_BITWORD FOLLOW_view_replace_or_algorithm_in_create_statement2159_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), 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_view_replace_or_algorithm_in_create_statement2159	= { FOLLOW_view_replace_or_algorithm_in_create_statement2159_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_statement2161  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_statement2161_bits[]	= { 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(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_definer_clause_in_create_statement2161	= { FOLLOW_definer_clause_in_create_statement2161_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_view_tail_in_create_statement2164  */
static	ANTLR3_BITWORD FOLLOW_create_view_tail_in_create_statement2164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_view_tail_in_create_statement2164	= { FOLLOW_create_view_tail_in_create_statement2164_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_logfile_group_tail_in_create_statement2170  */
static	ANTLR3_BITWORD FOLLOW_create_logfile_group_tail_in_create_statement2170_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_logfile_group_tail_in_create_statement2170	= { FOLLOW_create_logfile_group_tail_in_create_statement2170_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_server_tail_in_create_statement2176  */
static	ANTLR3_BITWORD FOLLOW_create_server_tail_in_create_statement2176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_server_tail_in_create_statement2176	= { FOLLOW_create_server_tail_in_create_statement2176_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_tablespace_tail_in_create_statement2182  */
static	ANTLR3_BITWORD FOLLOW_create_tablespace_tail_in_create_statement2182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_tablespace_tail_in_create_statement2182	= { FOLLOW_create_tablespace_tail_in_create_statement2182_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_database2195  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_database2195_bits[]	= { ANTLR3_UINT64_LIT(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_CREATE_SYMBOL_in_create_database2195	= { FOLLOW_CREATE_SYMBOL_in_create_database2195_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_database_tail_in_create_database2198  */
static	ANTLR3_BITWORD FOLLOW_create_database_tail_in_create_database2198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_database_tail_in_create_database2198	= { FOLLOW_create_database_tail_in_create_database2198_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_database2200  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_database2200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_database2200	= { FOLLOW_SEMICOLON_SYMBOL_in_create_database2200_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_database2203  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_database2203_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_database2203	= { FOLLOW_EOF_in_create_database2203_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_create_database_tail2212  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_create_database_tail2212_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_create_database_tail2212	= { FOLLOW_DATABASE_SYMBOL_in_create_database_tail2212_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_database_tail2214  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_database_tail2214_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_database_tail2214	= { FOLLOW_if_not_exists_in_create_database_tail2214_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_name_in_create_database_tail2217  */
static	ANTLR3_BITWORD FOLLOW_schema_name_in_create_database_tail2217_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002200000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_name_in_create_database_tail2217	= { FOLLOW_schema_name_in_create_database_tail2217_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_database_option_in_create_database_tail2219  */
static	ANTLR3_BITWORD FOLLOW_database_option_in_create_database_tail2219_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002200000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_database_option_in_create_database_tail2219	= { FOLLOW_database_option_in_create_database_tail2219_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_with_definer2229  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_with_definer2229_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_with_definer2229	= { FOLLOW_CREATE_SYMBOL_in_create_with_definer2229_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_with_definer2232  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_with_definer2232_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_definer_clause_in_create_with_definer2232	= { FOLLOW_definer_clause_in_create_with_definer2232_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_event2243  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_event2243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_create_with_definer_in_create_event2243	= { FOLLOW_create_with_definer_in_create_event2243_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_event_tail_in_create_event2245  */
static	ANTLR3_BITWORD FOLLOW_create_event_tail_in_create_event2245_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_event_tail_in_create_event2245	= { FOLLOW_create_event_tail_in_create_event2245_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_event2247  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_event2247_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_event2247	= { FOLLOW_SEMICOLON_SYMBOL_in_create_event2247_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_event2250  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_event2250_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_event2250	= { FOLLOW_EOF_in_create_event2250_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_create_event_tail2259  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_create_event_tail2259_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_create_event_tail2259	= { FOLLOW_EVENT_SYMBOL_in_create_event_tail2259_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_event_tail2261  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_event_tail2261_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_event_tail2261	= { FOLLOW_if_not_exists_in_create_event_tail2261_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_event_name_in_create_event_tail2264  */
static	ANTLR3_BITWORD FOLLOW_event_name_in_create_event_tail2264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_event_name_in_create_event_tail2264	= { FOLLOW_event_name_in_create_event_tail2264_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event_tail2266  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event_tail2266_bits[]	= { 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_ON_SYMBOL_in_create_event_tail2266	= { FOLLOW_ON_SYMBOL_in_create_event_tail2266_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2268  */
static	ANTLR3_BITWORD FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2268_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000100) };
static  ANTLR3_BITSET_LIST FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2268	= { FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2268_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schedule_in_create_event_tail2270  */
static	ANTLR3_BITWORD FOLLOW_schedule_in_create_event_tail2270_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(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_schedule_in_create_event_tail2270	= { FOLLOW_schedule_in_create_event_tail2270_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event_tail2275  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event_tail2275_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_event_tail2275	= { FOLLOW_ON_SYMBOL_in_create_event_tail2275_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2277  */
static	ANTLR3_BITWORD FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2277_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), 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_COMPLETION_SYMBOL_in_create_event_tail2277	= { FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2277_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_create_event_tail2279  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_create_event_tail2279_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_create_event_tail2279	= { FOLLOW_NOT_SYMBOL_in_create_event_tail2279_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2282  */
static	ANTLR3_BITWORD FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2282_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2282	= { FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2282_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENABLE_SYMBOL_in_create_event_tail2289  */
static	ANTLR3_BITWORD FOLLOW_ENABLE_SYMBOL_in_create_event_tail2289_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044000) };
static  ANTLR3_BITSET_LIST FOLLOW_ENABLE_SYMBOL_in_create_event_tail2289	= { FOLLOW_ENABLE_SYMBOL_in_create_event_tail2289_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISABLE_SYMBOL_in_create_event_tail2293  */
static	ANTLR3_BITWORD FOLLOW_DISABLE_SYMBOL_in_create_event_tail2293_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DISABLE_SYMBOL_in_create_event_tail2293	= { FOLLOW_DISABLE_SYMBOL_in_create_event_tail2293_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_event_tail2296  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_event_tail2296_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_event_tail2296	= { FOLLOW_ON_SYMBOL_in_create_event_tail2296_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_create_event_tail2298  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_create_event_tail2298_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000044000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_create_event_tail2298	= { FOLLOW_SLAVE_SYMBOL_in_create_event_tail2298_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_create_event_tail2307  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_create_event_tail2307_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_create_event_tail2307	= { FOLLOW_COMMENT_SYMBOL_in_create_event_tail2307_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_event_tail2309  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_event_tail2309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_create_event_tail2309	= { FOLLOW_string_literal_in_create_event_tail2309_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_create_event_tail2315  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_create_event_tail2315_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_create_event_tail2315	= { FOLLOW_DO_SYMBOL_in_create_event_tail2315_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_create_event_tail2317  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_create_event_tail2317_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_create_event_tail2317	= { FOLLOW_compound_statement_in_create_event_tail2317_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_routine2327  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_routine2327_bits[]	= { ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000), 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_create_with_definer_in_create_routine2327	= { FOLLOW_create_with_definer_in_create_routine2327_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_routine_or_udf_in_create_routine2329  */
static	ANTLR3_BITWORD FOLLOW_create_routine_or_udf_in_create_routine2329_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_routine_or_udf_in_create_routine2329	= { FOLLOW_create_routine_or_udf_in_create_routine2329_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_routine2331  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_routine2331_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_routine2331	= { FOLLOW_SEMICOLON_SYMBOL_in_create_routine2331_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_routine2334  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_routine2334_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_routine2334	= { FOLLOW_EOF_in_create_routine2334_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_procedure2344  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_procedure2344_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_with_definer_in_create_procedure2344	= { FOLLOW_create_with_definer_in_create_procedure2344_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_body_in_create_procedure2346  */
static	ANTLR3_BITWORD FOLLOW_procedure_body_in_create_procedure2346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_procedure_body_in_create_procedure2346	= { FOLLOW_procedure_body_in_create_procedure2346_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2348  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2348	= { FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_procedure2351  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_procedure2351_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_procedure2351	= { FOLLOW_EOF_in_create_procedure2351_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_function2361  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_function2361_bits[]	= { ANTLR3_UINT64_LIT(0x8000000000000000), 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_create_with_definer_in_create_function2361	= { FOLLOW_create_with_definer_in_create_function2361_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_body_in_create_function2363  */
static	ANTLR3_BITWORD FOLLOW_function_body_in_create_function2363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_function_body_in_create_function2363	= { FOLLOW_function_body_in_create_function2363_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_function2365  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_function2365_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_function2365	= { FOLLOW_SEMICOLON_SYMBOL_in_create_function2365_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_function2368  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_function2368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_function2368	= { FOLLOW_EOF_in_create_function2368_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_body_in_create_routine_or_udf2377  */
static	ANTLR3_BITWORD FOLLOW_procedure_body_in_create_routine_or_udf2377_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_body_in_create_routine_or_udf2377	= { FOLLOW_procedure_body_in_create_routine_or_udf2377_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_body_in_create_routine_or_udf2382  */
static	ANTLR3_BITWORD FOLLOW_function_body_in_create_routine_or_udf2382_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_body_in_create_routine_or_udf2382	= { FOLLOW_function_body_in_create_routine_or_udf2382_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2391  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2391_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2391	= { FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2391_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_name_in_procedure_body2393  */
static	ANTLR3_BITWORD FOLLOW_procedure_name_in_procedure_body2393_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_procedure_name_in_procedure_body2393	= { FOLLOW_procedure_name_in_procedure_body2393_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2395  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2395_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000010004020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2395	= { FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2395_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_parameter_in_procedure_body2398  */
static	ANTLR3_BITWORD FOLLOW_procedure_parameter_in_procedure_body2398_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_parameter_in_procedure_body2398	= { FOLLOW_procedure_parameter_in_procedure_body2398_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_procedure_body2401  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_procedure_body2401_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000010004020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_procedure_body2401	= { FOLLOW_COMMA_SYMBOL_in_procedure_body2401_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_parameter_in_procedure_body2403  */
static	ANTLR3_BITWORD FOLLOW_procedure_parameter_in_procedure_body2403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_parameter_in_procedure_body2403	= { FOLLOW_procedure_parameter_in_procedure_body2403_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2409  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2409_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F48F637F580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A00F0000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0008002000080088), ANTLR3_UINT64_LIT(0x62020035E0A00005), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2409	= { FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2409_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_options_in_procedure_body2413  */
static	ANTLR3_BITWORD FOLLOW_routine_create_options_in_procedure_body2413_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_options_in_procedure_body2413	= { FOLLOW_routine_create_options_in_procedure_body2413_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_procedure_body2416  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_procedure_body2416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_procedure_body2416	= { FOLLOW_compound_statement_in_procedure_body2416_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_function_body2426  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_function_body2426_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_function_body2426	= { FOLLOW_FUNCTION_SYMBOL_in_function_body2426_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_name_in_function_body2433  */
static	ANTLR3_BITWORD FOLLOW_function_name_in_function_body2433_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_function_name_in_function_body2433	= { FOLLOW_function_name_in_function_body2433_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_function_body2435  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_function_body2435_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_function_body2435	= { FOLLOW_OPEN_PAR_SYMBOL_in_function_body2435_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_parameter_in_function_body2438  */
static	ANTLR3_BITWORD FOLLOW_function_parameter_in_function_body2438_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_function_parameter_in_function_body2438	= { FOLLOW_function_parameter_in_function_body2438_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_function_body2441  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_function_body2441_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_function_body2441	= { FOLLOW_COMMA_SYMBOL_in_function_body2441_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_parameter_in_function_body2443  */
static	ANTLR3_BITWORD FOLLOW_function_parameter_in_function_body2443_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_function_parameter_in_function_body2443	= { FOLLOW_function_parameter_in_function_body2443_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_function_body2449  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_function_body2449_bits[]	= { 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_CLOSE_PAR_SYMBOL_in_function_body2449	= { FOLLOW_CLOSE_PAR_SYMBOL_in_function_body2449_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURNS_SYMBOL_in_function_body2451  */
static	ANTLR3_BITWORD FOLLOW_RETURNS_SYMBOL_in_function_body2451_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0003000000003400), ANTLR3_UINT64_LIT(0x0004100003400001), ANTLR3_UINT64_LIT(0x800100C380000000), ANTLR3_UINT64_LIT(0x0001000000000001), ANTLR3_UINT64_LIT(0x0100000091000000), ANTLR3_UINT64_LIT(0x0000000200401800), ANTLR3_UINT64_LIT(0x0200000040000800), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x040000001C04C000), ANTLR3_UINT64_LIT(0x0200000004000000), ANTLR3_UINT64_LIT(0x0003800000000008), ANTLR3_UINT64_LIT(0x0000000000005000) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURNS_SYMBOL_in_function_body2451	= { FOLLOW_RETURNS_SYMBOL_in_function_body2451_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_function_body2456  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_function_body2456_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F48F637F580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A00F0000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0008002000080088), ANTLR3_UINT64_LIT(0x62020035E0A00005), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_function_body2456	= { FOLLOW_data_type_in_function_body2456_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_options_in_function_body2458  */
static	ANTLR3_BITWORD FOLLOW_routine_create_options_in_function_body2458_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_options_in_function_body2458	= { FOLLOW_routine_create_options_in_function_body2458_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_function_body2461  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_function_body2461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_function_body2461	= { FOLLOW_compound_statement_in_function_body2461_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_tail_in_function_body2467  */
static	ANTLR3_BITWORD FOLLOW_udf_tail_in_function_body2467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_udf_tail_in_function_body2467	= { FOLLOW_udf_tail_in_function_body2467_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AGGREGATE_SYMBOL_in_function_body2475  */
static	ANTLR3_BITWORD FOLLOW_AGGREGATE_SYMBOL_in_function_body2475_bits[]	= { 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_AGGREGATE_SYMBOL_in_function_body2475	= { FOLLOW_AGGREGATE_SYMBOL_in_function_body2475_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_function_body2477  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_function_body2477_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_function_body2477	= { FOLLOW_FUNCTION_SYMBOL_in_function_body2477_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_tail_in_function_body2479  */
static	ANTLR3_BITWORD FOLLOW_udf_tail_in_function_body2479_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_udf_tail_in_function_body2479	= { FOLLOW_udf_tail_in_function_body2479_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_name_in_udf_tail2489  */
static	ANTLR3_BITWORD FOLLOW_udf_name_in_udf_tail2489_bits[]	= { 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_udf_name_in_udf_tail2489	= { FOLLOW_udf_name_in_udf_tail2489_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURNS_SYMBOL_in_udf_tail2491  */
static	ANTLR3_BITWORD FOLLOW_RETURNS_SYMBOL_in_udf_tail2491_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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000004000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURNS_SYMBOL_in_udf_tail2491	= { FOLLOW_RETURNS_SYMBOL_in_udf_tail2491_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_udf_tail2493  */
static	ANTLR3_BITWORD FOLLOW_set_in_udf_tail2493_bits[]	= { ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_udf_tail2493	= { FOLLOW_set_in_udf_tail2493_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SONAME_SYMBOL_in_udf_tail2509  */
static	ANTLR3_BITWORD FOLLOW_SONAME_SYMBOL_in_udf_tail2509_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SONAME_SYMBOL_in_udf_tail2509	= { FOLLOW_SONAME_SYMBOL_in_udf_tail2509_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_udf_tail2511  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_udf_tail2511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_udf_tail2511	= { FOLLOW_string_literal_in_udf_tail2511_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_option_in_routine_create_options2520  */
static	ANTLR3_BITWORD FOLLOW_routine_create_option_in_routine_create_options2520_bits[]	= { ANTLR3_UINT64_LIT(0x0000000060014002), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008002000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_option_in_routine_create_options2520	= { FOLLOW_routine_create_option_in_routine_create_options2520_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_option_in_routine_create_option2540  */
static	ANTLR3_BITWORD FOLLOW_routine_option_in_routine_create_option2540_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_option_in_routine_create_option2540	= { FOLLOW_routine_option_in_routine_create_option2540_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_routine_create_option2545  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_routine_create_option2545_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NOT_SYMBOL_in_routine_create_option2545	= { FOLLOW_NOT_SYMBOL_in_routine_create_option2545_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2548  */
static	ANTLR3_BITWORD FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2548_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2548	= { FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2548_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_routine_create_option_in_routine_alter_options2557  */
static	ANTLR3_BITWORD FOLLOW_routine_create_option_in_routine_alter_options2557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000060014002), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008002000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_routine_create_option_in_routine_alter_options2557	= { FOLLOW_routine_create_option_in_routine_alter_options2557_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_routine_option2577  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_routine_option2577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_routine_option2577	= { FOLLOW_COMMENT_SYMBOL_in_routine_option2577_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_routine_option2579  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_routine_option2579_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_routine_option2579	= { FOLLOW_string_literal_in_routine_option2579_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LANGUAGE_SYMBOL_in_routine_option2584  */
static	ANTLR3_BITWORD FOLLOW_LANGUAGE_SYMBOL_in_routine_option2584_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LANGUAGE_SYMBOL_in_routine_option2584	= { FOLLOW_LANGUAGE_SYMBOL_in_routine_option2584_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2586  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2586_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2586	= { FOLLOW_SQL_SYMBOL_in_routine_option2586_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_routine_option2591  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_routine_option2591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NO_SYMBOL_in_routine_option2591	= { FOLLOW_NO_SYMBOL_in_routine_option2591_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2593  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2593_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2593	= { FOLLOW_SQL_SYMBOL_in_routine_option2593_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTAINS_SYMBOL_in_routine_option2598  */
static	ANTLR3_BITWORD FOLLOW_CONTAINS_SYMBOL_in_routine_option2598_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CONTAINS_SYMBOL_in_routine_option2598	= { FOLLOW_CONTAINS_SYMBOL_in_routine_option2598_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2600  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2600_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2600	= { FOLLOW_SQL_SYMBOL_in_routine_option2600_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READS_SYMBOL_in_routine_option2605  */
static	ANTLR3_BITWORD FOLLOW_READS_SYMBOL_in_routine_option2605_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_READS_SYMBOL_in_routine_option2605	= { FOLLOW_READS_SYMBOL_in_routine_option2605_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2607  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2607	= { FOLLOW_SQL_SYMBOL_in_routine_option2607_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_routine_option2609  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_routine_option2609_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_routine_option2609	= { FOLLOW_DATA_SYMBOL_in_routine_option2609_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODIFIES_SYMBOL_in_routine_option2614  */
static	ANTLR3_BITWORD FOLLOW_MODIFIES_SYMBOL_in_routine_option2614_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MODIFIES_SYMBOL_in_routine_option2614	= { FOLLOW_MODIFIES_SYMBOL_in_routine_option2614_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2616  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2616	= { FOLLOW_SQL_SYMBOL_in_routine_option2616_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_routine_option2618  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_routine_option2618_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_routine_option2618	= { FOLLOW_DATA_SYMBOL_in_routine_option2618_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_routine_option2623  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_routine_option2623_bits[]	= { ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_routine_option2623	= { FOLLOW_SQL_SYMBOL_in_routine_option2623_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_routine_option2625  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_routine_option2625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_routine_option2625	= { FOLLOW_SECURITY_SYMBOL_in_routine_option2625_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_routine_option2627  */
static	ANTLR3_BITWORD FOLLOW_set_in_routine_option2627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_routine_option2627	= { FOLLOW_set_in_routine_option2627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_index2643  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_index2643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x1800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_index2643	= { FOLLOW_CREATE_SYMBOL_in_create_index2643_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_tail_in_create_index2646  */
static	ANTLR3_BITWORD FOLLOW_create_index_tail_in_create_index2646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_index_tail_in_create_index2646	= { FOLLOW_create_index_tail_in_create_index2646_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_index2648  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_index2648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_index2648	= { FOLLOW_SEMICOLON_SYMBOL_in_create_index2648_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_index2651  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_index2651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_index2651	= { FOLLOW_EOF_in_create_index2651_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_create_index_tail2660  */
static	ANTLR3_BITWORD FOLLOW_online_option_in_create_index_tail2660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_online_option_in_create_index_tail2660	= { FOLLOW_online_option_in_create_index_tail2660_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_create_index_tail2668  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_create_index_tail2668_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_UNIQUE_SYMBOL_in_create_index_tail2668	= { FOLLOW_UNIQUE_SYMBOL_in_create_index_tail2668_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_index_tail2671  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_index_tail2671_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_index_tail2671	= { FOLLOW_INDEX_SYMBOL_in_create_index_tail2671_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_name_in_create_index_tail2673  */
static	ANTLR3_BITWORD FOLLOW_index_name_in_create_index_tail2673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_index_name_in_create_index_tail2673	= { FOLLOW_index_name_in_create_index_tail2673_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_create_index_tail2675  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_create_index_tail2675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_type_in_create_index_tail2675	= { FOLLOW_index_type_in_create_index_tail2675_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_target_in_create_index_tail2678  */
static	ANTLR3_BITWORD FOLLOW_create_index_target_in_create_index_tail2678_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_target_in_create_index_tail2678	= { FOLLOW_create_index_target_in_create_index_tail2678_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_normal_index_option_in_create_index_tail2680  */
static	ANTLR3_BITWORD FOLLOW_normal_index_option_in_create_index_tail2680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000200000000000), 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(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_normal_index_option_in_create_index_tail2680	= { FOLLOW_normal_index_option_in_create_index_tail2680_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_create_index_tail2683  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_create_index_tail2683_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_create_index_tail2683	= { FOLLOW_index_lock_algorithm_in_create_index_tail2683_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULLTEXT_SYMBOL_in_create_index_tail2690  */
static	ANTLR3_BITWORD FOLLOW_FULLTEXT_SYMBOL_in_create_index_tail2690_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_FULLTEXT_SYMBOL_in_create_index_tail2690	= { FOLLOW_FULLTEXT_SYMBOL_in_create_index_tail2690_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_index_tail2692  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_index_tail2692_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_index_tail2692	= { FOLLOW_INDEX_SYMBOL_in_create_index_tail2692_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_name_in_create_index_tail2694  */
static	ANTLR3_BITWORD FOLLOW_index_name_in_create_index_tail2694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_name_in_create_index_tail2694	= { FOLLOW_index_name_in_create_index_tail2694_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_target_in_create_index_tail2696  */
static	ANTLR3_BITWORD FOLLOW_create_index_target_in_create_index_tail2696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000001), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_target_in_create_index_tail2696	= { FOLLOW_create_index_target_in_create_index_tail2696_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fulltext_index_option_in_create_index_tail2698  */
static	ANTLR3_BITWORD FOLLOW_fulltext_index_option_in_create_index_tail2698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000001), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_fulltext_index_option_in_create_index_tail2698	= { FOLLOW_fulltext_index_option_in_create_index_tail2698_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_create_index_tail2701  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_create_index_tail2701_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_create_index_tail2701	= { FOLLOW_index_lock_algorithm_in_create_index_tail2701_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SPATIAL_SYMBOL_in_create_index_tail2708  */
static	ANTLR3_BITWORD FOLLOW_SPATIAL_SYMBOL_in_create_index_tail2708_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SPATIAL_SYMBOL_in_create_index_tail2708	= { FOLLOW_SPATIAL_SYMBOL_in_create_index_tail2708_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_index_tail2710  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_index_tail2710_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_index_tail2710	= { FOLLOW_INDEX_SYMBOL_in_create_index_tail2710_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_name_in_create_index_tail2712  */
static	ANTLR3_BITWORD FOLLOW_index_name_in_create_index_tail2712_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_name_in_create_index_tail2712	= { FOLLOW_index_name_in_create_index_tail2712_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_index_target_in_create_index_tail2714  */
static	ANTLR3_BITWORD FOLLOW_create_index_target_in_create_index_tail2714_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000001), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_create_index_target_in_create_index_tail2714	= { FOLLOW_create_index_target_in_create_index_tail2714_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_spatial_index_option_in_create_index_tail2716  */
static	ANTLR3_BITWORD FOLLOW_spatial_index_option_in_create_index_tail2716_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000001), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_spatial_index_option_in_create_index_tail2716	= { FOLLOW_spatial_index_option_in_create_index_tail2716_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_create_index_tail2719  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_create_index_tail2719_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_create_index_tail2719	= { FOLLOW_index_lock_algorithm_in_create_index_tail2719_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_index_target2732  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_index_target2732_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_index_target2732	= { FOLLOW_ON_SYMBOL_in_create_index_target2732_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_create_index_target2735  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_create_index_target2735_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_table_ref_in_create_index_target2735	= { FOLLOW_table_ref_in_create_index_target2735_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_create_index_target2737  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_create_index_target2737_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_create_index_target2737	= { FOLLOW_index_columns_in_create_index_target2737_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_logfile_group2747  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_logfile_group2747_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_logfile_group2747	= { FOLLOW_CREATE_SYMBOL_in_create_logfile_group2747_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_logfile_group_tail_in_create_logfile_group2750  */
static	ANTLR3_BITWORD FOLLOW_create_logfile_group_tail_in_create_logfile_group2750_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_logfile_group_tail_in_create_logfile_group2750	= { FOLLOW_create_logfile_group_tail_in_create_logfile_group2750_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2752  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2752_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2752	= { FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2752_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_logfile_group2755  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_logfile_group2755_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_logfile_group2755	= { FOLLOW_EOF_in_create_logfile_group2755_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group_tail2764  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group_tail2764_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOGFILE_SYMBOL_in_create_logfile_group_tail2764	= { FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group_tail2764_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2766  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2766_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2766	= { FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2766_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_name_in_create_logfile_group_tail2768  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_name_in_create_logfile_group_tail2768_bits[]	= { 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_logfile_group_name_in_create_logfile_group_tail2768	= { FOLLOW_logfile_group_name_in_create_logfile_group_tail2768_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2770  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2770_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2770	= { FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2770_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_logfile_group_tail2772  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_logfile_group_tail2772_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_logfile_group_tail2772	= { FOLLOW_set_in_create_logfile_group_tail2772_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_logfile_group_tail2780  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_logfile_group_tail2780_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000300000000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0002004000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_create_logfile_group_tail2780	= { FOLLOW_string_literal_in_create_logfile_group_tail2780_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_options_in_create_logfile_group_tail2784  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_options_in_create_logfile_group_tail2784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_logfile_group_options_in_create_logfile_group_tail2784	= { FOLLOW_logfile_group_options_in_create_logfile_group_tail2784_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_option_in_logfile_group_options2795  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_option_in_logfile_group_options2795_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000300000000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0002004000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logfile_group_option_in_logfile_group_options2795	= { FOLLOW_logfile_group_option_in_logfile_group_options2795_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_logfile_group_options2798  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_logfile_group_options2798_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000300000000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0002004000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_logfile_group_options2798	= { FOLLOW_COMMA_SYMBOL_in_logfile_group_options2798_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_option_in_logfile_group_options2801  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_option_in_logfile_group_options2801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000002), ANTLR3_UINT64_LIT(0x0000300000000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0002004000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logfile_group_option_in_logfile_group_options2801	= { FOLLOW_logfile_group_option_in_logfile_group_options2801_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2831  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2831_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2831	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2831_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2833  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2833_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2833	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2833_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_logfile_group_option2836  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_logfile_group_option2836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_logfile_group_option2836	= { FOLLOW_size_number_in_logfile_group_option2836_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logfile_group_option2841  */
static	ANTLR3_BITWORD FOLLOW_set_in_logfile_group_option2841_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logfile_group_option2841	= { FOLLOW_set_in_logfile_group_option2841_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2849  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2849_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2849	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2849_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_logfile_group_option2852  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_logfile_group_option2852_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_logfile_group_option2852	= { FOLLOW_size_number_in_logfile_group_option2852_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2857  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2857	= { FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2857_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2859  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2859_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2859	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2859_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_logfile_group_option2862  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_logfile_group_option2862_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_logfile_group_option2862	= { FOLLOW_real_ulong_number_in_logfile_group_option2862_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logfile_group_option2867  */
static	ANTLR3_BITWORD FOLLOW_set_in_logfile_group_option2867_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logfile_group_option2867	= { FOLLOW_set_in_logfile_group_option2867_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2878  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2878_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2878	= { FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2878_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2880  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2880	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2880_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_logfile_group_option2883  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_logfile_group_option2883_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_logfile_group_option2883	= { FOLLOW_string_literal_in_logfile_group_option2883_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2888  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2888	= { FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2888_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2891  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2891_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2891	= { FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2891_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2893  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2893_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2893	= { FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2893_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_logfile_group_option2896  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_logfile_group_option2896_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_logfile_group_option2896	= { FOLLOW_engine_ref_in_logfile_group_option2896_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_server2907  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_server2907_bits[]	= { ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_server2907	= { FOLLOW_CREATE_SYMBOL_in_create_server2907_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_server_tail_in_create_server2910  */
static	ANTLR3_BITWORD FOLLOW_create_server_tail_in_create_server2910_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_server_tail_in_create_server2910	= { FOLLOW_create_server_tail_in_create_server2910_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_server2912  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_server2912_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_server2912	= { FOLLOW_SEMICOLON_SYMBOL_in_create_server2912_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_server2915  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_server2915_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_server2915	= { FOLLOW_EOF_in_create_server2915_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_create_server_tail2924  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_create_server_tail2924_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_create_server_tail2924	= { FOLLOW_SERVER_SYMBOL_in_create_server_tail2924_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_name_in_create_server_tail2926  */
static	ANTLR3_BITWORD FOLLOW_server_name_in_create_server_tail2926_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_server_name_in_create_server_tail2926	= { FOLLOW_server_name_in_create_server_tail2926_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2930  */
static	ANTLR3_BITWORD FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2930_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2930	= { FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2930_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_create_server_tail2932  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_create_server_tail2932_bits[]	= { ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_create_server_tail2932	= { FOLLOW_DATA_SYMBOL_in_create_server_tail2932_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2934  */
static	ANTLR3_BITWORD FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2934_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2934	= { FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2934_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_create_server_tail2936  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_create_server_tail2936_bits[]	= { ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_create_server_tail2936	= { FOLLOW_text_or_identifier_in_create_server_tail2936_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_options_in_create_server_tail2938  */
static	ANTLR3_BITWORD FOLLOW_server_options_in_create_server_tail2938_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_options_in_create_server_tail2938	= { FOLLOW_server_options_in_create_server_tail2938_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIONS_SYMBOL_in_server_options2947  */
static	ANTLR3_BITWORD FOLLOW_OPTIONS_SYMBOL_in_server_options2947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_OPTIONS_SYMBOL_in_server_options2947	= { FOLLOW_OPTIONS_SYMBOL_in_server_options2947_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_server_options2950  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_server_options2950_bits[]	= { ANTLR3_UINT64_LIT(0x0002001208000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_server_options2950	= { FOLLOW_OPEN_PAR_SYMBOL_in_server_options2950_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_option_in_server_options2952  */
static	ANTLR3_BITWORD FOLLOW_server_option_in_server_options2952_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_server_option_in_server_options2952	= { FOLLOW_server_option_in_server_options2952_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_server_options2955  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_server_options2955_bits[]	= { ANTLR3_UINT64_LIT(0x0002001208000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_server_options2955	= { FOLLOW_COMMA_SYMBOL_in_server_options2955_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_option_in_server_options2957  */
static	ANTLR3_BITWORD FOLLOW_server_option_in_server_options2957_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_server_option_in_server_options2957	= { FOLLOW_server_option_in_server_options2957_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_server_options2961  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_server_options2961_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_server_options2961	= { FOLLOW_CLOSE_PAR_SYMBOL_in_server_options2961_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOST_SYMBOL_in_server_option2971  */
static	ANTLR3_BITWORD FOLLOW_HOST_SYMBOL_in_server_option2971_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOST_SYMBOL_in_server_option2971	= { FOLLOW_HOST_SYMBOL_in_server_option2971_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option2973  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option2973_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option2973	= { FOLLOW_string_literal_in_server_option2973_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_server_option2978  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_server_option2978_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_server_option2978	= { FOLLOW_DATABASE_SYMBOL_in_server_option2978_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option2980  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option2980_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option2980	= { FOLLOW_string_literal_in_server_option2980_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_server_option2985  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_server_option2985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_server_option2985	= { FOLLOW_USER_SYMBOL_in_server_option2985_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option2987  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option2987_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option2987	= { FOLLOW_string_literal_in_server_option2987_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_server_option2992  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_server_option2992_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_server_option2992	= { FOLLOW_PASSWORD_SYMBOL_in_server_option2992_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option2994  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option2994_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option2994	= { FOLLOW_string_literal_in_server_option2994_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOCKET_SYMBOL_in_server_option2999  */
static	ANTLR3_BITWORD FOLLOW_SOCKET_SYMBOL_in_server_option2999_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SOCKET_SYMBOL_in_server_option2999	= { FOLLOW_SOCKET_SYMBOL_in_server_option2999_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option3001  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option3001_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option3001	= { FOLLOW_string_literal_in_server_option3001_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OWNER_SYMBOL_in_server_option3006  */
static	ANTLR3_BITWORD FOLLOW_OWNER_SYMBOL_in_server_option3006_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OWNER_SYMBOL_in_server_option3006	= { FOLLOW_OWNER_SYMBOL_in_server_option3006_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_server_option3008  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_server_option3008_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_server_option3008	= { FOLLOW_string_literal_in_server_option3008_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PORT_SYMBOL_in_server_option3013  */
static	ANTLR3_BITWORD FOLLOW_PORT_SYMBOL_in_server_option3013_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PORT_SYMBOL_in_server_option3013	= { FOLLOW_PORT_SYMBOL_in_server_option3013_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_server_option3015  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_server_option3015_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_server_option3015	= { FOLLOW_ulong_number_in_server_option3015_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_table3025  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_table3025_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_table3025	= { FOLLOW_CREATE_SYMBOL_in_create_table3025_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_tail_in_create_table3028  */
static	ANTLR3_BITWORD FOLLOW_create_table_tail_in_create_table3028_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_table_tail_in_create_table3028	= { FOLLOW_create_table_tail_in_create_table3028_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_table3030  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_table3030_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_table3030	= { FOLLOW_SEMICOLON_SYMBOL_in_create_table3030_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_table3033  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_table3033_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_table3033	= { FOLLOW_EOF_in_create_table3033_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_create_table_tail3042  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_create_table_tail3042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_TEMPORARY_SYMBOL_in_create_table_tail3042	= { FOLLOW_TEMPORARY_SYMBOL_in_create_table_tail3042_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_create_table_tail3045  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_create_table_tail3045_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_create_table_tail3045	= { FOLLOW_TABLE_SYMBOL_in_create_table_tail3045_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_table_tail3047  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_table_tail3047_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_table_tail3047	= { FOLLOW_if_not_exists_in_create_table_tail3047_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_in_create_table_tail3050  */
static	ANTLR3_BITWORD FOLLOW_table_name_in_create_table_tail3050_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800005800), ANTLR3_UINT64_LIT(0x0020400A000000A0), ANTLR3_UINT64_LIT(0x0100280000000002), ANTLR3_UINT64_LIT(0x0420000008000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x00000002003000B8), ANTLR3_UINT64_LIT(0x0000002200000008), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x4000000000880000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_in_create_table_tail3050	= { FOLLOW_table_name_in_create_table_tail3050_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3059  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3059_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0001000400000100), ANTLR3_UINT64_LIT(0x8800000024000000), ANTLR3_UINT64_LIT(0x0010000000820000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3059	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3059_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_field_list_in_create_table_tail3072  */
static	ANTLR3_BITWORD FOLLOW_create_field_list_in_create_table_tail3072_bits[]	= { ANTLR3_UINT64_LIT(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_create_field_list_in_create_table_tail3072	= { FOLLOW_create_field_list_in_create_table_tail3072_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3074  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3074_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800005802), ANTLR3_UINT64_LIT(0x0020400A000000A0), ANTLR3_UINT64_LIT(0x0100280000000002), ANTLR3_UINT64_LIT(0x0420000008000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x00000002003000B8), ANTLR3_UINT64_LIT(0x0000002200000008), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000880000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3074	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3074_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_options_in_create_table_tail3076  */
static	ANTLR3_BITWORD FOLLOW_create_table_options_in_create_table_tail3076_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_options_in_create_table_tail3076	= { FOLLOW_create_table_options_in_create_table_tail3076_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table_tail3079  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table_tail3079_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(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_create_table_tail3079	= { FOLLOW_partitioning_in_create_table_tail3079_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_creation_source_in_create_table_tail3082  */
static	ANTLR3_BITWORD FOLLOW_table_creation_source_in_create_table_tail3082_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_creation_source_in_create_table_tail3082	= { FOLLOW_table_creation_source_in_create_table_tail3082_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table_tail3092  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table_tail3092_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_partitioning_in_create_table_tail3092	= { FOLLOW_partitioning_in_create_table_tail3092_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_create_table_tail3094  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_create_table_tail3094_bits[]	= { ANTLR3_UINT64_LIT(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_create_select_in_create_table_tail3094	= { FOLLOW_create_select_in_create_table_tail3094_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3096  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3096_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3096	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3096_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_create_table_tail3098  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_create_table_tail3098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_create_table_tail3098	= { FOLLOW_union_clause_in_create_table_tail3098_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_options_in_create_table_tail3112  */
static	ANTLR3_BITWORD FOLLOW_create_table_options_in_create_table_tail3112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_options_in_create_table_tail3112	= { FOLLOW_create_table_options_in_create_table_tail3112_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partitioning_in_create_table_tail3115  */
static	ANTLR3_BITWORD FOLLOW_partitioning_in_create_table_tail3115_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001) };
static  ANTLR3_BITSET_LIST FOLLOW_partitioning_in_create_table_tail3115	= { FOLLOW_partitioning_in_create_table_tail3115_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_creation_source_in_create_table_tail3118  */
static	ANTLR3_BITWORD FOLLOW_table_creation_source_in_create_table_tail3118_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_creation_source_in_create_table_tail3118	= { FOLLOW_table_creation_source_in_create_table_tail3118_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_create_table_tail3125  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_create_table_tail3125_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_create_table_tail3125	= { FOLLOW_LIKE_SYMBOL_in_create_table_tail3125_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_create_table_tail3127  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_create_table_tail3127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_create_table_tail3127	= { FOLLOW_table_ref_in_create_table_tail3127_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3134  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3134_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_create_table_tail3134	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3134_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_create_table_tail3136  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_create_table_tail3136_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_create_table_tail3136	= { FOLLOW_LIKE_SYMBOL_in_create_table_tail3136_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_create_table_tail3138  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_create_table_tail3138_bits[]	= { ANTLR3_UINT64_LIT(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_table_ref_in_create_table_tail3138	= { FOLLOW_table_ref_in_create_table_tail3138_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3140  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3140	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3140_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_item_in_create_field_list3153  */
static	ANTLR3_BITWORD FOLLOW_create_item_in_create_field_list3153_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_item_in_create_field_list3153	= { FOLLOW_create_item_in_create_field_list3153_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_field_list3156  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_field_list3156_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0001000400000100), ANTLR3_UINT64_LIT(0x8800000024000000), ANTLR3_UINT64_LIT(0x0010000000820000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_field_list3156	= { FOLLOW_COMMA_SYMBOL_in_create_field_list3156_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_item_in_create_field_list3158  */
static	ANTLR3_BITWORD FOLLOW_create_item_in_create_field_list3158_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_item_in_create_field_list3158	= { FOLLOW_create_item_in_create_field_list3158_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_field_list_item_in_create_item3169  */
static	ANTLR3_BITWORD FOLLOW_create_field_list_item_in_create_item3169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_field_list_item_in_create_item3169	= { FOLLOW_create_field_list_item_in_create_item3169_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_definition_in_create_field_list_item3186  */
static	ANTLR3_BITWORD FOLLOW_column_definition_in_create_field_list_item3186_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_definition_in_create_field_list_item3186	= { FOLLOW_column_definition_in_create_field_list_item3186_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_def_in_create_field_list_item3191  */
static	ANTLR3_BITWORD FOLLOW_key_def_in_create_field_list_item3191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_key_def_in_create_field_list_item3191	= { FOLLOW_key_def_in_create_field_list_item3191_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_table_creation_source3210  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_table_creation_source3210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_table_creation_source3210	= { FOLLOW_AS_SYMBOL_in_table_creation_source3210_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_table_creation_source3218  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_table_creation_source3218_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_select_in_table_creation_source3218	= { FOLLOW_create_select_in_table_creation_source3218_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_table_creation_source3220  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_table_creation_source3220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_table_creation_source3220	= { FOLLOW_union_clause_in_table_creation_source3220_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source3227  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source3227_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_table_creation_source3227	= { FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source3227_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_table_creation_source3229  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_table_creation_source3229_bits[]	= { ANTLR3_UINT64_LIT(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_create_select_in_table_creation_source3229	= { FOLLOW_create_select_in_table_creation_source3229_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3231  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3231_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3231	= { FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3231_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_or_order_by_or_limit_in_table_creation_source3233  */
static	ANTLR3_BITWORD FOLLOW_union_or_order_by_or_limit_in_table_creation_source3233_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_or_order_by_or_limit_in_table_creation_source3233	= { FOLLOW_union_or_order_by_or_limit_in_table_creation_source3233_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_create_select3247  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_create_select3247_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_create_select3247	= { FOLLOW_SELECT_SYMBOL_in_create_select3247_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_option_in_create_select3263  */
static	ANTLR3_BITWORD FOLLOW_select_option_in_create_select3263_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_select_option_in_create_select3263	= { FOLLOW_select_option_in_create_select3263_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_create_select3267  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_create_select3267_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x5000000000000000), ANTLR3_UINT64_LIT(0x8000000000000600), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_create_select3267	= { FOLLOW_select_item_list_in_create_select3267_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_expression_in_create_select3269  */
static	ANTLR3_BITWORD FOLLOW_table_expression_in_create_select3269_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_expression_in_create_select3269	= { FOLLOW_table_expression_in_create_select3269_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_tablespace3279  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_tablespace3279_bits[]	= { 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_CREATE_SYMBOL_in_create_tablespace3279	= { FOLLOW_CREATE_SYMBOL_in_create_tablespace3279_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_tablespace_tail_in_create_tablespace3282  */
static	ANTLR3_BITWORD FOLLOW_create_tablespace_tail_in_create_tablespace3282_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_tablespace_tail_in_create_tablespace3282	= { FOLLOW_create_tablespace_tail_in_create_tablespace3282_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3284  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3284_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3284	= { FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3284_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_tablespace3287  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_tablespace3287_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_tablespace3287	= { FOLLOW_EOF_in_create_tablespace3287_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3296  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3296_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3296	= { FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3296_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_name_in_create_tablespace_tail3298  */
static	ANTLR3_BITWORD FOLLOW_tablespace_name_in_create_tablespace_tail3298_bits[]	= { 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_tablespace_name_in_create_tablespace_tail3298	= { FOLLOW_tablespace_name_in_create_tablespace_tail3298_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3300  */
static	ANTLR3_BITWORD FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3300	= { FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3300_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3302  */
static	ANTLR3_BITWORD FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3302	= { FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3302_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_create_tablespace_tail3304  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_create_tablespace_tail3304_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000081002), ANTLR3_UINT64_LIT(0x0000300000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(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_string_literal_in_create_tablespace_tail3304	= { FOLLOW_string_literal_in_create_tablespace_tail3304_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_create_tablespace_tail3309  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_create_tablespace_tail3309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_create_tablespace_tail3309	= { FOLLOW_USE_SYMBOL_in_create_tablespace_tail3309_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_create_tablespace_tail3311  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_create_tablespace_tail3311_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOGFILE_SYMBOL_in_create_tablespace_tail3311	= { FOLLOW_LOGFILE_SYMBOL_in_create_tablespace_tail3311_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3313  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3313_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3313	= { FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3313_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_ref_in_create_tablespace_tail3315  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_ref_in_create_tablespace_tail3315_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000081002), ANTLR3_UINT64_LIT(0x0000300000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_logfile_group_ref_in_create_tablespace_tail3315	= { FOLLOW_logfile_group_ref_in_create_tablespace_tail3315_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_options_in_create_tablespace_tail3319  */
static	ANTLR3_BITWORD FOLLOW_tablespace_options_in_create_tablespace_tail3319_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_options_in_create_tablespace_tail3319	= { FOLLOW_tablespace_options_in_create_tablespace_tail3319_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_option_in_tablespace_options3330  */
static	ANTLR3_BITWORD FOLLOW_tablespace_option_in_tablespace_options3330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000081002), ANTLR3_UINT64_LIT(0x0000300000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_option_in_tablespace_options3330	= { FOLLOW_tablespace_option_in_tablespace_options3330_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_tablespace_options3333  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_tablespace_options3333_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000081002), ANTLR3_UINT64_LIT(0x0000300000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_tablespace_options3333	= { FOLLOW_COMMA_SYMBOL_in_tablespace_options3333_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_option_in_tablespace_options3336  */
static	ANTLR3_BITWORD FOLLOW_tablespace_option_in_tablespace_options3336_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000002000081002), ANTLR3_UINT64_LIT(0x0000300000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_option_in_tablespace_options3336	= { FOLLOW_tablespace_option_in_tablespace_options3336_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3366  */
static	ANTLR3_BITWORD FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3366_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3366	= { FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3366_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3368  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3368_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3368	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3368_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3371  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3371	= { FOLLOW_size_number_in_tablespace_option3371_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3376  */
static	ANTLR3_BITWORD FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3376_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3376	= { FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3376_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3378  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3378_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3378	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3378_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3381  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3381_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3381	= { FOLLOW_size_number_in_tablespace_option3381_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3386  */
static	ANTLR3_BITWORD FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3386_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3386	= { FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3386_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3388  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3388_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3388	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3388_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3391  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3391_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3391	= { FOLLOW_size_number_in_tablespace_option3391_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3396  */
static	ANTLR3_BITWORD FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3396_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3396	= { FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3396_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3398  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3398_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3398	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3398_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3401  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3401_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3401	= { FOLLOW_size_number_in_tablespace_option3401_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3406  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3406_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3406	= { FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3406_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3408  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3408_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3408	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3408_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_tablespace_option3411  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_tablespace_option3411_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_tablespace_option3411	= { FOLLOW_real_ulong_number_in_tablespace_option3411_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_tablespace_option3416  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_tablespace_option3416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_tablespace_option3416	= { FOLLOW_STORAGE_SYMBOL_in_tablespace_option3416_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_tablespace_option3419  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_tablespace_option3419_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_tablespace_option3419	= { FOLLOW_ENGINE_SYMBOL_in_tablespace_option3419_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3421  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3421_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3421	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3421_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_tablespace_option3424  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_tablespace_option3424_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_tablespace_option3424	= { FOLLOW_engine_ref_in_tablespace_option3424_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_tablespace_option3429  */
static	ANTLR3_BITWORD FOLLOW_set_in_tablespace_option3429_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_tablespace_option3429	= { FOLLOW_set_in_tablespace_option3429_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_tablespace_option3440  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_tablespace_option3440_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_tablespace_option3440	= { FOLLOW_COMMENT_SYMBOL_in_tablespace_option3440_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3442  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3442_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3442	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3442_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_tablespace_option3445  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_tablespace_option3445_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_tablespace_option3445	= { FOLLOW_string_literal_in_tablespace_option3445_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3452  */
static	ANTLR3_BITWORD FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3452_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3452	= { FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3452_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_tablespace_option3454  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_tablespace_option3454_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_tablespace_option3454	= { FOLLOW_EQUAL_OPERATOR_in_tablespace_option3454_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_size_number_in_tablespace_option3457  */
static	ANTLR3_BITWORD FOLLOW_size_number_in_tablespace_option3457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_size_number_in_tablespace_option3457	= { FOLLOW_size_number_in_tablespace_option3457_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_with_definer_in_create_trigger3467  */
static	ANTLR3_BITWORD FOLLOW_create_with_definer_in_create_trigger3467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_with_definer_in_create_trigger3467	= { FOLLOW_create_with_definer_in_create_trigger3467_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_trigger_tail_in_create_trigger3469  */
static	ANTLR3_BITWORD FOLLOW_create_trigger_tail_in_create_trigger3469_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_trigger_tail_in_create_trigger3469	= { FOLLOW_create_trigger_tail_in_create_trigger3469_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3471  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3471_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3471	= { FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3471_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_trigger3474  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_trigger3474_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_trigger3474	= { FOLLOW_EOF_in_create_trigger3474_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3483  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3483_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3483	= { FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3483_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trigger_name_in_create_trigger_tail3485  */
static	ANTLR3_BITWORD FOLLOW_trigger_name_in_create_trigger_tail3485_bits[]	= { 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(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_trigger_name_in_create_trigger_tail3485	= { FOLLOW_trigger_name_in_create_trigger_tail3485_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_trigger_tail3487  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_trigger_tail3487_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_trigger_tail3487	= { FOLLOW_set_in_create_trigger_tail3487_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_trigger_tail3495  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_trigger_tail3495_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_create_trigger_tail3495	= { FOLLOW_set_in_create_trigger_tail3495_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_create_trigger_tail3509  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_create_trigger_tail3509_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_create_trigger_tail3509	= { FOLLOW_ON_SYMBOL_in_create_trigger_tail3509_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_create_trigger_tail3511  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_create_trigger_tail3511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_in_create_trigger_tail3511	= { FOLLOW_table_ref_in_create_trigger_tail3511_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_create_trigger_tail3513  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_create_trigger_tail3513_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_FOR_SYMBOL_in_create_trigger_tail3513	= { FOLLOW_FOR_SYMBOL_in_create_trigger_tail3513_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EACH_SYMBOL_in_create_trigger_tail3515  */
static	ANTLR3_BITWORD FOLLOW_EACH_SYMBOL_in_create_trigger_tail3515_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_EACH_SYMBOL_in_create_trigger_tail3515	= { FOLLOW_EACH_SYMBOL_in_create_trigger_tail3515_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_SYMBOL_in_create_trigger_tail3517  */
static	ANTLR3_BITWORD FOLLOW_ROW_SYMBOL_in_create_trigger_tail3517_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F689676B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_ROW_SYMBOL_in_create_trigger_tail3517	= { FOLLOW_ROW_SYMBOL_in_create_trigger_tail3517_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3519  */
static	ANTLR3_BITWORD FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3519_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3519	= { FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3519_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_create_trigger_tail3522  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_create_trigger_tail3522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_in_create_trigger_tail3522	= { FOLLOW_compound_statement_in_create_trigger_tail3522_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_trigger_follows_precedes_clause3533  */
static	ANTLR3_BITWORD FOLLOW_set_in_trigger_follows_precedes_clause3533_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_trigger_follows_precedes_clause3533	= { FOLLOW_set_in_trigger_follows_precedes_clause3533_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3541  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3541_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3541	= { FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3541_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_view3553  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_view3553_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_create_view3553	= { FOLLOW_CREATE_SYMBOL_in_create_view3553_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OR_SYMBOL_in_create_view3557  */
static	ANTLR3_BITWORD FOLLOW_OR_SYMBOL_in_create_view3557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OR_SYMBOL_in_create_view3557	= { FOLLOW_OR_SYMBOL_in_create_view3557_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_create_view3559  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_create_view3559_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), 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_REPLACE_SYMBOL_in_create_view3559	= { FOLLOW_REPLACE_SYMBOL_in_create_view3559_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_algorithm_in_create_view3563  */
static	ANTLR3_BITWORD FOLLOW_view_algorithm_in_create_view3563_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), 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_view_algorithm_in_create_view3563	= { FOLLOW_view_algorithm_in_create_view3563_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_definer_clause_in_create_view3567  */
static	ANTLR3_BITWORD FOLLOW_definer_clause_in_create_view3567_bits[]	= { 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(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_definer_clause_in_create_view3567	= { FOLLOW_definer_clause_in_create_view3567_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_view_tail_in_create_view3570  */
static	ANTLR3_BITWORD FOLLOW_create_view_tail_in_create_view3570_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_create_view_tail_in_create_view3570	= { FOLLOW_create_view_tail_in_create_view3570_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_create_view3572  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_create_view3572_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_create_view3572	= { FOLLOW_SEMICOLON_SYMBOL_in_create_view3572_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_create_view3575  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_create_view3575_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_create_view3575	= { FOLLOW_EOF_in_create_view3575_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_SYMBOL_in_create_view_tail3585  */
static	ANTLR3_BITWORD FOLLOW_SQL_SYMBOL_in_create_view_tail3585_bits[]	= { ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_SYMBOL_in_create_view_tail3585	= { FOLLOW_SQL_SYMBOL_in_create_view_tail3585_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECURITY_SYMBOL_in_create_view_tail3587  */
static	ANTLR3_BITWORD FOLLOW_SECURITY_SYMBOL_in_create_view_tail3587_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SECURITY_SYMBOL_in_create_view_tail3587	= { FOLLOW_SECURITY_SYMBOL_in_create_view_tail3587_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_view_tail3589  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_view_tail3589_bits[]	= { 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_set_in_create_view_tail3589	= { FOLLOW_set_in_create_view_tail3589_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_create_view_tail3601  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_create_view_tail3601_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_create_view_tail3601	= { FOLLOW_VIEW_SYMBOL_in_create_view_tail3601_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_name_in_create_view_tail3603  */
static	ANTLR3_BITWORD FOLLOW_view_name_in_create_view_tail3603_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_view_name_in_create_view_tail3603	= { FOLLOW_view_name_in_create_view_tail3603_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_create_view_tail3605  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_create_view_tail3605_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_list_with_parentheses_in_create_view_tail3605	= { FOLLOW_identifier_list_with_parentheses_in_create_view_tail3605_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_create_view_tail3610  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_create_view_tail3610_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_create_view_tail3610	= { FOLLOW_AS_SYMBOL_in_create_view_tail3610_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_create_view_tail3612  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_create_view_tail3612_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_create_view_tail3612	= { FOLLOW_select_statement_in_create_view_tail3612_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_create_view_tail3617  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_create_view_tail3617_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_create_view_tail3617	= { FOLLOW_WITH_SYMBOL_in_create_view_tail3617_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_create_view_tail3628  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_create_view_tail3628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECK_SYMBOL_in_create_view_tail3628	= { FOLLOW_CHECK_SYMBOL_in_create_view_tail3628_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_create_view_tail3630  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_create_view_tail3630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_create_view_tail3630	= { FOLLOW_OPTION_SYMBOL_in_create_view_tail3630_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm3641  */
static	ANTLR3_BITWORD FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm3641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OR_SYMBOL_in_view_replace_or_algorithm3641	= { FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm3641_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3643  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3643	= { FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3643_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_algorithm_in_view_replace_or_algorithm3645  */
static	ANTLR3_BITWORD FOLLOW_view_algorithm_in_view_replace_or_algorithm3645_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_view_algorithm_in_view_replace_or_algorithm3645	= { FOLLOW_view_algorithm_in_view_replace_or_algorithm3645_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_algorithm_in_view_replace_or_algorithm3651  */
static	ANTLR3_BITWORD FOLLOW_view_algorithm_in_view_replace_or_algorithm3651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_view_algorithm_in_view_replace_or_algorithm3651	= { FOLLOW_view_algorithm_in_view_replace_or_algorithm3651_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm3660  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm3660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALGORITHM_SYMBOL_in_view_algorithm3660	= { FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm3660_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_view_algorithm3662  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_view_algorithm3662_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_view_algorithm3662	= { FOLLOW_EQUAL_OPERATOR_in_view_algorithm3662_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_view_algorithm3664  */
static	ANTLR3_BITWORD FOLLOW_set_in_view_algorithm3664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_view_algorithm3664	= { FOLLOW_set_in_view_algorithm3664_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_drop_statement3685  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_drop_statement3685_bits[]	= { ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400800680000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x1800000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0040100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_drop_statement3685	= { FOLLOW_DROP_SYMBOL_in_drop_statement3685_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_drop_statement3693  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_drop_statement3693_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_drop_statement3693	= { FOLLOW_DATABASE_SYMBOL_in_drop_statement3693_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3695  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3695_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3695	= { FOLLOW_if_exists_in_drop_statement3695_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_drop_statement3698  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_drop_statement3698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_drop_statement3698	= { FOLLOW_schema_ref_in_drop_statement3698_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_drop_statement3706  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_drop_statement3706_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_drop_statement3706	= { FOLLOW_EVENT_SYMBOL_in_drop_statement3706_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3708  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3708_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3708	= { FOLLOW_if_exists_in_drop_statement3708_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_event_ref_in_drop_statement3711  */
static	ANTLR3_BITWORD FOLLOW_event_ref_in_drop_statement3711_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_event_ref_in_drop_statement3711	= { FOLLOW_event_ref_in_drop_statement3711_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_drop_statement3726  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_drop_statement3726_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_drop_statement3726	= { FOLLOW_FUNCTION_SYMBOL_in_drop_statement3726_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3728  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3728_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3728	= { FOLLOW_if_exists_in_drop_statement3728_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_ref_in_drop_statement3731  */
static	ANTLR3_BITWORD FOLLOW_function_ref_in_drop_statement3731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_ref_in_drop_statement3731	= { FOLLOW_function_ref_in_drop_statement3731_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3740  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3740_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3740	= { FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3740_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3742  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3742_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3742	= { FOLLOW_if_exists_in_drop_statement3742_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_drop_statement3745  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_drop_statement3745_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_drop_statement3745	= { FOLLOW_procedure_ref_in_drop_statement3745_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_online_option_in_drop_statement3756  */
static	ANTLR3_BITWORD FOLLOW_online_option_in_drop_statement3756_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_online_option_in_drop_statement3756	= { FOLLOW_online_option_in_drop_statement3756_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_drop_statement3759  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_drop_statement3759_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_drop_statement3759	= { FOLLOW_INDEX_SYMBOL_in_drop_statement3759_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_ref_in_drop_statement3761  */
static	ANTLR3_BITWORD FOLLOW_index_ref_in_drop_statement3761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_index_ref_in_drop_statement3761	= { FOLLOW_index_ref_in_drop_statement3761_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_drop_statement3763  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_drop_statement3763_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_drop_statement3763	= { FOLLOW_ON_SYMBOL_in_drop_statement3763_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_drop_statement3765  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_drop_statement3765_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_in_drop_statement3765	= { FOLLOW_table_ref_in_drop_statement3765_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_lock_algorithm_in_drop_statement3767  */
static	ANTLR3_BITWORD FOLLOW_index_lock_algorithm_in_drop_statement3767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_lock_algorithm_in_drop_statement3767	= { FOLLOW_index_lock_algorithm_in_drop_statement3767_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGFILE_SYMBOL_in_drop_statement3774  */
static	ANTLR3_BITWORD FOLLOW_LOGFILE_SYMBOL_in_drop_statement3774_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOGFILE_SYMBOL_in_drop_statement3774	= { FOLLOW_LOGFILE_SYMBOL_in_drop_statement3774_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_drop_statement3776  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_drop_statement3776_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_SYMBOL_in_drop_statement3776	= { FOLLOW_GROUP_SYMBOL_in_drop_statement3776_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logfile_group_ref_in_drop_statement3778  */
static	ANTLR3_BITWORD FOLLOW_logfile_group_ref_in_drop_statement3778_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_logfile_group_ref_in_drop_statement3778	= { FOLLOW_logfile_group_ref_in_drop_statement3778_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_logfile_group_option_in_drop_statement3781  */
static	ANTLR3_BITWORD FOLLOW_drop_logfile_group_option_in_drop_statement3781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_logfile_group_option_in_drop_statement3781	= { FOLLOW_drop_logfile_group_option_in_drop_statement3781_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_drop_statement3784  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_drop_statement3784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_drop_statement3784	= { FOLLOW_COMMA_SYMBOL_in_drop_statement3784_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_logfile_group_option_in_drop_statement3787  */
static	ANTLR3_BITWORD FOLLOW_drop_logfile_group_option_in_drop_statement3787_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_logfile_group_option_in_drop_statement3787	= { FOLLOW_drop_logfile_group_option_in_drop_statement3787_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERVER_SYMBOL_in_drop_statement3797  */
static	ANTLR3_BITWORD FOLLOW_SERVER_SYMBOL_in_drop_statement3797_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERVER_SYMBOL_in_drop_statement3797	= { FOLLOW_SERVER_SYMBOL_in_drop_statement3797_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3799  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3799_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3799	= { FOLLOW_if_exists_in_drop_statement3799_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_ref_in_drop_statement3802  */
static	ANTLR3_BITWORD FOLLOW_server_ref_in_drop_statement3802_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_ref_in_drop_statement3802	= { FOLLOW_server_ref_in_drop_statement3802_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3808  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3808_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3808	= { FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3808_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_drop_statement3811  */
static	ANTLR3_BITWORD FOLLOW_set_in_drop_statement3811_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_drop_statement3811	= { FOLLOW_set_in_drop_statement3811_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3819  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3819_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3819	= { FOLLOW_if_exists_in_drop_statement3819_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_drop_statement3822  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_drop_statement3822_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(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_drop_statement3822	= { FOLLOW_table_ref_list_in_drop_statement3822_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3837  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3837_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3837	= { FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3837_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_tablespace_ref_in_drop_statement3839  */
static	ANTLR3_BITWORD FOLLOW_tablespace_ref_in_drop_statement3839_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_tablespace_ref_in_drop_statement3839	= { FOLLOW_tablespace_ref_in_drop_statement3839_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_logfile_group_option_in_drop_statement3842  */
static	ANTLR3_BITWORD FOLLOW_drop_logfile_group_option_in_drop_statement3842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_logfile_group_option_in_drop_statement3842	= { FOLLOW_drop_logfile_group_option_in_drop_statement3842_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_drop_statement3845  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_drop_statement3845_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_drop_statement3845	= { FOLLOW_COMMA_SYMBOL_in_drop_statement3845_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_logfile_group_option_in_drop_statement3848  */
static	ANTLR3_BITWORD FOLLOW_drop_logfile_group_option_in_drop_statement3848_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000080), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_logfile_group_option_in_drop_statement3848	= { FOLLOW_drop_logfile_group_option_in_drop_statement3848_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_drop_statement3858  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_drop_statement3858_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_drop_statement3858	= { FOLLOW_TRIGGER_SYMBOL_in_drop_statement3858_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3860  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3860_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3860	= { FOLLOW_if_exists_in_drop_statement3860_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trigger_ref_in_drop_statement3863  */
static	ANTLR3_BITWORD FOLLOW_trigger_ref_in_drop_statement3863_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_trigger_ref_in_drop_statement3863	= { FOLLOW_trigger_ref_in_drop_statement3863_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_drop_statement3869  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_drop_statement3869_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_drop_statement3869	= { FOLLOW_VIEW_SYMBOL_in_drop_statement3869_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_statement3871  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_statement3871_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_statement3871	= { FOLLOW_if_exists_in_drop_statement3871_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_identifier_list_in_drop_statement3874  */
static	ANTLR3_BITWORD FOLLOW_view_identifier_list_in_drop_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(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_view_identifier_list_in_drop_statement3874	= { FOLLOW_view_identifier_list_in_drop_statement3874_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_drop_logfile_group_option3895  */
static	ANTLR3_BITWORD FOLLOW_set_in_drop_logfile_group_option3895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_drop_logfile_group_option3895	= { FOLLOW_set_in_drop_logfile_group_option3895_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3906  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3906	= { FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3906_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3909  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3909_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3909	= { FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3909_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3911  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3911_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3911	= { FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3911_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_drop_logfile_group_option3914  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_drop_logfile_group_option3914_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_drop_logfile_group_option3914	= { FOLLOW_engine_ref_in_drop_logfile_group_option3914_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_rename_table_statement3924  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_rename_table_statement3924_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RENAME_SYMBOL_in_rename_table_statement3924	= { FOLLOW_RENAME_SYMBOL_in_rename_table_statement3924_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_rename_table_statement3927  */
static	ANTLR3_BITWORD FOLLOW_set_in_rename_table_statement3927_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_rename_table_statement3927	= { FOLLOW_set_in_rename_table_statement3927_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_rename_table_statement3937  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_rename_table_statement3937_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ref_in_rename_table_statement3937	= { FOLLOW_table_ref_in_rename_table_statement3937_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_table_statement3939  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_table_statement3939_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_table_statement3939	= { FOLLOW_TO_SYMBOL_in_rename_table_statement3939_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_rename_table_statement3941  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_rename_table_statement3941_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_rename_table_statement3941	= { FOLLOW_table_ref_in_rename_table_statement3941_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_rename_table_statement3944  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_rename_table_statement3944_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_rename_table_statement3944	= { FOLLOW_COMMA_SYMBOL_in_rename_table_statement3944_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_rename_table_statement3946  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_rename_table_statement3946_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ref_in_rename_table_statement3946	= { FOLLOW_table_ref_in_rename_table_statement3946_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_table_statement3948  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_table_statement3948_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_table_statement3948	= { FOLLOW_TO_SYMBOL_in_rename_table_statement3948_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_rename_table_statement3950  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_rename_table_statement3950_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_rename_table_statement3950	= { FOLLOW_table_ref_in_rename_table_statement3950_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3964  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3964_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3964	= { FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3964_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3967  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3967_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3967	= { FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3967_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_truncate_table_statement3970  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_truncate_table_statement3970_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_truncate_table_statement3970	= { FOLLOW_table_ref_in_truncate_table_statement3970_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CALL_SYMBOL_in_call_statement3981  */
static	ANTLR3_BITWORD FOLLOW_CALL_SYMBOL_in_call_statement3981_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_CALL_SYMBOL_in_call_statement3981	= { FOLLOW_CALL_SYMBOL_in_call_statement3981_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_call_statement3984  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_call_statement3984_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_call_statement3984	= { FOLLOW_procedure_ref_in_call_statement3984_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3987  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3987_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C001230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3987	= { FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3987_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_call_statement3989  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_call_statement3989_bits[]	= { ANTLR3_UINT64_LIT(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_expression_list_in_call_statement3989	= { FOLLOW_expression_list_in_call_statement3989_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3992  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3992_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3992	= { FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3992_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_delete_statement4003  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_delete_statement4003_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x4000000020000000), ANTLR3_UINT64_LIT(0x00000000000A0000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_delete_statement4003	= { FOLLOW_DELETE_SYMBOL_in_delete_statement4003_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_option_in_delete_statement4020  */
static	ANTLR3_BITWORD FOLLOW_delete_option_in_delete_statement4020_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x4000000020000000), ANTLR3_UINT64_LIT(0x00000000000A0000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_option_in_delete_statement4020	= { FOLLOW_delete_option_in_delete_statement4020_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_delete_statement4031  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_delete_statement4031_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_delete_statement4031	= { FOLLOW_FROM_SYMBOL_in_delete_statement4031_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_with_wildcard_in_delete_statement4062  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_with_wildcard_in_delete_statement4062_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_list_with_wildcard_in_delete_statement4062	= { FOLLOW_table_ref_list_with_wildcard_in_delete_statement4062_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_delete_statement4064  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_delete_statement4064_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_delete_statement4064	= { FOLLOW_USING_SYMBOL_in_delete_statement4064_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_list_in_delete_statement4066  */
static	ANTLR3_BITWORD FOLLOW_join_table_list_in_delete_statement4066_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_list_in_delete_statement4066	= { FOLLOW_join_table_list_in_delete_statement4066_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement4068  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement4068_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement4068	= { FOLLOW_where_clause_in_delete_statement4068_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_delete_statement4079  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_delete_statement4079_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_delete_statement4079	= { FOLLOW_table_ref_in_delete_statement4079_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_delete_in_delete_statement4081  */
static	ANTLR3_BITWORD FOLLOW_partition_delete_in_delete_statement4081_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_delete_in_delete_statement4081	= { FOLLOW_partition_delete_in_delete_statement4081_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement4084  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement4084_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement4084	= { FOLLOW_where_clause_in_delete_statement4084_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_delete_statement4087  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_delete_statement4087_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_delete_statement4087	= { FOLLOW_order_by_clause_in_delete_statement4087_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_simple_limit_clause_in_delete_statement4090  */
static	ANTLR3_BITWORD FOLLOW_simple_limit_clause_in_delete_statement4090_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_simple_limit_clause_in_delete_statement4090	= { FOLLOW_simple_limit_clause_in_delete_statement4090_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_with_wildcard_in_delete_statement4106  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_with_wildcard_in_delete_statement4106_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_list_with_wildcard_in_delete_statement4106	= { FOLLOW_table_ref_list_with_wildcard_in_delete_statement4106_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_delete_statement4108  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_delete_statement4108_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_delete_statement4108	= { FOLLOW_FROM_SYMBOL_in_delete_statement4108_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_list_in_delete_statement4110  */
static	ANTLR3_BITWORD FOLLOW_join_table_list_in_delete_statement4110_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_list_in_delete_statement4110	= { FOLLOW_join_table_list_in_delete_statement4110_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_delete_statement4112  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_delete_statement4112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_delete_statement4112	= { FOLLOW_where_clause_in_delete_statement4112_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partition_delete4131  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partition_delete4131_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_PARTITION_SYMBOL_in_partition_delete4131	= { FOLLOW_PARTITION_SYMBOL_in_partition_delete4131_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4133  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4133_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4133	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4133_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_partition_delete4135  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_partition_delete4135_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_list_in_partition_delete4135	= { FOLLOW_identifier_list_in_partition_delete4135_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4137  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4137_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4137	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4137_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_do_statement4163  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_do_statement4163_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_do_statement4163	= { FOLLOW_DO_SYMBOL_in_do_statement4163_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_do_statement4176  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_do_statement4176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_do_statement4176	= { FOLLOW_expression_list_in_do_statement4176_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_do_statement4186  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_do_statement4186_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_do_statement4186	= { FOLLOW_select_item_list_in_do_statement4186_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HANDLER_SYMBOL_in_handler_statement4198  */
static	ANTLR3_BITWORD FOLLOW_HANDLER_SYMBOL_in_handler_statement4198_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_HANDLER_SYMBOL_in_handler_statement4198	= { FOLLOW_HANDLER_SYMBOL_in_handler_statement4198_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_handler_statement4219  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_handler_statement4219_bits[]	= { ANTLR3_UINT64_LIT(0x0000000080000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_handler_statement4219	= { FOLLOW_table_ref_in_handler_statement4219_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_handler_statement4221  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_handler_statement4221_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000108), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_SYMBOL_in_handler_statement4221	= { FOLLOW_OPEN_SYMBOL_in_handler_statement4221_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_handler_statement4224  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_handler_statement4224_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_handler_statement4224	= { FOLLOW_AS_SYMBOL_in_handler_statement4224_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_handler_statement4227  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_handler_statement4227_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_handler_statement4227	= { FOLLOW_identifier_in_handler_statement4227_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_no_db_in_handler_statement4235  */
static	ANTLR3_BITWORD FOLLOW_table_ref_no_db_in_handler_statement4235_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000002002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_no_db_in_handler_statement4235	= { FOLLOW_table_ref_no_db_in_handler_statement4235_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_SYMBOL_in_handler_statement4248  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_SYMBOL_in_handler_statement4248_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_SYMBOL_in_handler_statement4248	= { FOLLOW_CLOSE_SYMBOL_in_handler_statement4248_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_handler_statement4256  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_handler_statement4256_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_handler_statement4256	= { FOLLOW_READ_SYMBOL_in_handler_statement4256_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_read_or_scan_in_handler_statement4258  */
static	ANTLR3_BITWORD FOLLOW_handler_read_or_scan_in_handler_statement4258_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_read_or_scan_in_handler_statement4258	= { FOLLOW_handler_read_or_scan_in_handler_statement4258_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_handler_statement4260  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_handler_statement4260_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_handler_statement4260	= { FOLLOW_where_clause_in_handler_statement4260_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_handler_statement4263  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_handler_statement4263_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_handler_statement4263	= { FOLLOW_limit_clause_in_handler_statement4263_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_read_or_scan4281  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_read_or_scan4281_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_handler_read_or_scan4281	= { FOLLOW_set_in_handler_read_or_scan4281_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_handler_read_or_scan4293  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_handler_read_or_scan4293_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000200000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0C000000000000C0) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_handler_read_or_scan4293	= { FOLLOW_identifier_in_handler_read_or_scan4293_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4302  */
static	ANTLR3_BITWORD FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4302	= { FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4302_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4309  */
static	ANTLR3_BITWORD FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4309	= { FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4309_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4316  */
static	ANTLR3_BITWORD FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4316	= { FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4316_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4323  */
static	ANTLR3_BITWORD FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4323	= { FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4323_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_read_or_scan4330  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_read_or_scan4330_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_set_in_handler_read_or_scan4330	= { FOLLOW_set_in_handler_read_or_scan4330_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4354  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4354_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4354	= { FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4354_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_values_in_handler_read_or_scan4356  */
static	ANTLR3_BITWORD FOLLOW_values_in_handler_read_or_scan4356_bits[]	= { ANTLR3_UINT64_LIT(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_values_in_handler_read_or_scan4356	= { FOLLOW_values_in_handler_read_or_scan4356_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4358  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4358_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4358	= { FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4358_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_insert_statement4373  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_in_insert_statement4373_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024008000), ANTLR3_UINT64_LIT(0x00000010000A2000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_SYMBOL_in_insert_statement4373	= { FOLLOW_INSERT_SYMBOL_in_insert_statement4373_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_lock_option_in_insert_statement4376  */
static	ANTLR3_BITWORD FOLLOW_insert_lock_option_in_insert_statement4376_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x00000010000A0000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_lock_option_in_insert_statement4376	= { FOLLOW_insert_lock_option_in_insert_statement4376_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_insert_statement4379  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_insert_statement4379_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000001000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_insert_statement4379	= { FOLLOW_IGNORE_SYMBOL_in_insert_statement4379_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_insert_statement4382  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_insert_statement4382_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_insert_statement4382	= { FOLLOW_INTO_SYMBOL_in_insert_statement4382_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_insert_statement4385  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_insert_statement4385_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0202000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_insert_statement4385	= { FOLLOW_table_ref_in_insert_statement4385_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_partition_in_insert_statement4387  */
static	ANTLR3_BITWORD FOLLOW_use_partition_in_insert_statement4387_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0202000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_use_partition_in_insert_statement4387	= { FOLLOW_use_partition_in_insert_statement4387_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_field_spec_in_insert_statement4392  */
static	ANTLR3_BITWORD FOLLOW_insert_field_spec_in_insert_statement4392_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(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_field_spec_in_insert_statement4392	= { FOLLOW_insert_field_spec_in_insert_statement4392_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_duplicate_key_update_in_insert_statement4394  */
static	ANTLR3_BITWORD FOLLOW_duplicate_key_update_in_insert_statement4394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_duplicate_key_update_in_insert_statement4394	= { FOLLOW_duplicate_key_update_in_insert_statement4394_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4426  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4426_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4426	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4426_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_in_insert_field_spec4428  */
static	ANTLR3_BITWORD FOLLOW_fields_in_insert_field_spec4428_bits[]	= { ANTLR3_UINT64_LIT(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_fields_in_insert_field_spec4428	= { FOLLOW_fields_in_insert_field_spec4428_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4431  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4431_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4431	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4431_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_values_in_insert_field_spec4443  */
static	ANTLR3_BITWORD FOLLOW_insert_values_in_insert_field_spec4443_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_values_in_insert_field_spec4443	= { FOLLOW_insert_values_in_insert_field_spec4443_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_query_expression_in_insert_field_spec4450  */
static	ANTLR3_BITWORD FOLLOW_insert_query_expression_in_insert_field_spec4450_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_query_expression_in_insert_field_spec4450	= { FOLLOW_insert_query_expression_in_insert_field_spec4450_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_insert_field_spec4459  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_insert_field_spec4459_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_insert_field_spec4459	= { FOLLOW_SET_SYMBOL_in_insert_field_spec4459_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_insert_field_spec4461  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_insert_field_spec4461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_insert_field_spec4461	= { FOLLOW_column_assignment_list_with_default_in_insert_field_spec4461_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_identifier_in_fields4470  */
static	ANTLR3_BITWORD FOLLOW_insert_identifier_in_fields4470_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_identifier_in_fields4470	= { FOLLOW_insert_identifier_in_fields4470_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_fields4473  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_fields4473_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_fields4473	= { FOLLOW_COMMA_SYMBOL_in_fields4473_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_identifier_in_fields4475  */
static	ANTLR3_BITWORD FOLLOW_insert_identifier_in_fields4475_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_identifier_in_fields4475	= { FOLLOW_insert_identifier_in_fields4475_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_with_wildcard_in_insert_identifier4486  */
static	ANTLR3_BITWORD FOLLOW_column_ref_with_wildcard_in_insert_identifier4486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_with_wildcard_in_insert_identifier4486	= { FOLLOW_column_ref_with_wildcard_in_insert_identifier4486_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_insert_values4503  */
static	ANTLR3_BITWORD FOLLOW_set_in_insert_values4503_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_set_in_insert_values4503	= { FOLLOW_set_in_insert_values4503_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_value_list_in_insert_values4511  */
static	ANTLR3_BITWORD FOLLOW_insert_value_list_in_insert_values4511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_value_list_in_insert_values4511	= { FOLLOW_insert_value_list_in_insert_values4511_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_insert_query_expression4520  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_insert_query_expression4520_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_select_in_insert_query_expression4520	= { FOLLOW_create_select_in_insert_query_expression4520_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_insert_query_expression4522  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_insert_query_expression4522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_insert_query_expression4522	= { FOLLOW_union_clause_in_insert_query_expression4522_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_query_expression4528  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_query_expression4528_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_insert_query_expression4528	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_query_expression4528_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_select_in_insert_query_expression4530  */
static	ANTLR3_BITWORD FOLLOW_create_select_in_insert_query_expression4530_bits[]	= { ANTLR3_UINT64_LIT(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_create_select_in_insert_query_expression4530	= { FOLLOW_create_select_in_insert_query_expression4530_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4532  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4532_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4532	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4532_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4534  */
static	ANTLR3_BITWORD FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4534	= { FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4534_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4544  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4544_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C001230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4544	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4544_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_values_in_insert_value_list4546  */
static	ANTLR3_BITWORD FOLLOW_values_in_insert_value_list4546_bits[]	= { ANTLR3_UINT64_LIT(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_values_in_insert_value_list4546	= { FOLLOW_values_in_insert_value_list4546_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4549  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4549_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4549	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4549_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_insert_value_list4552  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_insert_value_list4552_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_COMMA_SYMBOL_in_insert_value_list4552	= { FOLLOW_COMMA_SYMBOL_in_insert_value_list4552_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4554  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4554_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C001230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4554	= { FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4554_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_values_in_insert_value_list4556  */
static	ANTLR3_BITWORD FOLLOW_values_in_insert_value_list4556_bits[]	= { ANTLR3_UINT64_LIT(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_values_in_insert_value_list4556	= { FOLLOW_values_in_insert_value_list4556_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4559  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4559_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4559	= { FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4559_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_values4571  */
static	ANTLR3_BITWORD FOLLOW_expression_in_values4571_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_values4571	= { FOLLOW_expression_in_values4571_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_values4575  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_values4575_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_values4575	= { FOLLOW_DEFAULT_SYMBOL_in_values4575_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_values4579  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_values4579_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_values4579	= { FOLLOW_COMMA_SYMBOL_in_values4579_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_values4582  */
static	ANTLR3_BITWORD FOLLOW_expression_in_values4582_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_values4582	= { FOLLOW_expression_in_values4582_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_values4586  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_values4586_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_values4586	= { FOLLOW_DEFAULT_SYMBOL_in_values4586_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_duplicate_key_update4598  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_duplicate_key_update4598_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_duplicate_key_update4598	= { FOLLOW_ON_SYMBOL_in_duplicate_key_update4598_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4600  */
static	ANTLR3_BITWORD FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4600_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4600	= { FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4600_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_duplicate_key_update4602  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_duplicate_key_update4602_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_KEY_SYMBOL_in_duplicate_key_update4602	= { FOLLOW_KEY_SYMBOL_in_duplicate_key_update4602_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4604  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4604_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4604	= { FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4604_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4606  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4606_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4606	= { FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4606_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_load_statement4617  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_load_statement4617_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOAD_SYMBOL_in_load_statement4617	= { FOLLOW_LOAD_SYMBOL_in_load_statement4617_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_or_xml_in_load_statement4620  */
static	ANTLR3_BITWORD FOLLOW_data_or_xml_in_load_statement4620_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_or_xml_in_load_statement4620	= { FOLLOW_data_or_xml_in_load_statement4620_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_load_statement4631  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_load_statement4631_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOCAL_SYMBOL_in_load_statement4631	= { FOLLOW_LOCAL_SYMBOL_in_load_statement4631_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INFILE_SYMBOL_in_load_statement4634  */
static	ANTLR3_BITWORD FOLLOW_INFILE_SYMBOL_in_load_statement4634_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INFILE_SYMBOL_in_load_statement4634	= { FOLLOW_INFILE_SYMBOL_in_load_statement4634_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_load_statement4636  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_load_statement4636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_load_statement4636	= { FOLLOW_string_literal_in_load_statement4636_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_load_statement4649  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_load_statement4649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_INTO_SYMBOL_in_load_statement4649	= { FOLLOW_INTO_SYMBOL_in_load_statement4649_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_load_statement4651  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_load_statement4651_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_load_statement4651	= { FOLLOW_TABLE_SYMBOL_in_load_statement4651_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_load_statement4653  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_load_statement4653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000800), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0200000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_load_statement4653	= { FOLLOW_table_ref_in_load_statement4653_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_partition_in_load_statement4657  */
static	ANTLR3_BITWORD FOLLOW_use_partition_in_load_statement4657_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0200000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_use_partition_in_load_statement4657	= { FOLLOW_use_partition_in_load_statement4657_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_load_statement4660  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_load_statement4660_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000), 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(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0200000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_load_statement4660	= { FOLLOW_charset_clause_in_load_statement4660_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xml_rows_identified_by_in_load_statement4665  */
static	ANTLR3_BITWORD FOLLOW_xml_rows_identified_by_in_load_statement4665_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(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0200000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_xml_rows_identified_by_in_load_statement4665	= { FOLLOW_xml_rows_identified_by_in_load_statement4665_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_clause_in_load_statement4670  */
static	ANTLR3_BITWORD FOLLOW_fields_clause_in_load_statement4670_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000004), ANTLR3_UINT64_LIT(0x0200000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_fields_clause_in_load_statement4670	= { FOLLOW_fields_clause_in_load_statement4670_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lines_clause_in_load_statement4673  */
static	ANTLR3_BITWORD FOLLOW_lines_clause_in_load_statement4673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_lines_clause_in_load_statement4673	= { FOLLOW_lines_clause_in_load_statement4673_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_data_file_tail_in_load_statement4678  */
static	ANTLR3_BITWORD FOLLOW_load_data_file_tail_in_load_statement4678_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_data_file_tail_in_load_statement4678	= { FOLLOW_load_data_file_tail_in_load_statement4678_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_data_or_xml4687  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_data_or_xml4687_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_data_or_xml4687	= { FOLLOW_DATA_SYMBOL_in_data_or_xml4687_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XML_SYMBOL_in_data_or_xml4694  */
static	ANTLR3_BITWORD FOLLOW_XML_SYMBOL_in_data_or_xml4694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_XML_SYMBOL_in_data_or_xml4694	= { FOLLOW_XML_SYMBOL_in_data_or_xml4694_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4707  */
static	ANTLR3_BITWORD FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4707_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4707	= { FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4707_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4709  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4709_bits[]	= { ANTLR3_UINT64_LIT(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_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4709	= { FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4709_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4711  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4711_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4711	= { FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4711_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_xml_rows_identified_by4713  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_xml_rows_identified_by4713_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_xml_rows_identified_by4713	= { FOLLOW_text_string_in_xml_rows_identified_by4713_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail4723  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail4723_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IGNORE_SYMBOL_in_load_data_file_tail4723	= { FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail4723_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_load_data_file_tail4725  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_load_data_file_tail4725_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_load_data_file_tail4725	= { FOLLOW_INT_NUMBER_in_load_data_file_tail4725_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_load_data_file_tail4727  */
static	ANTLR3_BITWORD FOLLOW_set_in_load_data_file_tail4727_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(0x0200000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_load_data_file_tail4727	= { FOLLOW_set_in_load_data_file_tail4727_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_data_file_target_list_in_load_data_file_tail4737  */
static	ANTLR3_BITWORD FOLLOW_load_data_file_target_list_in_load_data_file_tail4737_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(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_load_data_file_target_list_in_load_data_file_tail4737	= { FOLLOW_load_data_file_target_list_in_load_data_file_tail4737_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_load_data_file_tail4741  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_load_data_file_tail4741_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_load_data_file_tail4741	= { FOLLOW_SET_SYMBOL_in_load_data_file_tail4741_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4743  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4743	= { FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4743_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4754  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4754_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000160), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4754	= { FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4754_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_or_variable_list_in_load_data_file_target_list4756  */
static	ANTLR3_BITWORD FOLLOW_field_or_variable_list_in_load_data_file_target_list4756_bits[]	= { ANTLR3_UINT64_LIT(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_field_or_variable_list_in_load_data_file_target_list4756	= { FOLLOW_field_or_variable_list_in_load_data_file_target_list4756_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4759  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4759	= { FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4759_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_or_variable_list4769  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_or_variable_list4769_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_or_variable_list4769	= { FOLLOW_column_ref_in_field_or_variable_list4769_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_field_or_variable_list4773  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_field_or_variable_list4773_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_field_or_variable_list4773	= { FOLLOW_user_variable_in_field_or_variable_list4773_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4777  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4777_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000160), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4777	= { FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4777_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_or_variable_list4780  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_or_variable_list4780_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_or_variable_list4780	= { FOLLOW_column_ref_in_field_or_variable_list4780_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_field_or_variable_list4784  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_field_or_variable_list4784_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_field_or_variable_list4784	= { FOLLOW_user_variable_in_field_or_variable_list4784_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_replace_statement4798  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_replace_statement4798_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024008000), ANTLR3_UINT64_LIT(0x0000001000020000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLACE_SYMBOL_in_replace_statement4798	= { FOLLOW_REPLACE_SYMBOL_in_replace_statement4798_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_replace_statement4810  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_replace_statement4810_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_replace_statement4810	= { FOLLOW_INTO_SYMBOL_in_replace_statement4810_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_replace_statement4813  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_replace_statement4813_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0202000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_replace_statement4813	= { FOLLOW_table_ref_in_replace_statement4813_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_partition_in_replace_statement4817  */
static	ANTLR3_BITWORD FOLLOW_use_partition_in_replace_statement4817_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0202000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_use_partition_in_replace_statement4817	= { FOLLOW_use_partition_in_replace_statement4817_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_field_spec_in_replace_statement4820  */
static	ANTLR3_BITWORD FOLLOW_insert_field_spec_in_replace_statement4820_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_field_spec_in_replace_statement4820	= { FOLLOW_insert_field_spec_in_replace_statement4820_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_select_statement4831  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_select_statement4831_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_select_statement4831	= { FOLLOW_SELECT_SYMBOL_in_select_statement4831_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_in_select_statement4834  */
static	ANTLR3_BITWORD FOLLOW_select_part2_in_select_statement4834_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_in_select_statement4834	= { FOLLOW_select_part2_in_select_statement4834_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_select_statement4836  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_select_statement4836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_select_statement4836	= { FOLLOW_union_clause_in_select_statement4836_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4842  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4842	= { FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4842_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_paren_in_select_statement4844  */
static	ANTLR3_BITWORD FOLLOW_select_paren_in_select_statement4844_bits[]	= { ANTLR3_UINT64_LIT(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_select_paren_in_select_statement4844	= { FOLLOW_select_paren_in_select_statement4844_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4846  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4846_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4846	= { FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4846_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_or_order_by_or_limit_in_select_statement4848  */
static	ANTLR3_BITWORD FOLLOW_union_or_order_by_or_limit_in_select_statement4848_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_or_order_by_or_limit_in_select_statement4848	= { FOLLOW_union_or_order_by_or_limit_in_select_statement4848_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_select_paren4858  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_select_paren4858_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_select_paren4858	= { FOLLOW_SELECT_SYMBOL_in_select_paren4858_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_in_select_paren4861  */
static	ANTLR3_BITWORD FOLLOW_select_part2_in_select_paren4861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_in_select_paren4861	= { FOLLOW_select_part2_in_select_paren4861_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4866  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4866_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4866	= { FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4866_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_paren_in_select_paren4868  */
static	ANTLR3_BITWORD FOLLOW_select_paren_in_select_paren4868_bits[]	= { ANTLR3_UINT64_LIT(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_select_paren_in_select_paren4868	= { FOLLOW_select_paren_in_select_paren4868_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4870  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4870	= { FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4870_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_from_clause_in_select_from4879  */
static	ANTLR3_BITWORD FOLLOW_from_clause_in_select_from4879_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(0x8000000000000600), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_from_clause_in_select_from4879	= { FOLLOW_from_clause_in_select_from4879_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_select_from4881  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_select_from4881_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(0x8000000000000600), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100020) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_select_from4881	= { FOLLOW_where_clause_in_select_from4881_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_by_clause_in_select_from4884  */
static	ANTLR3_BITWORD FOLLOW_group_by_clause_in_select_from4884_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(0x8000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100020) };
static  ANTLR3_BITSET_LIST FOLLOW_group_by_clause_in_select_from4884	= { FOLLOW_group_by_clause_in_select_from4884_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_having_clause_in_select_from4887  */
static	ANTLR3_BITWORD FOLLOW_having_clause_in_select_from4887_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100020) };
static  ANTLR3_BITSET_LIST FOLLOW_having_clause_in_select_from4887	= { FOLLOW_having_clause_in_select_from4887_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_select_from4890  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_select_from4890_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_select_from4890	= { FOLLOW_order_by_clause_in_select_from4890_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_from4893  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_from4893_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(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_from4893	= { FOLLOW_limit_clause_in_select_from4893_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_analyse_clause_in_select_from4896  */
static	ANTLR3_BITWORD FOLLOW_procedure_analyse_clause_in_select_from4896_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_analyse_clause_in_select_from4896	= { FOLLOW_procedure_analyse_clause_in_select_from4896_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_option_in_select_part24920  */
static	ANTLR3_BITWORD FOLLOW_select_option_in_select_part24920_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_select_option_in_select_part24920	= { FOLLOW_select_option_in_select_part24920_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_select_part24924  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_select_part24924_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(0x5000000000000000), ANTLR3_UINT64_LIT(0x8000001000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_select_part24924	= { FOLLOW_select_item_list_in_select_part24924_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_select_part24933  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_select_part24933_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_select_part24933	= { FOLLOW_order_by_clause_in_select_part24933_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_select_part24936  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_select_part24936_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_select_part24936	= { FOLLOW_limit_clause_in_select_part24936_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_into_clause_in_select_part24944  */
static	ANTLR3_BITWORD FOLLOW_into_clause_in_select_part24944_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(0x5000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_into_clause_in_select_part24944	= { FOLLOW_into_clause_in_select_part24944_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_in_select_part24946  */
static	ANTLR3_BITWORD FOLLOW_select_from_in_select_part24946_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_in_select_part24946	= { FOLLOW_select_from_in_select_part24946_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_from_in_select_part24954  */
static	ANTLR3_BITWORD FOLLOW_select_from_in_select_part24954_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_select_from_in_select_part24954	= { FOLLOW_select_from_in_select_part24954_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_into_clause_in_select_part24956  */
static	ANTLR3_BITWORD FOLLOW_into_clause_in_select_part24956_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_into_clause_in_select_part24956	= { FOLLOW_into_clause_in_select_part24956_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_lock_type_in_select_part24965  */
static	ANTLR3_BITWORD FOLLOW_select_lock_type_in_select_part24965_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_lock_type_in_select_part24965	= { FOLLOW_select_lock_type_in_select_part24965_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_from_clause_in_table_expression4975  */
static	ANTLR3_BITWORD FOLLOW_from_clause_in_table_expression4975_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000600), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_from_clause_in_table_expression4975	= { FOLLOW_from_clause_in_table_expression4975_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_table_expression4993  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_table_expression4993_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000600), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100020) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_table_expression4993	= { FOLLOW_where_clause_in_table_expression4993_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_by_clause_in_table_expression5012  */
static	ANTLR3_BITWORD FOLLOW_group_by_clause_in_table_expression5012_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000400), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100020) };
static  ANTLR3_BITSET_LIST FOLLOW_group_by_clause_in_table_expression5012	= { FOLLOW_group_by_clause_in_table_expression5012_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_having_clause_in_table_expression5031  */
static	ANTLR3_BITWORD FOLLOW_having_clause_in_table_expression5031_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100020) };
static  ANTLR3_BITSET_LIST FOLLOW_having_clause_in_table_expression5031	= { FOLLOW_having_clause_in_table_expression5031_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_table_expression5050  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_table_expression5050_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_table_expression5050	= { FOLLOW_order_by_clause_in_table_expression5050_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_table_expression5069  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_table_expression5069_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_table_expression5069	= { FOLLOW_limit_clause_in_table_expression5069_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_analyse_clause_in_table_expression5088  */
static	ANTLR3_BITWORD FOLLOW_procedure_analyse_clause_in_table_expression5088_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_analyse_clause_in_table_expression5088	= { FOLLOW_procedure_analyse_clause_in_table_expression5088_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_lock_type_in_table_expression5107  */
static	ANTLR3_BITWORD FOLLOW_select_lock_type_in_table_expression5107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_lock_type_in_table_expression5107	= { FOLLOW_select_lock_type_in_table_expression5107_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_subquery5119  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_subquery5119_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_subquery5119	= { FOLLOW_OPEN_PAR_SYMBOL_in_subquery5119_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_expression_body_in_subquery5121  */
static	ANTLR3_BITWORD FOLLOW_query_expression_body_in_subquery5121_bits[]	= { ANTLR3_UINT64_LIT(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_query_expression_body_in_subquery5121	= { FOLLOW_query_expression_body_in_subquery5121_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5123  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5123	= { FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5123_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_specification_in_query_expression_body5146  */
static	ANTLR3_BITWORD FOLLOW_query_specification_in_query_expression_body5146_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_query_specification_in_query_expression_body5146	= { FOLLOW_query_specification_in_query_expression_body5146_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_query_expression_body5149  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_query_expression_body5149_bits[]	= { 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(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_query_expression_body5149	= { FOLLOW_UNION_SYMBOL_in_query_expression_body5149_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_option_in_query_expression_body5151  */
static	ANTLR3_BITWORD FOLLOW_union_option_in_query_expression_body5151_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_union_option_in_query_expression_body5151	= { FOLLOW_union_option_in_query_expression_body5151_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_specification_in_query_expression_body5153  */
static	ANTLR3_BITWORD FOLLOW_query_specification_in_query_expression_body5153_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_query_specification_in_query_expression_body5153	= { FOLLOW_query_specification_in_query_expression_body5153_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_spec_option_in_select_part2_derived5181  */
static	ANTLR3_BITWORD FOLLOW_query_spec_option_in_select_part2_derived5181_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_query_spec_option_in_select_part2_derived5181	= { FOLLOW_query_spec_option_in_select_part2_derived5181_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_select_part2_derived5189  */
static	ANTLR3_BITWORD FOLLOW_set_in_select_part2_derived5189_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_select_part2_derived5189	= { FOLLOW_set_in_select_part2_derived5189_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_select_part2_derived5201  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_select_part2_derived5201_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_select_part2_derived5201	= { FOLLOW_select_item_list_in_select_part2_derived5201_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_spec_option_in_select_option5210  */
static	ANTLR3_BITWORD FOLLOW_query_spec_option_in_select_option5210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_query_spec_option_in_select_option5210	= { FOLLOW_query_spec_option_in_select_option5210_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5215  */
static	ANTLR3_BITWORD FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5215_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5215	= { FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5215_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_CACHE_SYMBOL_in_select_option5220  */
static	ANTLR3_BITWORD FOLLOW_SQL_CACHE_SYMBOL_in_select_option5220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_CACHE_SYMBOL_in_select_option5220	= { FOLLOW_SQL_CACHE_SYMBOL_in_select_option5220_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_STATEMENT_TIME_SYMBOL_in_select_option5227  */
static	ANTLR3_BITWORD FOLLOW_MAX_STATEMENT_TIME_SYMBOL_in_select_option5227_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MAX_STATEMENT_TIME_SYMBOL_in_select_option5227	= { FOLLOW_MAX_STATEMENT_TIME_SYMBOL_in_select_option5227_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_select_option5229  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_select_option5229_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_select_option5229	= { FOLLOW_EQUAL_OPERATOR_in_select_option5229_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_select_option5231  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_select_option5231_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_select_option5231	= { FOLLOW_real_ulong_number_in_select_option5231_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_in_select_item_list5286  */
static	ANTLR3_BITWORD FOLLOW_select_item_in_select_item_list5286_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_in_select_item_list5286	= { FOLLOW_select_item_in_select_item_list5286_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_select_item_list5290  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_select_item_list5290_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_select_item_list5290	= { FOLLOW_MULT_OPERATOR_in_select_item_list5290_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_select_item_list5307  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_select_item_list5307_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_select_item_list5307	= { FOLLOW_COMMA_SYMBOL_in_select_item_list5307_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_in_select_item_list5309  */
static	ANTLR3_BITWORD FOLLOW_select_item_in_select_item_list5309_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_in_select_item_list5309	= { FOLLOW_select_item_in_select_item_list5309_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_wild_in_select_item5331  */
static	ANTLR3_BITWORD FOLLOW_table_wild_in_select_item5331_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_wild_in_select_item5331	= { FOLLOW_table_wild_in_select_item5331_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_select_item5344  */
static	ANTLR3_BITWORD FOLLOW_expression_in_select_item5344_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000002108), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000021000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_select_item5344	= { FOLLOW_expression_in_select_item5344_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_alias_in_select_item5346  */
static	ANTLR3_BITWORD FOLLOW_select_alias_in_select_item5346_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_alias_in_select_item5346	= { FOLLOW_select_alias_in_select_item5346_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_select_alias5367  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_select_alias5367_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000002100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000021000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_select_alias5367	= { FOLLOW_AS_SYMBOL_in_select_alias5367_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_select_alias5371  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_select_alias5371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_select_alias5371	= { FOLLOW_identifier_in_select_alias5371_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_select_alias5375  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_select_alias5375_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_select_alias5375	= { FOLLOW_text_string_in_select_alias5375_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIMIT_SYMBOL_in_limit_clause5395  */
static	ANTLR3_BITWORD FOLLOW_LIMIT_SYMBOL_in_limit_clause5395_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIMIT_SYMBOL_in_limit_clause5395	= { FOLLOW_LIMIT_SYMBOL_in_limit_clause5395_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_options_in_limit_clause5397  */
static	ANTLR3_BITWORD FOLLOW_limit_options_in_limit_clause5397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_options_in_limit_clause5397	= { FOLLOW_limit_options_in_limit_clause5397_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5406  */
static	ANTLR3_BITWORD FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5406_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5406	= { FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5406_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_option_in_simple_limit_clause5408  */
static	ANTLR3_BITWORD FOLLOW_limit_option_in_simple_limit_clause5408_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_option_in_simple_limit_clause5408	= { FOLLOW_limit_option_in_simple_limit_clause5408_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_option_in_limit_options5417  */
static	ANTLR3_BITWORD FOLLOW_limit_option_in_limit_options5417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_option_in_limit_options5417	= { FOLLOW_limit_option_in_limit_options5417_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_limit_options5433  */
static	ANTLR3_BITWORD FOLLOW_set_in_limit_options5433_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000002000020000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_limit_options5433	= { FOLLOW_set_in_limit_options5433_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_option_in_limit_options5441  */
static	ANTLR3_BITWORD FOLLOW_limit_option_in_limit_options5441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_option_in_limit_options5441	= { FOLLOW_limit_option_in_limit_options5441_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_limit_option5452  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_limit_option5452_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_limit_option5452	= { FOLLOW_identifier_in_limit_option5452_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARAM_MARKER_in_limit_option5457  */
static	ANTLR3_BITWORD FOLLOW_PARAM_MARKER_in_limit_option5457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PARAM_MARKER_in_limit_option5457	= { FOLLOW_PARAM_MARKER_in_limit_option5457_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ULONGLONG_NUMBER_in_limit_option5462  */
static	ANTLR3_BITWORD FOLLOW_ULONGLONG_NUMBER_in_limit_option5462_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ULONGLONG_NUMBER_in_limit_option5462	= { FOLLOW_ULONGLONG_NUMBER_in_limit_option5462_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONG_NUMBER_in_limit_option5467  */
static	ANTLR3_BITWORD FOLLOW_LONG_NUMBER_in_limit_option5467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LONG_NUMBER_in_limit_option5467	= { FOLLOW_LONG_NUMBER_in_limit_option5467_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_limit_option5472  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_limit_option5472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_limit_option5472	= { FOLLOW_INT_NUMBER_in_limit_option5472_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_into_clause5481  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_into_clause5481_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000160), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_into_clause5481	= { FOLLOW_INTO_SYMBOL_in_into_clause5481_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTFILE_SYMBOL_in_into_clause5488  */
static	ANTLR3_BITWORD FOLLOW_OUTFILE_SYMBOL_in_into_clause5488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OUTFILE_SYMBOL_in_into_clause5488	= { FOLLOW_OUTFILE_SYMBOL_in_into_clause5488_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_into_clause5490  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_into_clause5490_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_into_clause5490	= { FOLLOW_string_literal_in_into_clause5490_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_into_clause5492  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_into_clause5492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_into_clause5492	= { FOLLOW_charset_clause_in_into_clause5492_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fields_clause_in_into_clause5495  */
static	ANTLR3_BITWORD FOLLOW_fields_clause_in_into_clause5495_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(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_fields_clause_in_into_clause5495	= { FOLLOW_fields_clause_in_into_clause5495_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lines_clause_in_into_clause5498  */
static	ANTLR3_BITWORD FOLLOW_lines_clause_in_into_clause5498_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lines_clause_in_into_clause5498	= { FOLLOW_lines_clause_in_into_clause5498_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUMPFILE_SYMBOL_in_into_clause5505  */
static	ANTLR3_BITWORD FOLLOW_DUMPFILE_SYMBOL_in_into_clause5505_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DUMPFILE_SYMBOL_in_into_clause5505	= { FOLLOW_DUMPFILE_SYMBOL_in_into_clause5505_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_into_clause5507  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_into_clause5507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_into_clause5507	= { FOLLOW_string_literal_in_into_clause5507_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_into_clause5513  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_into_clause5513_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000140), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_into_clause5513	= { FOLLOW_AT_SIGN_SYMBOL_in_into_clause5513_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_into_clause5517  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_into_clause5517_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_into_clause5517	= { FOLLOW_text_or_identifier_in_into_clause5517_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_TEXT_SUFFIX_in_into_clause5521  */
static	ANTLR3_BITWORD FOLLOW_AT_TEXT_SUFFIX_in_into_clause5521_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_TEXT_SUFFIX_in_into_clause5521	= { FOLLOW_AT_TEXT_SUFFIX_in_into_clause5521_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_into_clause5525  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_into_clause5525_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000160), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_into_clause5525	= { FOLLOW_COMMA_SYMBOL_in_into_clause5525_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_into_clause5527  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_into_clause5527_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000140), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_into_clause5527	= { FOLLOW_AT_SIGN_SYMBOL_in_into_clause5527_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_into_clause5531  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_into_clause5531_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_into_clause5531	= { FOLLOW_text_or_identifier_in_into_clause5531_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_TEXT_SUFFIX_in_into_clause5535  */
static	ANTLR3_BITWORD FOLLOW_AT_TEXT_SUFFIX_in_into_clause5535_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_TEXT_SUFFIX_in_into_clause5535	= { FOLLOW_AT_TEXT_SUFFIX_in_into_clause5535_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause5550  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause5550_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_PROCEDURE_SYMBOL_in_procedure_analyse_clause5550	= { FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause5550_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause5553  */
static	ANTLR3_BITWORD FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause5553_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_ANALYSE_SYMBOL_in_procedure_analyse_clause5553	= { FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause5553_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5555  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5555_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5555	= { FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5555_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_procedure_analyse_clause5558  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_procedure_analyse_clause5558_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_procedure_analyse_clause5558	= { FOLLOW_INT_NUMBER_in_procedure_analyse_clause5558_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause5561  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause5561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_procedure_analyse_clause5561	= { FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause5561_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_procedure_analyse_clause5563  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_procedure_analyse_clause5563_bits[]	= { ANTLR3_UINT64_LIT(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_INT_NUMBER_in_procedure_analyse_clause5563	= { FOLLOW_INT_NUMBER_in_procedure_analyse_clause5563_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5569  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5569_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5569	= { FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5569_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HAVING_SYMBOL_in_having_clause5578  */
static	ANTLR3_BITWORD FOLLOW_HAVING_SYMBOL_in_having_clause5578_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_HAVING_SYMBOL_in_having_clause5578	= { FOLLOW_HAVING_SYMBOL_in_having_clause5578_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_having_clause5581  */
static	ANTLR3_BITWORD FOLLOW_expression_in_having_clause5581_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_having_clause5581	= { FOLLOW_expression_in_having_clause5581_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_group_by_clause5590  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_group_by_clause5590_bits[]	= { ANTLR3_UINT64_LIT(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_GROUP_SYMBOL_in_group_by_clause5590	= { FOLLOW_GROUP_SYMBOL_in_group_by_clause5590_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_group_by_clause5593  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_group_by_clause5593_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_group_by_clause5593	= { FOLLOW_BY_SYMBOL_in_group_by_clause5593_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_direction_in_group_by_clause5595  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_direction_in_group_by_clause5595_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_direction_in_group_by_clause5595	= { FOLLOW_expression_list_with_direction_in_group_by_clause5595_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_olap_option_in_group_by_clause5597  */
static	ANTLR3_BITWORD FOLLOW_olap_option_in_group_by_clause5597_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_olap_option_in_group_by_clause5597	= { FOLLOW_olap_option_in_group_by_clause5597_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_olap_option5607  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_olap_option5607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_olap_option5607	= { FOLLOW_WITH_SYMBOL_in_olap_option5607_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CUBE_SYMBOL_in_olap_option5609  */
static	ANTLR3_BITWORD FOLLOW_CUBE_SYMBOL_in_olap_option5609_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CUBE_SYMBOL_in_olap_option5609	= { FOLLOW_CUBE_SYMBOL_in_olap_option5609_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_olap_option5614  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_olap_option5614_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_olap_option5614	= { FOLLOW_WITH_SYMBOL_in_olap_option5614_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLUP_SYMBOL_in_olap_option5616  */
static	ANTLR3_BITWORD FOLLOW_ROLLUP_SYMBOL_in_olap_option5616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLUP_SYMBOL_in_olap_option5616	= { FOLLOW_ROLLUP_SYMBOL_in_olap_option5616_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_order_by_clause5625  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_order_by_clause5625_bits[]	= { ANTLR3_UINT64_LIT(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_ORDER_SYMBOL_in_order_by_clause5625	= { FOLLOW_ORDER_SYMBOL_in_order_by_clause5625_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_order_by_clause5628  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_order_by_clause5628_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_order_by_clause5628	= { FOLLOW_BY_SYMBOL_in_order_by_clause5628_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_direction_in_order_by_clause5630  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_direction_in_order_by_clause5630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_direction_in_order_by_clause5630	= { FOLLOW_expression_list_with_direction_in_order_by_clause5630_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_order_by_or_limit5639  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_order_by_or_limit5639_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_order_by_or_limit5639	= { FOLLOW_order_by_clause_in_order_by_or_limit5639_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_order_by_or_limit5641  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_order_by_or_limit5641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_order_by_or_limit5641	= { FOLLOW_limit_clause_in_order_by_or_limit5641_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_order_by_or_limit5647  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_order_by_or_limit5647_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_order_by_or_limit5647	= { FOLLOW_limit_clause_in_order_by_or_limit5647_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_from_clause5670  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_from_clause5670_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000124000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_from_clause5670	= { FOLLOW_FROM_SYMBOL_in_from_clause5670_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_list_in_from_clause5672  */
static	ANTLR3_BITWORD FOLLOW_table_reference_list_in_from_clause5672_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_list_in_from_clause5672	= { FOLLOW_table_reference_list_in_from_clause5672_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHERE_SYMBOL_in_where_clause5681  */
static	ANTLR3_BITWORD FOLLOW_WHERE_SYMBOL_in_where_clause5681_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_WHERE_SYMBOL_in_where_clause5681	= { FOLLOW_WHERE_SYMBOL_in_where_clause5681_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_where_clause5684  */
static	ANTLR3_BITWORD FOLLOW_expression_in_where_clause5684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_where_clause5684	= { FOLLOW_expression_in_where_clause5684_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_list_in_table_reference_list5693  */
static	ANTLR3_BITWORD FOLLOW_join_table_list_in_table_reference_list5693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_list_in_table_reference_list5693	= { FOLLOW_join_table_list_in_table_reference_list5693_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DUAL_SYMBOL_in_table_reference_list5698  */
static	ANTLR3_BITWORD FOLLOW_DUAL_SYMBOL_in_table_reference_list5698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DUAL_SYMBOL_in_table_reference_list5698	= { FOLLOW_DUAL_SYMBOL_in_table_reference_list5698_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_escaped_table_reference_in_join_table_list5709  */
static	ANTLR3_BITWORD FOLLOW_escaped_table_reference_in_join_table_list5709_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_escaped_table_reference_in_join_table_list5709	= { FOLLOW_escaped_table_reference_in_join_table_list5709_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_join_table_list5725  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_join_table_list5725_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_join_table_list5725	= { FOLLOW_COMMA_SYMBOL_in_join_table_list5725_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_escaped_table_reference_in_join_table_list5727  */
static	ANTLR3_BITWORD FOLLOW_escaped_table_reference_in_join_table_list5727_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_escaped_table_reference_in_join_table_list5727	= { FOLLOW_escaped_table_reference_in_join_table_list5727_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_escaped_table_reference5744  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_escaped_table_reference5744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_escaped_table_reference5744	= { FOLLOW_table_reference_in_escaped_table_reference5744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5749  */
static	ANTLR3_BITWORD FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5749_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5749	= { FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5749_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_escaped_table_reference5751  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_escaped_table_reference5751_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_escaped_table_reference5751	= { FOLLOW_identifier_in_escaped_table_reference5751_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_escaped_table_reference5753  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_escaped_table_reference5753_bits[]	= { ANTLR3_UINT64_LIT(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_table_reference_in_escaped_table_reference5753	= { FOLLOW_table_reference_in_escaped_table_reference5753_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5755  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5755_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5755	= { FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5755_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_table_reference5765  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_table_reference5765_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(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200800002000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_table_reference5765	= { FOLLOW_table_factor_in_table_reference5765_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_in_table_reference5781  */
static	ANTLR3_BITWORD FOLLOW_join_in_table_reference5781_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(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200800002000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_join_in_table_reference5781	= { FOLLOW_join_in_table_reference5781_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_in_join5792  */
static	ANTLR3_BITWORD FOLLOW_join_table_in_join5792_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_table_in_join5792	= { FOLLOW_join_table_in_join5792_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_table_factor5809  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_table_factor5809_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_table_factor5809	= { FOLLOW_SELECT_SYMBOL_in_table_factor5809_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_option_in_table_factor5825  */
static	ANTLR3_BITWORD FOLLOW_select_option_in_table_factor5825_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_select_option_in_table_factor5825	= { FOLLOW_select_option_in_table_factor5825_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_item_list_in_table_factor5829  */
static	ANTLR3_BITWORD FOLLOW_select_item_list_in_table_factor5829_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x5000000000000000), ANTLR3_UINT64_LIT(0x8000000000000600), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_item_list_in_table_factor5829	= { FOLLOW_select_item_list_in_table_factor5829_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_expression_in_table_factor5831  */
static	ANTLR3_BITWORD FOLLOW_table_expression_in_table_factor5831_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_expression_in_table_factor5831	= { FOLLOW_table_expression_in_table_factor5831_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5836  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5836_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000124000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5836	= { FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5836_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_table_factor_union_in_table_factor5838  */
static	ANTLR3_BITWORD FOLLOW_select_table_factor_union_in_table_factor5838_bits[]	= { ANTLR3_UINT64_LIT(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_select_table_factor_union_in_table_factor5838	= { FOLLOW_select_table_factor_union_in_table_factor5838_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5840  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5840_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000108), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5840	= { FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5840_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_table_factor5842  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_table_factor5842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_table_factor5842	= { FOLLOW_table_alias_in_table_factor5842_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_table_factor5848  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_table_factor5848_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000108), ANTLR3_UINT64_LIT(0x0400008020000000), ANTLR3_UINT64_LIT(0x00000000000A0000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_table_factor5848	= { FOLLOW_table_ref_in_table_factor5848_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_partition_in_table_factor5850  */
static	ANTLR3_BITWORD FOLLOW_use_partition_in_table_factor5850_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000108), ANTLR3_UINT64_LIT(0x0400008020000000), ANTLR3_UINT64_LIT(0x00000000000A0000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_use_partition_in_table_factor5850	= { FOLLOW_use_partition_in_table_factor5850_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_table_factor5853  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_table_factor5853_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(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_table_factor5853	= { FOLLOW_table_alias_in_table_factor5853_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_list_in_table_factor5856  */
static	ANTLR3_BITWORD FOLLOW_index_hint_list_in_table_factor5856_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_list_in_table_factor5856	= { FOLLOW_index_hint_list_in_table_factor5856_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_list_in_select_table_factor_union5867  */
static	ANTLR3_BITWORD FOLLOW_table_reference_list_in_select_table_factor_union5867_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_list_in_select_table_factor_union5867	= { FOLLOW_table_reference_list_in_select_table_factor_union5867_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_or_limit_in_select_table_factor_union5869  */
static	ANTLR3_BITWORD FOLLOW_order_by_or_limit_in_select_table_factor_union5869_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_or_limit_in_select_table_factor_union5869	= { FOLLOW_order_by_or_limit_in_select_table_factor_union5869_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_select_table_factor_union5874  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_select_table_factor_union5874_bits[]	= { 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(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_select_table_factor_union5874	= { FOLLOW_UNION_SYMBOL_in_select_table_factor_union5874_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_option_in_select_table_factor_union5876  */
static	ANTLR3_BITWORD FOLLOW_union_option_in_select_table_factor_union5876_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_union_option_in_select_table_factor_union5876	= { FOLLOW_union_option_in_select_table_factor_union5876_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_specification_in_select_table_factor_union5879  */
static	ANTLR3_BITWORD FOLLOW_query_specification_in_select_table_factor_union5879_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_query_specification_in_select_table_factor_union5879	= { FOLLOW_query_specification_in_select_table_factor_union5879_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_query_specification5890  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_query_specification5890_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810063100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A2A000E02), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_query_specification5890	= { FOLLOW_SELECT_SYMBOL_in_query_specification5890_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_part2_derived_in_query_specification5892  */
static	ANTLR3_BITWORD FOLLOW_select_part2_derived_in_query_specification5892_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x5000000000000000), ANTLR3_UINT64_LIT(0x8000000000000600), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000000000100020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_select_part2_derived_in_query_specification5892	= { FOLLOW_select_part2_derived_in_query_specification5892_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_expression_in_query_specification5894  */
static	ANTLR3_BITWORD FOLLOW_table_expression_in_query_specification5894_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_expression_in_query_specification5894	= { FOLLOW_table_expression_in_query_specification5894_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5899  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5899_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5899	= { FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5899_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_query_specification_in_query_specification5901  */
static	ANTLR3_BITWORD FOLLOW_query_specification_in_query_specification5901_bits[]	= { ANTLR3_UINT64_LIT(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_query_specification_in_query_specification5901	= { FOLLOW_query_specification_in_query_specification5901_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5903  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5903_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5903	= { FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5903_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_or_limit_in_query_specification5905  */
static	ANTLR3_BITWORD FOLLOW_order_by_or_limit_in_query_specification5905_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_or_limit_in_query_specification5905	= { FOLLOW_order_by_or_limit_in_query_specification5905_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table5925  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table5925_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table5925	= { FOLLOW_JOIN_SYMBOL_in_join_table5925_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_join_table5927  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_join_table5927_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_join_table5927	= { FOLLOW_table_reference_in_join_table5927_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_condition_in_join_table5941  */
static	ANTLR3_BITWORD FOLLOW_join_condition_in_join_table5941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_condition_in_join_table5941	= { FOLLOW_join_condition_in_join_table5941_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5948  */
static	ANTLR3_BITWORD FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5948_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5948	= { FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5948_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_join_table5950  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_join_table5950_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(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_join_table5950	= { FOLLOW_table_factor_in_join_table5950_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_join_table5964  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_join_table5964_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_join_table5964	= { FOLLOW_ON_SYMBOL_in_join_table5964_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_join_table5966  */
static	ANTLR3_BITWORD FOLLOW_expression_in_join_table5966_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_join_table5966	= { FOLLOW_expression_in_join_table5966_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_join_table5973  */
static	ANTLR3_BITWORD FOLLOW_set_in_join_table5973_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_join_table5973	= { FOLLOW_set_in_join_table5973_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTER_SYMBOL_in_join_table5981  */
static	ANTLR3_BITWORD FOLLOW_OUTER_SYMBOL_in_join_table5981_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OUTER_SYMBOL_in_join_table5981	= { FOLLOW_OUTER_SYMBOL_in_join_table5981_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table5984  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table5984_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table5984	= { FOLLOW_JOIN_SYMBOL_in_join_table5984_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_reference_in_join_table5986  */
static	ANTLR3_BITWORD FOLLOW_table_reference_in_join_table5986_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_table_reference_in_join_table5986	= { FOLLOW_table_reference_in_join_table5986_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_condition_in_join_table5988  */
static	ANTLR3_BITWORD FOLLOW_join_condition_in_join_table5988_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_join_condition_in_join_table5988	= { FOLLOW_join_condition_in_join_table5988_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATURAL_SYMBOL_in_join_table5993  */
static	ANTLR3_BITWORD FOLLOW_NATURAL_SYMBOL_in_join_table5993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NATURAL_SYMBOL_in_join_table5993	= { FOLLOW_NATURAL_SYMBOL_in_join_table5993_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_join_table5996  */
static	ANTLR3_BITWORD FOLLOW_set_in_join_table5996_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_join_table5996	= { FOLLOW_set_in_join_table5996_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OUTER_SYMBOL_in_join_table6004  */
static	ANTLR3_BITWORD FOLLOW_OUTER_SYMBOL_in_join_table6004_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OUTER_SYMBOL_in_join_table6004	= { FOLLOW_OUTER_SYMBOL_in_join_table6004_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_join_table6009  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_join_table6009_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_join_table6009	= { FOLLOW_JOIN_SYMBOL_in_join_table6009_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_factor_in_join_table6011  */
static	ANTLR3_BITWORD FOLLOW_table_factor_in_join_table6011_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_factor_in_join_table6011	= { FOLLOW_table_factor_in_join_table6011_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_join_condition6020  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_join_condition6020_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_join_condition6020	= { FOLLOW_ON_SYMBOL_in_join_condition6020_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_join_condition6022  */
static	ANTLR3_BITWORD FOLLOW_expression_in_join_condition6022_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_join_condition6022	= { FOLLOW_expression_in_join_condition6022_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_join_condition6027  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_join_condition6027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_USING_SYMBOL_in_join_condition6027	= { FOLLOW_USING_SYMBOL_in_join_condition6027_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_join_condition6029  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_join_condition6029_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_join_condition6029	= { FOLLOW_identifier_list_with_parentheses_in_join_condition6029_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_union_clause6039  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_union_clause6039_bits[]	= { 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(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_union_clause6039	= { FOLLOW_UNION_SYMBOL_in_union_clause6039_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_option_in_union_clause6042  */
static	ANTLR3_BITWORD FOLLOW_union_option_in_union_clause6042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_union_option_in_union_clause6042	= { FOLLOW_union_option_in_union_clause6042_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_union_clause6045  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_union_clause6045_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_union_clause6045	= { FOLLOW_select_statement_in_union_clause6045_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_union_clause_in_union_or_order_by_or_limit6070  */
static	ANTLR3_BITWORD FOLLOW_union_clause_in_union_or_order_by_or_limit6070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_union_clause_in_union_or_order_by_or_limit6070	= { FOLLOW_union_clause_in_union_or_order_by_or_limit6070_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6075  */
static	ANTLR3_BITWORD FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6075	= { FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6075_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_select_lock_type6084  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_select_lock_type6084_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_FOR_SYMBOL_in_select_lock_type6084	= { FOLLOW_FOR_SYMBOL_in_select_lock_type6084_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_select_lock_type6086  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_select_lock_type6086_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_select_lock_type6086	= { FOLLOW_UPDATE_SYMBOL_in_select_lock_type6086_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_select_lock_type6091  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_select_lock_type6091_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOCK_SYMBOL_in_select_lock_type6091	= { FOLLOW_LOCK_SYMBOL_in_select_lock_type6091_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_select_lock_type6093  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_select_lock_type6093_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_select_lock_type6093	= { FOLLOW_IN_SYMBOL_in_select_lock_type6093_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHARE_SYMBOL_in_select_lock_type6095  */
static	ANTLR3_BITWORD FOLLOW_SHARE_SYMBOL_in_select_lock_type6095_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SHARE_SYMBOL_in_select_lock_type6095	= { FOLLOW_SHARE_SYMBOL_in_select_lock_type6095_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_select_lock_type6097  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_select_lock_type6097_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MODE_SYMBOL_in_select_lock_type6097	= { FOLLOW_MODE_SYMBOL_in_select_lock_type6097_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_alias6115  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_alias6115_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_alias6115	= { FOLLOW_identifier_in_table_alias6115_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_in_index_hint_list6124  */
static	ANTLR3_BITWORD FOLLOW_index_hint_in_index_hint_list6124_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_in_index_hint_list6124	= { FOLLOW_index_hint_in_index_hint_list6124_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_hint_list6127  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_hint_list6127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_hint_list6127	= { FOLLOW_COMMA_SYMBOL_in_index_hint_list6127_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_in_index_hint_list6129  */
static	ANTLR3_BITWORD FOLLOW_index_hint_in_index_hint_list6129_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_in_index_hint_list6129	= { FOLLOW_index_hint_in_index_hint_list6129_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_type_in_index_hint6155  */
static	ANTLR3_BITWORD FOLLOW_index_hint_type_in_index_hint6155_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_hint_type_in_index_hint6155	= { FOLLOW_index_hint_type_in_index_hint6155_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_or_index_in_index_hint6157  */
static	ANTLR3_BITWORD FOLLOW_key_or_index_in_index_hint6157_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_key_or_index_in_index_hint6157	= { FOLLOW_key_or_index_in_index_hint6157_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_clause_in_index_hint6159  */
static	ANTLR3_BITWORD FOLLOW_index_hint_clause_in_index_hint6159_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_index_hint_clause_in_index_hint6159	= { FOLLOW_index_hint_clause_in_index_hint6159_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6162  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6162_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6162	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6162_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_in_index_hint6164  */
static	ANTLR3_BITWORD FOLLOW_index_list_in_index_hint6164_bits[]	= { ANTLR3_UINT64_LIT(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_index_list_in_index_hint6164	= { FOLLOW_index_list_in_index_hint6164_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6166  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6166_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6166	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6166_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_index_hint6171  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_index_hint6171_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_index_hint6171	= { FOLLOW_USE_SYMBOL_in_index_hint6171_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_or_index_in_index_hint6173  */
static	ANTLR3_BITWORD FOLLOW_key_or_index_in_index_hint6173_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_key_or_index_in_index_hint6173	= { FOLLOW_key_or_index_in_index_hint6173_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_hint_clause_in_index_hint6175  */
static	ANTLR3_BITWORD FOLLOW_index_hint_clause_in_index_hint6175_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_index_hint_clause_in_index_hint6175	= { FOLLOW_index_hint_clause_in_index_hint6175_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6178  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6178_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6178	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6178_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_in_index_hint6180  */
static	ANTLR3_BITWORD FOLLOW_index_list_in_index_hint6180_bits[]	= { ANTLR3_UINT64_LIT(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_index_list_in_index_hint6180	= { FOLLOW_index_list_in_index_hint6180_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6183  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6183_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6183	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6183_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_index_hint_clause6220  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_index_hint_clause6220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000200), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_index_hint_clause6220	= { FOLLOW_FOR_SYMBOL_in_index_hint_clause6220_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JOIN_SYMBOL_in_index_hint_clause6223  */
static	ANTLR3_BITWORD FOLLOW_JOIN_SYMBOL_in_index_hint_clause6223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_JOIN_SYMBOL_in_index_hint_clause6223	= { FOLLOW_JOIN_SYMBOL_in_index_hint_clause6223_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ORDER_SYMBOL_in_index_hint_clause6227  */
static	ANTLR3_BITWORD FOLLOW_ORDER_SYMBOL_in_index_hint_clause6227_bits[]	= { ANTLR3_UINT64_LIT(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_ORDER_SYMBOL_in_index_hint_clause6227	= { FOLLOW_ORDER_SYMBOL_in_index_hint_clause6227_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_index_hint_clause6229  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_index_hint_clause6229_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_index_hint_clause6229	= { FOLLOW_BY_SYMBOL_in_index_hint_clause6229_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_SYMBOL_in_index_hint_clause6233  */
static	ANTLR3_BITWORD FOLLOW_GROUP_SYMBOL_in_index_hint_clause6233_bits[]	= { ANTLR3_UINT64_LIT(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_GROUP_SYMBOL_in_index_hint_clause6233	= { FOLLOW_GROUP_SYMBOL_in_index_hint_clause6233_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_index_hint_clause6235  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_index_hint_clause6235_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_index_hint_clause6235	= { FOLLOW_BY_SYMBOL_in_index_hint_clause6235_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_element_in_index_list6245  */
static	ANTLR3_BITWORD FOLLOW_index_list_element_in_index_list6245_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_list_element_in_index_list6245	= { FOLLOW_index_list_element_in_index_list6245_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_list6248  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_list6248_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_list6248	= { FOLLOW_COMMA_SYMBOL_in_index_list6248_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_list_element_in_index_list6250  */
static	ANTLR3_BITWORD FOLLOW_index_list_element_in_index_list6250_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_list_element_in_index_list6250	= { FOLLOW_index_list_element_in_index_list6250_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_list_element6261  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_list_element6261_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_list_element6261	= { FOLLOW_identifier_in_index_list_element6261_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_index_list_element6266  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_index_list_element6266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_index_list_element6266	= { FOLLOW_PRIMARY_SYMBOL_in_index_list_element6266_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_update_statement6277  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_update_statement6277_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x00000000000A0000), ANTLR3_UINT64_LIT(0x8000000000100000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_update_statement6277	= { FOLLOW_UPDATE_SYMBOL_in_update_statement6277_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6280  */
static	ANTLR3_BITWORD FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6280_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x00000000000A0000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6280	= { FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6280_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_update_statement6283  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_update_statement6283_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_update_statement6283	= { FOLLOW_IGNORE_SYMBOL_in_update_statement6283_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_join_table_list_in_update_statement6286  */
static	ANTLR3_BITWORD FOLLOW_join_table_list_in_update_statement6286_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_join_table_list_in_update_statement6286	= { FOLLOW_join_table_list_in_update_statement6286_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_update_statement6290  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_update_statement6290_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_update_statement6290	= { FOLLOW_SET_SYMBOL_in_update_statement6290_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_list_with_default_in_update_statement6292  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_list_with_default_in_update_statement6292_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_list_with_default_in_update_statement6292	= { FOLLOW_column_assignment_list_with_default_in_update_statement6292_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_update_statement6294  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_update_statement6294_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(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_update_statement6294	= { FOLLOW_where_clause_in_update_statement6294_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_update_statement6297  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_update_statement6297_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_update_statement6297	= { FOLLOW_order_by_clause_in_update_statement6297_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_simple_limit_clause_in_update_statement6300  */
static	ANTLR3_BITWORD FOLLOW_simple_limit_clause_in_update_statement6300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_simple_limit_clause_in_update_statement6300	= { FOLLOW_simple_limit_clause_in_update_statement6300_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_statement_in_transaction_or_locking_statement6312  */
static	ANTLR3_BITWORD FOLLOW_transaction_statement_in_transaction_or_locking_statement6312_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_statement_in_transaction_or_locking_statement6312	= { FOLLOW_transaction_statement_in_transaction_or_locking_statement6312_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_savepoint_statement_in_transaction_or_locking_statement6317  */
static	ANTLR3_BITWORD FOLLOW_savepoint_statement_in_transaction_or_locking_statement6317_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_savepoint_statement_in_transaction_or_locking_statement6317	= { FOLLOW_savepoint_statement_in_transaction_or_locking_statement6317_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_statement_in_transaction_or_locking_statement6322  */
static	ANTLR3_BITWORD FOLLOW_lock_statement_in_transaction_or_locking_statement6322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_statement_in_transaction_or_locking_statement6322	= { FOLLOW_lock_statement_in_transaction_or_locking_statement6322_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xa_statement_in_transaction_or_locking_statement6327  */
static	ANTLR3_BITWORD FOLLOW_xa_statement_in_transaction_or_locking_statement6327_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xa_statement_in_transaction_or_locking_statement6327	= { FOLLOW_xa_statement_in_transaction_or_locking_statement6327_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_SYMBOL_in_transaction_statement6336  */
static	ANTLR3_BITWORD FOLLOW_START_SYMBOL_in_transaction_statement6336_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) };
static  ANTLR3_BITSET_LIST FOLLOW_START_SYMBOL_in_transaction_statement6336	= { FOLLOW_START_SYMBOL_in_transaction_statement6336_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6339  */
static	ANTLR3_BITWORD FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6339_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(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6339	= { FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6339_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_transaction_characteristic_in_transaction_statement6341  */
static	ANTLR3_BITWORD FOLLOW_transaction_characteristic_in_transaction_statement6341_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(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_transaction_characteristic_in_transaction_statement6341	= { FOLLOW_transaction_characteristic_in_transaction_statement6341_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEGIN_SYMBOL_in_transaction_statement6347  */
static	ANTLR3_BITWORD FOLLOW_BEGIN_SYMBOL_in_transaction_statement6347_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_BEGIN_SYMBOL_in_transaction_statement6347	= { FOLLOW_BEGIN_SYMBOL_in_transaction_statement6347_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_transaction_statement6350  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_transaction_statement6350_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_transaction_statement6350	= { FOLLOW_WORK_SYMBOL_in_transaction_statement6350_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMIT_SYMBOL_in_transaction_statement6356  */
static	ANTLR3_BITWORD FOLLOW_COMMIT_SYMBOL_in_transaction_statement6356_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8008000000000000), 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_COMMIT_SYMBOL_in_transaction_statement6356	= { FOLLOW_COMMIT_SYMBOL_in_transaction_statement6356_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_transaction_statement6359  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_transaction_statement6359_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_transaction_statement6359	= { FOLLOW_WORK_SYMBOL_in_transaction_statement6359_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_transaction_statement6363  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_transaction_statement6363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_transaction_statement6363	= { FOLLOW_AND_SYMBOL_in_transaction_statement6363_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement6365  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement6365_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_transaction_statement6365	= { FOLLOW_NO_SYMBOL_in_transaction_statement6365_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAIN_SYMBOL_in_transaction_statement6368  */
static	ANTLR3_BITWORD FOLLOW_CHAIN_SYMBOL_in_transaction_statement6368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHAIN_SYMBOL_in_transaction_statement6368	= { FOLLOW_CHAIN_SYMBOL_in_transaction_statement6368_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement6373  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement6373_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NO_SYMBOL_in_transaction_statement6373	= { FOLLOW_NO_SYMBOL_in_transaction_statement6373_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_transaction_statement6376  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_transaction_statement6376_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_transaction_statement6376	= { FOLLOW_RELEASE_SYMBOL_in_transaction_statement6376_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6383  */
static	ANTLR3_BITWORD FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6383_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6383	= { FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6383_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WORK_SYMBOL_in_transaction_statement6386  */
static	ANTLR3_BITWORD FOLLOW_WORK_SYMBOL_in_transaction_statement6386_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WORK_SYMBOL_in_transaction_statement6386	= { FOLLOW_WORK_SYMBOL_in_transaction_statement6386_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_transaction_statement6397  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_transaction_statement6397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_transaction_statement6397	= { FOLLOW_AND_SYMBOL_in_transaction_statement6397_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement6399  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement6399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_transaction_statement6399	= { FOLLOW_NO_SYMBOL_in_transaction_statement6399_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAIN_SYMBOL_in_transaction_statement6402  */
static	ANTLR3_BITWORD FOLLOW_CHAIN_SYMBOL_in_transaction_statement6402_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHAIN_SYMBOL_in_transaction_statement6402	= { FOLLOW_CHAIN_SYMBOL_in_transaction_statement6402_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_transaction_statement6407  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_transaction_statement6407_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NO_SYMBOL_in_transaction_statement6407	= { FOLLOW_NO_SYMBOL_in_transaction_statement6407_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_transaction_statement6410  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_transaction_statement6410_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_transaction_statement6410	= { FOLLOW_RELEASE_SYMBOL_in_transaction_statement6410_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_transaction_statement6419  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_transaction_statement6419_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_transaction_statement6419	= { FOLLOW_TO_SYMBOL_in_transaction_statement6419_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6421  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6421_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6421	= { FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6421_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_transaction_statement6424  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_transaction_statement6424_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_transaction_statement6424	= { FOLLOW_identifier_in_transaction_statement6424_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_transaction_characteristic6444  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_transaction_characteristic6444_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_transaction_characteristic6444	= { FOLLOW_WITH_SYMBOL_in_transaction_characteristic6444_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6446  */
static	ANTLR3_BITWORD FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6446	= { FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6446_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6448  */
static	ANTLR3_BITWORD FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6448_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6448	= { FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6448_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_transaction_characteristic6455  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_transaction_characteristic6455_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_transaction_characteristic6455	= { FOLLOW_READ_SYMBOL_in_transaction_characteristic6455_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_transaction_characteristic6457  */
static	ANTLR3_BITWORD FOLLOW_set_in_transaction_characteristic6457_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_transaction_characteristic6457	= { FOLLOW_set_in_transaction_characteristic6457_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6472  */
static	ANTLR3_BITWORD FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6472	= { FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6472_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6474  */
static	ANTLR3_BITWORD FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6474_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000002000000), 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_LEVEL_SYMBOL_in_set_transaction_characteristic6474	= { FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6474_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_isolation_level_in_set_transaction_characteristic6476  */
static	ANTLR3_BITWORD FOLLOW_isolation_level_in_set_transaction_characteristic6476_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_isolation_level_in_set_transaction_characteristic6476	= { FOLLOW_isolation_level_in_set_transaction_characteristic6476_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6483  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6483_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6483	= { FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6483_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_set_transaction_characteristic6485  */
static	ANTLR3_BITWORD FOLLOW_set_in_set_transaction_characteristic6485_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_set_transaction_characteristic6485	= { FOLLOW_set_in_set_transaction_characteristic6485_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEATABLE_SYMBOL_in_isolation_level6500  */
static	ANTLR3_BITWORD FOLLOW_REPEATABLE_SYMBOL_in_isolation_level6500_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPEATABLE_SYMBOL_in_isolation_level6500	= { FOLLOW_REPEATABLE_SYMBOL_in_isolation_level6500_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_isolation_level6502  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_isolation_level6502_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_isolation_level6502	= { FOLLOW_READ_SYMBOL_in_isolation_level6502_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_isolation_level6507  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_isolation_level6507_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_isolation_level6507	= { FOLLOW_READ_SYMBOL_in_isolation_level6507_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_isolation_level6509  */
static	ANTLR3_BITWORD FOLLOW_set_in_isolation_level6509_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_isolation_level6509	= { FOLLOW_set_in_isolation_level6509_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6520  */
static	ANTLR3_BITWORD FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6520_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6520	= { FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6520_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6529  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6529_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6529	= { FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6529_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_savepoint_statement6532  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_savepoint_statement6532_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_savepoint_statement6532	= { FOLLOW_identifier_in_savepoint_statement6532_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6537  */
static	ANTLR3_BITWORD FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6537_bits[]	= { ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6537	= { FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6537_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6540  */
static	ANTLR3_BITWORD FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6540_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6540	= { FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6540_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_savepoint_statement6542  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_savepoint_statement6542_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_savepoint_statement6542	= { FOLLOW_identifier_in_savepoint_statement6542_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_lock_statement6551  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_lock_statement6551_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_lock_statement6551	= { FOLLOW_LOCK_SYMBOL_in_lock_statement6551_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_lock_statement6554  */
static	ANTLR3_BITWORD FOLLOW_set_in_lock_statement6554_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_lock_statement6554	= { FOLLOW_set_in_lock_statement6554_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_item_in_lock_statement6562  */
static	ANTLR3_BITWORD FOLLOW_lock_item_in_lock_statement6562_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_item_in_lock_statement6562	= { FOLLOW_lock_item_in_lock_statement6562_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_lock_statement6565  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_lock_statement6565_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_lock_statement6565	= { FOLLOW_COMMA_SYMBOL_in_lock_statement6565_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_item_in_lock_statement6567  */
static	ANTLR3_BITWORD FOLLOW_lock_item_in_lock_statement6567_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_item_in_lock_statement6567	= { FOLLOW_lock_item_in_lock_statement6567_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNLOCK_SYMBOL_in_lock_statement6574  */
static	ANTLR3_BITWORD FOLLOW_UNLOCK_SYMBOL_in_lock_statement6574_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNLOCK_SYMBOL_in_lock_statement6574	= { FOLLOW_UNLOCK_SYMBOL_in_lock_statement6574_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_lock_statement6577  */
static	ANTLR3_BITWORD FOLLOW_set_in_lock_statement6577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_lock_statement6577	= { FOLLOW_set_in_lock_statement6577_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_lock_item6592  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_lock_item6592_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000108), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_lock_item6592	= { FOLLOW_table_ref_in_lock_item6592_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_alias_in_lock_item6594  */
static	ANTLR3_BITWORD FOLLOW_table_alias_in_lock_item6594_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000001000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_alias_in_lock_item6594	= { FOLLOW_table_alias_in_lock_item6594_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_lock_option_in_lock_item6597  */
static	ANTLR3_BITWORD FOLLOW_lock_option_in_lock_item6597_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_lock_option_in_lock_item6597	= { FOLLOW_lock_option_in_lock_item6597_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_lock_option6606  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_lock_option6606_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_READ_SYMBOL_in_lock_option6606	= { FOLLOW_READ_SYMBOL_in_lock_option6606_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_lock_option6608  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_lock_option6608_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCAL_SYMBOL_in_lock_option6608	= { FOLLOW_LOCAL_SYMBOL_in_lock_option6608_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_option6614  */
static	ANTLR3_BITWORD FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_option6614_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOW_PRIORITY_SYMBOL_in_lock_option6614	= { FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_option6614_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WRITE_SYMBOL_in_lock_option6617  */
static	ANTLR3_BITWORD FOLLOW_WRITE_SYMBOL_in_lock_option6617_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WRITE_SYMBOL_in_lock_option6617	= { FOLLOW_WRITE_SYMBOL_in_lock_option6617_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XA_SYMBOL_in_xa_statement6627  */
static	ANTLR3_BITWORD FOLLOW_XA_SYMBOL_in_xa_statement6627_bits[]	= { ANTLR3_UINT64_LIT(0x0008084000088100), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_XA_SYMBOL_in_xa_statement6627	= { FOLLOW_XA_SYMBOL_in_xa_statement6627_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_xa_statement6637  */
static	ANTLR3_BITWORD FOLLOW_set_in_xa_statement6637_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_xa_statement6637	= { FOLLOW_set_in_xa_statement6637_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6645  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6645_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement6645	= { FOLLOW_xid_in_xa_statement6645_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_xa_statement6661  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_xa_statement6661_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_xa_statement6661	= { FOLLOW_END_SYMBOL_in_xa_statement6661_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6663  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6663_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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_xid_in_xa_statement6663	= { FOLLOW_xid_in_xa_statement6663_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUSPEND_SYMBOL_in_xa_statement6666  */
static	ANTLR3_BITWORD FOLLOW_SUSPEND_SYMBOL_in_xa_statement6666_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUSPEND_SYMBOL_in_xa_statement6666	= { FOLLOW_SUSPEND_SYMBOL_in_xa_statement6666_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_xa_statement6669  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_xa_statement6669_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_xa_statement6669	= { FOLLOW_FOR_SYMBOL_in_xa_statement6669_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIGRATE_SYMBOL_in_xa_statement6671  */
static	ANTLR3_BITWORD FOLLOW_MIGRATE_SYMBOL_in_xa_statement6671_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MIGRATE_SYMBOL_in_xa_statement6671	= { FOLLOW_MIGRATE_SYMBOL_in_xa_statement6671_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_xa_statement6682  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_xa_statement6682_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_xa_statement6682	= { FOLLOW_PREPARE_SYMBOL_in_xa_statement6682_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6684  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement6684	= { FOLLOW_xid_in_xa_statement6684_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMIT_SYMBOL_in_xa_statement6691  */
static	ANTLR3_BITWORD FOLLOW_COMMIT_SYMBOL_in_xa_statement6691_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMIT_SYMBOL_in_xa_statement6691	= { FOLLOW_COMMIT_SYMBOL_in_xa_statement6691_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6693  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6693_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement6693	= { FOLLOW_xid_in_xa_statement6693_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ONE_SYMBOL_in_xa_statement6696  */
static	ANTLR3_BITWORD FOLLOW_ONE_SYMBOL_in_xa_statement6696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ONE_SYMBOL_in_xa_statement6696	= { FOLLOW_ONE_SYMBOL_in_xa_statement6696_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PHASE_SYMBOL_in_xa_statement6698  */
static	ANTLR3_BITWORD FOLLOW_PHASE_SYMBOL_in_xa_statement6698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PHASE_SYMBOL_in_xa_statement6698	= { FOLLOW_PHASE_SYMBOL_in_xa_statement6698_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6707  */
static	ANTLR3_BITWORD FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6707_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6707	= { FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6707_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xid_in_xa_statement6709  */
static	ANTLR3_BITWORD FOLLOW_xid_in_xa_statement6709_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xid_in_xa_statement6709	= { FOLLOW_xid_in_xa_statement6709_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RECOVER_SYMBOL_in_xa_statement6716  */
static	ANTLR3_BITWORD FOLLOW_RECOVER_SYMBOL_in_xa_statement6716_bits[]	= { ANTLR3_UINT64_LIT(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_RECOVER_SYMBOL_in_xa_statement6716	= { FOLLOW_RECOVER_SYMBOL_in_xa_statement6716_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_xa_convert_in_xa_statement6718  */
static	ANTLR3_BITWORD FOLLOW_xa_convert_in_xa_statement6718_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_xa_convert_in_xa_statement6718	= { FOLLOW_xa_convert_in_xa_statement6718_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONVERT_SYMBOL_in_xa_convert6734  */
static	ANTLR3_BITWORD FOLLOW_CONVERT_SYMBOL_in_xa_convert6734_bits[]	= { 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_CONVERT_SYMBOL_in_xa_convert6734	= { FOLLOW_CONVERT_SYMBOL_in_xa_convert6734_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XID_SYMBOL_in_xa_convert6736  */
static	ANTLR3_BITWORD FOLLOW_XID_SYMBOL_in_xa_convert6736_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_XID_SYMBOL_in_xa_convert6736	= { FOLLOW_XID_SYMBOL_in_xa_convert6736_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_xid6752  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_xid6752_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_xid6752	= { FOLLOW_text_string_in_xid6752_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_xid6755  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_xid6755_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_xid6755	= { FOLLOW_COMMA_SYMBOL_in_xid6755_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_xid6757  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_xid6757_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_xid6757	= { FOLLOW_text_string_in_xid6757_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_xid6760  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_xid6760_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_xid6760	= { FOLLOW_COMMA_SYMBOL_in_xid6760_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_xid6762  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_xid6762_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_xid6762	= { FOLLOW_ulong_number_in_xid6762_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PURGE_SYMBOL_in_replication_statement6801  */
static	ANTLR3_BITWORD FOLLOW_PURGE_SYMBOL_in_replication_statement6801_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_PURGE_SYMBOL_in_replication_statement6801	= { FOLLOW_PURGE_SYMBOL_in_replication_statement6801_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_replication_statement6804  */
static	ANTLR3_BITWORD FOLLOW_set_in_replication_statement6804_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_replication_statement6804	= { FOLLOW_set_in_replication_statement6804_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_replication_statement6812  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_replication_statement6812_bits[]	= { ANTLR3_UINT64_LIT(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), 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_LOGS_SYMBOL_in_replication_statement6812	= { FOLLOW_LOGS_SYMBOL_in_replication_statement6812_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_replication_statement6815  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_replication_statement6815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_replication_statement6815	= { FOLLOW_TO_SYMBOL_in_replication_statement6815_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_replication_statement6817  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_replication_statement6817_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_replication_statement6817	= { FOLLOW_string_literal_in_replication_statement6817_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEFORE_SYMBOL_in_replication_statement6821  */
static	ANTLR3_BITWORD FOLLOW_BEFORE_SYMBOL_in_replication_statement6821_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BEFORE_SYMBOL_in_replication_statement6821	= { FOLLOW_BEFORE_SYMBOL_in_replication_statement6821_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_replication_statement6823  */
static	ANTLR3_BITWORD FOLLOW_expression_in_replication_statement6823_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_replication_statement6823	= { FOLLOW_expression_in_replication_statement6823_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_master_in_replication_statement6829  */
static	ANTLR3_BITWORD FOLLOW_change_master_in_replication_statement6829_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_change_master_in_replication_statement6829	= { FOLLOW_change_master_in_replication_statement6829_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_replication_in_replication_statement6836  */
static	ANTLR3_BITWORD FOLLOW_change_replication_in_replication_statement6836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_change_replication_in_replication_statement6836	= { FOLLOW_change_replication_in_replication_statement6836_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_in_replication_statement6844  */
static	ANTLR3_BITWORD FOLLOW_slave_in_replication_statement6844_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_in_replication_statement6844	= { FOLLOW_slave_in_replication_statement6844_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replication_load_in_replication_statement6851  */
static	ANTLR3_BITWORD FOLLOW_replication_load_in_replication_statement6851_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replication_load_in_replication_statement6851	= { FOLLOW_replication_load_in_replication_statement6851_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_replication_in_replication_statement6858  */
static	ANTLR3_BITWORD FOLLOW_group_replication_in_replication_statement6858_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_group_replication_in_replication_statement6858	= { FOLLOW_group_replication_in_replication_statement6858_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_replication_load6867  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_replication_load6867_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LOAD_SYMBOL_in_replication_load6867	= { FOLLOW_LOAD_SYMBOL_in_replication_load6867_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_replication_load6871  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_replication_load6871_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DATA_SYMBOL_in_replication_load6871	= { FOLLOW_DATA_SYMBOL_in_replication_load6871_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_replication_load6875  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_replication_load6875_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_replication_load6875	= { FOLLOW_TABLE_SYMBOL_in_replication_load6875_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_replication_load6877  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_replication_load6877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_in_replication_load6877	= { FOLLOW_table_ref_in_replication_load6877_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_replication_load6880  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_replication_load6880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_replication_load6880	= { FOLLOW_FROM_SYMBOL_in_replication_load6880_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_replication_load6882  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_replication_load6882_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SYMBOL_in_replication_load6882	= { FOLLOW_MASTER_SYMBOL_in_replication_load6882_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_change_master6891  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_change_master6891_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGE_SYMBOL_in_change_master6891	= { FOLLOW_CHANGE_SYMBOL_in_change_master6891_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_change_master6894  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_change_master6894_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SYMBOL_in_change_master6894	= { FOLLOW_MASTER_SYMBOL_in_change_master6894_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_change_master6896  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_change_master6896_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0xFC00000200000000), ANTLR3_UINT64_LIT(0x0000000000003FFD), ANTLR3_UINT64_LIT(0x0000000000300000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000600000) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_change_master6896	= { FOLLOW_TO_SYMBOL_in_change_master6896_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_change_master_options_in_change_master6898  */
static	ANTLR3_BITWORD FOLLOW_change_master_options_in_change_master6898_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_change_master_options_in_change_master6898	= { FOLLOW_change_master_options_in_change_master6898_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_change_master6900  */
static	ANTLR3_BITWORD FOLLOW_channel_in_change_master6900_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_change_master6900	= { FOLLOW_channel_in_change_master6900_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_option_in_change_master_options6910  */
static	ANTLR3_BITWORD FOLLOW_master_option_in_change_master_options6910_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_master_option_in_change_master_options6910	= { FOLLOW_master_option_in_change_master_options6910_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_change_master_options6913  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_change_master_options6913_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0xFC00000200000000), ANTLR3_UINT64_LIT(0x0000000000003FFD), ANTLR3_UINT64_LIT(0x0000000000300000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000600000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_change_master_options6913	= { FOLLOW_COMMA_SYMBOL_in_change_master_options6913_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_option_in_change_master_options6915  */
static	ANTLR3_BITWORD FOLLOW_master_option_in_change_master_options6915_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_master_option_in_change_master_options6915	= { FOLLOW_master_option_in_change_master_options6915_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_HOST_SYMBOL_in_master_option6941  */
static	ANTLR3_BITWORD FOLLOW_MASTER_HOST_SYMBOL_in_master_option6941_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_HOST_SYMBOL_in_master_option6941	= { FOLLOW_MASTER_HOST_SYMBOL_in_master_option6941_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6943  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6943_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6943	= { FOLLOW_EQUAL_OPERATOR_in_master_option6943_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option6945  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option6945_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option6945	= { FOLLOW_text_string_no_linebreak_in_master_option6945_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_BIND_SYMBOL_in_master_option6950  */
static	ANTLR3_BITWORD FOLLOW_MASTER_BIND_SYMBOL_in_master_option6950_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_BIND_SYMBOL_in_master_option6950	= { FOLLOW_MASTER_BIND_SYMBOL_in_master_option6950_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6952  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6952_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6952	= { FOLLOW_EQUAL_OPERATOR_in_master_option6952_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option6954  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option6954_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option6954	= { FOLLOW_text_string_no_linebreak_in_master_option6954_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_USER_SYMBOL_in_master_option6959  */
static	ANTLR3_BITWORD FOLLOW_MASTER_USER_SYMBOL_in_master_option6959_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_USER_SYMBOL_in_master_option6959	= { FOLLOW_MASTER_USER_SYMBOL_in_master_option6959_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6961  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6961_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6961	= { FOLLOW_EQUAL_OPERATOR_in_master_option6961_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option6963  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option6963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option6963	= { FOLLOW_text_string_no_linebreak_in_master_option6963_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option6968  */
static	ANTLR3_BITWORD FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option6968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_PASSWORD_SYMBOL_in_master_option6968	= { FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option6968_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6970  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6970_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6970	= { FOLLOW_EQUAL_OPERATOR_in_master_option6970_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option6972  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option6972_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option6972	= { FOLLOW_text_string_no_linebreak_in_master_option6972_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_PORT_SYMBOL_in_master_option6977  */
static	ANTLR3_BITWORD FOLLOW_MASTER_PORT_SYMBOL_in_master_option6977_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_PORT_SYMBOL_in_master_option6977	= { FOLLOW_MASTER_PORT_SYMBOL_in_master_option6977_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6979  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6979_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6979	= { FOLLOW_EQUAL_OPERATOR_in_master_option6979_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option6981  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option6981_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option6981	= { FOLLOW_ulong_number_in_master_option6981_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option6986  */
static	ANTLR3_BITWORD FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option6986_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_CONNECT_RETRY_SYMBOL_in_master_option6986	= { FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option6986_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6988  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6988_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6988	= { FOLLOW_EQUAL_OPERATOR_in_master_option6988_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option6990  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option6990_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option6990	= { FOLLOW_ulong_number_in_master_option6990_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option6995  */
static	ANTLR3_BITWORD FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option6995_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_RETRY_COUNT_SYMBOL_in_master_option6995	= { FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option6995_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option6997  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option6997_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option6997	= { FOLLOW_EQUAL_OPERATOR_in_master_option6997_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option6999  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option6999_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option6999	= { FOLLOW_ulong_number_in_master_option6999_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_DELAY_SYMBOL_in_master_option7004  */
static	ANTLR3_BITWORD FOLLOW_MASTER_DELAY_SYMBOL_in_master_option7004_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_DELAY_SYMBOL_in_master_option7004	= { FOLLOW_MASTER_DELAY_SYMBOL_in_master_option7004_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7006  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7006_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7006	= { FOLLOW_EQUAL_OPERATOR_in_master_option7006_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7008  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7008_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7008	= { FOLLOW_ulong_number_in_master_option7008_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_SYMBOL_in_master_option7013  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_SYMBOL_in_master_option7013_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_SYMBOL_in_master_option7013	= { FOLLOW_MASTER_SSL_SYMBOL_in_master_option7013_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7015  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7015_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7015	= { FOLLOW_EQUAL_OPERATOR_in_master_option7015_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7017  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7017_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7017	= { FOLLOW_ulong_number_in_master_option7017_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option7022  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option7022_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CA_SYMBOL_in_master_option7022	= { FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option7022_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7024  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7024_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7024	= { FOLLOW_EQUAL_OPERATOR_in_master_option7024_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7026  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7026_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7026	= { FOLLOW_text_string_no_linebreak_in_master_option7026_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option7031  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option7031_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CAPATH_SYMBOL_in_master_option7031	= { FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option7031_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7033  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7033_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7033	= { FOLLOW_EQUAL_OPERATOR_in_master_option7033_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7035  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7035_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7035	= { FOLLOW_text_string_no_linebreak_in_master_option7035_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option7040  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option7040_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CERT_SYMBOL_in_master_option7040	= { FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option7040_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7042  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7042_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7042	= { FOLLOW_EQUAL_OPERATOR_in_master_option7042_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7044  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7044_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7044	= { FOLLOW_text_string_no_linebreak_in_master_option7044_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option7049  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option7049_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CIPHER_SYMBOL_in_master_option7049	= { FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option7049_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7051  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7051_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7051	= { FOLLOW_EQUAL_OPERATOR_in_master_option7051_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7053  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7053_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7053	= { FOLLOW_text_string_no_linebreak_in_master_option7053_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option7058  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option7058_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_KEY_SYMBOL_in_master_option7058	= { FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option7058_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7060  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7060_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7060	= { FOLLOW_EQUAL_OPERATOR_in_master_option7060_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7062  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7062_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7062	= { FOLLOW_text_string_no_linebreak_in_master_option7062_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7067  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7067_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7067	= { FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7067_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7069  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7069_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7069	= { FOLLOW_EQUAL_OPERATOR_in_master_option7069_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7071  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7071_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7071	= { FOLLOW_ulong_number_in_master_option7071_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option7076  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option7076_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CRL_SYMBOL_in_master_option7076	= { FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option7076_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7078  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7078_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7078	= { FOLLOW_EQUAL_OPERATOR_in_master_option7078_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_master_option7080  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_master_option7080_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_master_option7080	= { FOLLOW_string_literal_in_master_option7080_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7085  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7085_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7085	= { FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7085_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7087  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7087_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7087	= { FOLLOW_EQUAL_OPERATOR_in_master_option7087_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_option7089  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_option7089_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_option7089	= { FOLLOW_text_string_no_linebreak_in_master_option7089_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7094  */
static	ANTLR3_BITWORD FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7094_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7094	= { FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7094_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7096  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7096_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7096	= { FOLLOW_EQUAL_OPERATOR_in_master_option7096_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7098  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7098	= { FOLLOW_ulong_number_in_master_option7098_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option7103  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option7103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IGNORE_SERVER_IDS_SYMBOL_in_master_option7103	= { FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option7103_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7105  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7105_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_master_option7105	= { FOLLOW_EQUAL_OPERATOR_in_master_option7105_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_server_id_list_in_master_option7107  */
static	ANTLR3_BITWORD FOLLOW_server_id_list_in_master_option7107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_server_id_list_in_master_option7107	= { FOLLOW_server_id_list_in_master_option7107_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option7112  */
static	ANTLR3_BITWORD FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option7112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_AUTO_POSITION_SYMBOL_in_master_option7112	= { FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option7112_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_option7114  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_option7114_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_option7114	= { FOLLOW_EQUAL_OPERATOR_in_master_option7114_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_option7116  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_option7116_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_option7116	= { FOLLOW_ulong_number_in_master_option7116_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_file_def_in_master_option7121  */
static	ANTLR3_BITWORD FOLLOW_master_file_def_in_master_option7121_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_master_file_def_in_master_option7121	= { FOLLOW_master_file_def_in_master_option7121_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_file_def7130  */
static	ANTLR3_BITWORD FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_file_def7130_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_LOG_FILE_SYMBOL_in_master_file_def7130	= { FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_file_def7130_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_file_def7132  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_file_def7132_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_file_def7132	= { FOLLOW_EQUAL_OPERATOR_in_master_file_def7132_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_file_def7134  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_file_def7134_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_file_def7134	= { FOLLOW_text_string_no_linebreak_in_master_file_def7134_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_file_def7139  */
static	ANTLR3_BITWORD FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_file_def7139_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_MASTER_LOG_POS_SYMBOL_in_master_file_def7139	= { FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_file_def7139_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_file_def7141  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_file_def7141_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_file_def7141	= { FOLLOW_EQUAL_OPERATOR_in_master_file_def7141_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_master_file_def7143  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_master_file_def7143_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_master_file_def7143	= { FOLLOW_ulonglong_number_in_master_file_def7143_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_file_def7148  */
static	ANTLR3_BITWORD FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_file_def7148_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RELAY_LOG_FILE_SYMBOL_in_master_file_def7148	= { FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_file_def7148_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_file_def7150  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_file_def7150_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_file_def7150	= { FOLLOW_EQUAL_OPERATOR_in_master_file_def7150_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_master_file_def7152  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_master_file_def7152_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_master_file_def7152	= { FOLLOW_text_string_no_linebreak_in_master_file_def7152_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_file_def7157  */
static	ANTLR3_BITWORD FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_file_def7157_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RELAY_LOG_POS_SYMBOL_in_master_file_def7157	= { FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_file_def7157_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_master_file_def7159  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_master_file_def7159_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_master_file_def7159	= { FOLLOW_EQUAL_OPERATOR_in_master_file_def7159_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_master_file_def7161  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_master_file_def7161_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_master_file_def7161	= { FOLLOW_ulong_number_in_master_file_def7161_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7170  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7170_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7170	= { FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7170_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_server_id_list7173  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_server_id_list7173_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_server_id_list7173	= { FOLLOW_ulong_number_in_server_id_list7173_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_server_id_list7176  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_server_id_list7176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_server_id_list7176	= { FOLLOW_COMMA_SYMBOL_in_server_id_list7176_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_server_id_list7178  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_server_id_list7178_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_server_id_list7178	= { FOLLOW_ulong_number_in_server_id_list7178_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7184  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7184_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7184	= { FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7184_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGE_SYMBOL_in_change_replication7193  */
static	ANTLR3_BITWORD FOLLOW_CHANGE_SYMBOL_in_change_replication7193_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_CHANGE_SYMBOL_in_change_replication7193	= { FOLLOW_CHANGE_SYMBOL_in_change_replication7193_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATION_SYMBOL_in_change_replication7196  */
static	ANTLR3_BITWORD FOLLOW_REPLICATION_SYMBOL_in_change_replication7196_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLICATION_SYMBOL_in_change_replication7196	= { FOLLOW_REPLICATION_SYMBOL_in_change_replication7196_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FILTER_SYMBOL_in_change_replication7198  */
static	ANTLR3_BITWORD FOLLOW_FILTER_SYMBOL_in_change_replication7198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000003F8000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FILTER_SYMBOL_in_change_replication7198	= { FOLLOW_FILTER_SYMBOL_in_change_replication7198_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_definition_in_change_replication7200  */
static	ANTLR3_BITWORD FOLLOW_filter_definition_in_change_replication7200_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_definition_in_change_replication7200	= { FOLLOW_filter_definition_in_change_replication7200_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_change_replication7203  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_change_replication7203_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000003F8000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_change_replication7203	= { FOLLOW_COMMA_SYMBOL_in_change_replication7203_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_definition_in_change_replication7205  */
static	ANTLR3_BITWORD FOLLOW_filter_definition_in_change_replication7205_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_definition_in_change_replication7205	= { FOLLOW_filter_definition_in_change_replication7205_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_DO_DB_SYMBOL_in_filter_definition7216  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_DO_DB_SYMBOL_in_filter_definition7216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_DO_DB_SYMBOL_in_filter_definition7216	= { FOLLOW_REPLICATE_DO_DB_SYMBOL_in_filter_definition7216_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7218  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7218_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_filter_definition7218	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7218_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7220  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7220_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7220	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7220_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_db_list_in_filter_definition7222  */
static	ANTLR3_BITWORD FOLLOW_filter_db_list_in_filter_definition7222_bits[]	= { ANTLR3_UINT64_LIT(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_filter_db_list_in_filter_definition7222	= { FOLLOW_filter_db_list_in_filter_definition7222_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7225  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7225_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7225	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7225_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7230  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7230	= { FOLLOW_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7230_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7232  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7232_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_filter_definition7232	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7232_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7234  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7234_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7234	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7234_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_db_list_in_filter_definition7236  */
static	ANTLR3_BITWORD FOLLOW_filter_db_list_in_filter_definition7236_bits[]	= { ANTLR3_UINT64_LIT(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_filter_db_list_in_filter_definition7236	= { FOLLOW_filter_db_list_in_filter_definition7236_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7239  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7239	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7244  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7244_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7244	= { FOLLOW_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7244_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7246  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7246_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_filter_definition7246	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7246_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7248  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7248_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7248	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7248_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_table_list_in_filter_definition7250  */
static	ANTLR3_BITWORD FOLLOW_filter_table_list_in_filter_definition7250_bits[]	= { ANTLR3_UINT64_LIT(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_filter_table_list_in_filter_definition7250	= { FOLLOW_filter_table_list_in_filter_definition7250_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7253  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7253_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7253	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7253_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7258  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7258	= { FOLLOW_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7258_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7260  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7260_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_filter_definition7260	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7260_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7262  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7262_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7262	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7262_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_table_list_in_filter_definition7264  */
static	ANTLR3_BITWORD FOLLOW_filter_table_list_in_filter_definition7264_bits[]	= { ANTLR3_UINT64_LIT(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_filter_table_list_in_filter_definition7264	= { FOLLOW_filter_table_list_in_filter_definition7264_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7267  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7267_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7267	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7267_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7272  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7272_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7272	= { FOLLOW_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7272_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7274  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7274_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_filter_definition7274	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7274_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7276  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7276	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7276_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_string_list_in_filter_definition7278  */
static	ANTLR3_BITWORD FOLLOW_filter_string_list_in_filter_definition7278_bits[]	= { ANTLR3_UINT64_LIT(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_filter_string_list_in_filter_definition7278	= { FOLLOW_filter_string_list_in_filter_definition7278_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7281  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7281_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7281	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7281_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7286  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7286_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7286	= { FOLLOW_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7286_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7288  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7288_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_filter_definition7288	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7288_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7290  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7290_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7290	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7290_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_string_list_in_filter_definition7292  */
static	ANTLR3_BITWORD FOLLOW_filter_string_list_in_filter_definition7292_bits[]	= { ANTLR3_UINT64_LIT(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_filter_string_list_in_filter_definition7292	= { FOLLOW_filter_string_list_in_filter_definition7292_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7295  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7295_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7295	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7295_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7300  */
static	ANTLR3_BITWORD FOLLOW_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7300	= { FOLLOW_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7300_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_filter_definition7302  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_filter_definition7302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_filter_definition7302	= { FOLLOW_EQUAL_OPERATOR_in_filter_definition7302_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7304  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7304_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7304	= { FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7304_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_db_pair_list_in_filter_definition7306  */
static	ANTLR3_BITWORD FOLLOW_filter_db_pair_list_in_filter_definition7306_bits[]	= { ANTLR3_UINT64_LIT(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_filter_db_pair_list_in_filter_definition7306	= { FOLLOW_filter_db_pair_list_in_filter_definition7306_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7309  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7309	= { FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7309_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_filter_db_list7318  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_filter_db_list7318_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_filter_db_list7318	= { FOLLOW_schema_ref_in_filter_db_list7318_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_filter_db_list7321  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_filter_db_list7321_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_filter_db_list7321	= { FOLLOW_COMMA_SYMBOL_in_filter_db_list7321_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_filter_db_list7323  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_filter_db_list7323_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_filter_db_list7323	= { FOLLOW_schema_ref_in_filter_db_list7323_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_table_ref_in_filter_table_list7334  */
static	ANTLR3_BITWORD FOLLOW_filter_table_ref_in_filter_table_list7334_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_table_ref_in_filter_table_list7334	= { FOLLOW_filter_table_ref_in_filter_table_list7334_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_filter_table_list7337  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_filter_table_list7337_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_filter_table_list7337	= { FOLLOW_COMMA_SYMBOL_in_filter_table_list7337_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_table_ref_in_filter_table_list7339  */
static	ANTLR3_BITWORD FOLLOW_filter_table_ref_in_filter_table_list7339_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_table_ref_in_filter_table_list7339	= { FOLLOW_filter_table_ref_in_filter_table_list7339_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_wild_db_table_string_in_filter_string_list7350  */
static	ANTLR3_BITWORD FOLLOW_filter_wild_db_table_string_in_filter_string_list7350_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_wild_db_table_string_in_filter_string_list7350	= { FOLLOW_filter_wild_db_table_string_in_filter_string_list7350_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_filter_string_list7353  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_filter_string_list7353_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_filter_string_list7353	= { FOLLOW_COMMA_SYMBOL_in_filter_string_list7353_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_filter_wild_db_table_string_in_filter_string_list7355  */
static	ANTLR3_BITWORD FOLLOW_filter_wild_db_table_string_in_filter_string_list7355_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_filter_wild_db_table_string_in_filter_string_list7355	= { FOLLOW_filter_wild_db_table_string_in_filter_string_list7355_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7366  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7366	= { FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7366_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_identifier_pair_in_filter_db_pair_list7376  */
static	ANTLR3_BITWORD FOLLOW_schema_identifier_pair_in_filter_db_pair_list7376_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_identifier_pair_in_filter_db_pair_list7376	= { FOLLOW_schema_identifier_pair_in_filter_db_pair_list7376_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_filter_db_pair_list7379  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_filter_db_pair_list7379_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_COMMA_SYMBOL_in_filter_db_pair_list7379	= { FOLLOW_COMMA_SYMBOL_in_filter_db_pair_list7379_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_identifier_pair_in_filter_db_pair_list7381  */
static	ANTLR3_BITWORD FOLLOW_schema_identifier_pair_in_filter_db_pair_list7381_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_identifier_pair_in_filter_db_pair_list7381	= { FOLLOW_schema_identifier_pair_in_filter_db_pair_list7381_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_SYMBOL_in_slave7392  */
static	ANTLR3_BITWORD FOLLOW_START_SYMBOL_in_slave7392_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_START_SYMBOL_in_slave7392	= { FOLLOW_START_SYMBOL_in_slave7392_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_slave7395  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_slave7395_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1400000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x00000A0000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_slave7395	= { FOLLOW_SLAVE_SYMBOL_in_slave7395_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_thread_options_in_slave7397  */
static	ANTLR3_BITWORD FOLLOW_slave_thread_options_in_slave7397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1400000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000A0000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_thread_options_in_slave7397	= { FOLLOW_slave_thread_options_in_slave7397_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNTIL_SYMBOL_in_slave7401  */
static	ANTLR3_BITWORD FOLLOW_UNTIL_SYMBOL_in_slave7401_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x6000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1C00000000300000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNTIL_SYMBOL_in_slave7401	= { FOLLOW_UNTIL_SYMBOL_in_slave7401_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_until_options_in_slave7403  */
static	ANTLR3_BITWORD FOLLOW_slave_until_options_in_slave7403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1400000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000080000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_until_options_in_slave7403	= { FOLLOW_slave_until_options_in_slave7403_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_connection_options_in_slave7407  */
static	ANTLR3_BITWORD FOLLOW_slave_connection_options_in_slave7407_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_connection_options_in_slave7407	= { FOLLOW_slave_connection_options_in_slave7407_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_slave7409  */
static	ANTLR3_BITWORD FOLLOW_channel_in_slave7409_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_slave7409	= { FOLLOW_channel_in_slave7409_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STOP_SYMBOL_in_slave7415  */
static	ANTLR3_BITWORD FOLLOW_STOP_SYMBOL_in_slave7415_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STOP_SYMBOL_in_slave7415	= { FOLLOW_STOP_SYMBOL_in_slave7415_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_slave7418  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_slave7418_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_slave7418	= { FOLLOW_SLAVE_SYMBOL_in_slave7418_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_thread_options_in_slave7420  */
static	ANTLR3_BITWORD FOLLOW_slave_thread_options_in_slave7420_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_thread_options_in_slave7420	= { FOLLOW_slave_thread_options_in_slave7420_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_slave7423  */
static	ANTLR3_BITWORD FOLLOW_channel_in_slave7423_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_slave7423	= { FOLLOW_channel_in_slave7423_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_file_def_in_slave_until_options7437  */
static	ANTLR3_BITWORD FOLLOW_master_file_def_in_slave_until_options7437_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_master_file_def_in_slave_until_options7437	= { FOLLOW_master_file_def_in_slave_until_options7437_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_slave_until_options7445  */
static	ANTLR3_BITWORD FOLLOW_set_in_slave_until_options7445_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_set_in_slave_until_options7445	= { FOLLOW_set_in_slave_until_options7445_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_until_options7453  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_until_options7453_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_until_options7453	= { FOLLOW_EQUAL_OPERATOR_in_slave_until_options7453_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_until_options7455  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_until_options7455_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_slave_until_options7455	= { FOLLOW_text_string_in_slave_until_options7455_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7463  */
static	ANTLR3_BITWORD FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7463_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7463	= { FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7463_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_slave_until_options7470  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_slave_until_options7470_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x6000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000300000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_slave_until_options7470	= { FOLLOW_COMMA_SYMBOL_in_slave_until_options7470_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_master_file_def_in_slave_until_options7472  */
static	ANTLR3_BITWORD FOLLOW_master_file_def_in_slave_until_options7472_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_master_file_def_in_slave_until_options7472	= { FOLLOW_master_file_def_in_slave_until_options7472_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_slave_connection_options7486  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_slave_connection_options7486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_USER_SYMBOL_in_slave_connection_options7486	= { FOLLOW_USER_SYMBOL_in_slave_connection_options7486_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7488  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7488_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7488	= { FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7488_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_connection_options7490  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_connection_options7490_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_slave_connection_options7490	= { FOLLOW_text_string_in_slave_connection_options7490_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_slave_connection_options7495  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_slave_connection_options7495_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PASSWORD_SYMBOL_in_slave_connection_options7495	= { FOLLOW_PASSWORD_SYMBOL_in_slave_connection_options7495_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7497  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7497_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7497	= { FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7497_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_connection_options7499  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_connection_options7499_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_slave_connection_options7499	= { FOLLOW_text_string_in_slave_connection_options7499_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7506  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7506_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7506	= { FOLLOW_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7506_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7508  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7508_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7508	= { FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7508_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_connection_options7510  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_connection_options7510_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_slave_connection_options7510	= { FOLLOW_text_string_in_slave_connection_options7510_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_DIR_SYMBOL_in_slave_connection_options7515  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_DIR_SYMBOL_in_slave_connection_options7515_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PLUGIN_DIR_SYMBOL_in_slave_connection_options7515	= { FOLLOW_PLUGIN_DIR_SYMBOL_in_slave_connection_options7515_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7517  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7517_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7517	= { FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7517_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_slave_connection_options7519  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_slave_connection_options7519_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_slave_connection_options7519	= { FOLLOW_text_string_in_slave_connection_options7519_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_thread_option_in_slave_thread_options7535  */
static	ANTLR3_BITWORD FOLLOW_slave_thread_option_in_slave_thread_options7535_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_thread_option_in_slave_thread_options7535	= { FOLLOW_slave_thread_option_in_slave_thread_options7535_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_slave_thread_options7538  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_slave_thread_options7538_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_slave_thread_options7538	= { FOLLOW_COMMA_SYMBOL_in_slave_thread_options7538_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_slave_thread_option_in_slave_thread_options7540  */
static	ANTLR3_BITWORD FOLLOW_slave_thread_option_in_slave_thread_options7540_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_slave_thread_option_in_slave_thread_options7540	= { FOLLOW_slave_thread_option_in_slave_thread_options7540_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_group_replication7579  */
static	ANTLR3_BITWORD FOLLOW_set_in_group_replication7579_bits[]	= { ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_group_replication7579	= { FOLLOW_set_in_group_replication7579_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7587  */
static	ANTLR3_BITWORD FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7587_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7587	= { FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7587_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_prepared_statement7598  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_prepared_statement7598_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_prepared_statement7598	= { FOLLOW_PREPARE_SYMBOL_in_prepared_statement7598_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_prepared_statement7601  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_prepared_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(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_prepared_statement7601	= { FOLLOW_identifier_in_prepared_statement7601_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_prepared_statement7603  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_prepared_statement7603_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000060), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_prepared_statement7603	= { FOLLOW_FROM_SYMBOL_in_prepared_statement7603_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_prepared_statement7606  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_prepared_statement7606_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_prepared_statement7606	= { FOLLOW_string_literal_in_prepared_statement7606_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_prepared_statement7610  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_prepared_statement7610_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_prepared_statement7610	= { FOLLOW_user_variable_in_prepared_statement7610_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_execute_statement_in_prepared_statement7616  */
static	ANTLR3_BITWORD FOLLOW_execute_statement_in_prepared_statement7616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_execute_statement_in_prepared_statement7616	= { FOLLOW_execute_statement_in_prepared_statement7616_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_prepared_statement7621  */
static	ANTLR3_BITWORD FOLLOW_set_in_prepared_statement7621_bits[]	= { ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_prepared_statement7621	= { FOLLOW_set_in_prepared_statement7621_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PREPARE_SYMBOL_in_prepared_statement7630  */
static	ANTLR3_BITWORD FOLLOW_PREPARE_SYMBOL_in_prepared_statement7630_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PREPARE_SYMBOL_in_prepared_statement7630	= { FOLLOW_PREPARE_SYMBOL_in_prepared_statement7630_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_prepared_statement7632  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_prepared_statement7632_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_prepared_statement7632	= { FOLLOW_identifier_in_prepared_statement7632_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXECUTE_SYMBOL_in_execute_statement7641  */
static	ANTLR3_BITWORD FOLLOW_EXECUTE_SYMBOL_in_execute_statement7641_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXECUTE_SYMBOL_in_execute_statement7641	= { FOLLOW_EXECUTE_SYMBOL_in_execute_statement7641_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_execute_statement7644  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_execute_statement7644_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_execute_statement7644	= { FOLLOW_identifier_in_execute_statement7644_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_execute_statement7647  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_execute_statement7647_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000060) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_execute_statement7647	= { FOLLOW_USING_SYMBOL_in_execute_statement7647_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_execute_var_list_in_execute_statement7649  */
static	ANTLR3_BITWORD FOLLOW_execute_var_list_in_execute_statement7649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_execute_var_list_in_execute_statement7649	= { FOLLOW_execute_var_list_in_execute_statement7649_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_execute_var_list7660  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_execute_var_list7660_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_execute_var_list7660	= { FOLLOW_user_variable_in_execute_var_list7660_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_execute_var_list7663  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_execute_var_list7663_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000060) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_execute_var_list7663	= { FOLLOW_COMMA_SYMBOL_in_execute_var_list7663_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_execute_var_list7665  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_execute_var_list7665_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_execute_var_list7665	= { FOLLOW_user_variable_in_execute_var_list7665_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_user_in_account_management_statement7680  */
static	ANTLR3_BITWORD FOLLOW_alter_user_in_account_management_statement7680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_user_in_account_management_statement7680	= { FOLLOW_alter_user_in_account_management_statement7680_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_user_in_account_management_statement7685  */
static	ANTLR3_BITWORD FOLLOW_create_user_in_account_management_statement7685_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_user_in_account_management_statement7685	= { FOLLOW_create_user_in_account_management_statement7685_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_drop_user_in_account_management_statement7690  */
static	ANTLR3_BITWORD FOLLOW_drop_user_in_account_management_statement7690_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_drop_user_in_account_management_statement7690	= { FOLLOW_drop_user_in_account_management_statement7690_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_proxy_in_account_management_statement7697  */
static	ANTLR3_BITWORD FOLLOW_grant_proxy_in_account_management_statement7697_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_proxy_in_account_management_statement7697	= { FOLLOW_grant_proxy_in_account_management_statement7697_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_in_account_management_statement7702  */
static	ANTLR3_BITWORD FOLLOW_grant_in_account_management_statement7702_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_in_account_management_statement7702	= { FOLLOW_grant_in_account_management_statement7702_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_rename_user_in_account_management_statement7707  */
static	ANTLR3_BITWORD FOLLOW_rename_user_in_account_management_statement7707_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_rename_user_in_account_management_statement7707	= { FOLLOW_rename_user_in_account_management_statement7707_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_revoke_statement_in_account_management_statement7712  */
static	ANTLR3_BITWORD FOLLOW_revoke_statement_in_account_management_statement7712_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_revoke_statement_in_account_management_statement7712	= { FOLLOW_revoke_statement_in_account_management_statement7712_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_password_in_account_management_statement7717  */
static	ANTLR3_BITWORD FOLLOW_set_password_in_account_management_statement7717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_password_in_account_management_statement7717	= { FOLLOW_set_password_in_account_management_statement7717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_alter_user7726  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_alter_user7726_bits[]	= { 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_ALTER_SYMBOL_in_alter_user7726	= { FOLLOW_ALTER_SYMBOL_in_alter_user7726_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_alter_user7729  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_alter_user7729_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_alter_user7729	= { FOLLOW_USER_SYMBOL_in_alter_user7729_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_alter_user7734  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_alter_user7734_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_alter_user7734	= { FOLLOW_if_exists_in_alter_user7734_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_alter_user_tail_in_alter_user7741  */
static	ANTLR3_BITWORD FOLLOW_alter_user_tail_in_alter_user7741_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_alter_user_tail_in_alter_user7741	= { FOLLOW_alter_user_tail_in_alter_user7741_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_list_in_alter_user_tail7750  */
static	ANTLR3_BITWORD FOLLOW_grant_list_in_alter_user_tail7750_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_list_in_alter_user_tail7750	= { FOLLOW_grant_list_in_alter_user_tail7750_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_user_tail_in_alter_user_tail7752  */
static	ANTLR3_BITWORD FOLLOW_create_user_tail_in_alter_user_tail7752_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_user_tail_in_alter_user_tail7752	= { FOLLOW_create_user_tail_in_alter_user_tail7752_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_alter_user_tail7759  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_alter_user_tail7759_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_USER_SYMBOL_in_alter_user_tail7759	= { FOLLOW_USER_SYMBOL_in_alter_user_tail7759_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_alter_user_tail7761  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_alter_user_tail7761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_alter_user_tail7761	= { FOLLOW_parentheses_in_alter_user_tail7761_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIED_SYMBOL_in_alter_user_tail7763  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIED_SYMBOL_in_alter_user_tail7763_bits[]	= { ANTLR3_UINT64_LIT(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_IDENTIFIED_SYMBOL_in_alter_user_tail7763	= { FOLLOW_IDENTIFIED_SYMBOL_in_alter_user_tail7763_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_alter_user_tail7765  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_alter_user_tail7765_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_alter_user_tail7765	= { FOLLOW_BY_SYMBOL_in_alter_user_tail7765_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_alter_user_tail7767  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_alter_user_tail7767_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_alter_user_tail7767	= { FOLLOW_text_string_in_alter_user_tail7767_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_create_user7776  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_create_user7776_bits[]	= { 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_CREATE_SYMBOL_in_create_user7776	= { FOLLOW_CREATE_SYMBOL_in_create_user7776_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_create_user7779  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_create_user7779_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_create_user7779	= { FOLLOW_USER_SYMBOL_in_create_user7779_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_create_user7784  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_create_user7784_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_create_user7784	= { FOLLOW_if_not_exists_in_create_user7784_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_list_in_create_user7791  */
static	ANTLR3_BITWORD FOLLOW_grant_list_in_create_user7791_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_list_in_create_user7791	= { FOLLOW_grant_list_in_create_user7791_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_user_tail_in_create_user7793  */
static	ANTLR3_BITWORD FOLLOW_create_user_tail_in_create_user7793_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_create_user_tail_in_create_user7793	= { FOLLOW_create_user_tail_in_create_user7793_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_clause_in_create_user_tail7804  */
static	ANTLR3_BITWORD FOLLOW_require_clause_in_create_user_tail7804_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000012), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_require_clause_in_create_user_tail7804	= { FOLLOW_require_clause_in_create_user_tail7804_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_connect_options_in_create_user_tail7807  */
static	ANTLR3_BITWORD FOLLOW_connect_options_in_create_user_tail7807_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000012), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_connect_options_in_create_user_tail7807	= { FOLLOW_connect_options_in_create_user_tail7807_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_account_lock_password_expire_options_in_create_user_tail7810  */
static	ANTLR3_BITWORD FOLLOW_account_lock_password_expire_options_in_create_user_tail7810_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_account_lock_password_expire_options_in_create_user_tail7810	= { FOLLOW_account_lock_password_expire_options_in_create_user_tail7810_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REQUIRE_SYMBOL_in_require_clause7825  */
static	ANTLR3_BITWORD FOLLOW_REQUIRE_SYMBOL_in_require_clause7825_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000) };
static  ANTLR3_BITSET_LIST FOLLOW_REQUIRE_SYMBOL_in_require_clause7825	= { FOLLOW_REQUIRE_SYMBOL_in_require_clause7825_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_list_in_require_clause7828  */
static	ANTLR3_BITWORD FOLLOW_require_list_in_require_clause7828_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_require_list_in_require_clause7828	= { FOLLOW_require_list_in_require_clause7828_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SSL_SYMBOL_in_require_clause7832  */
static	ANTLR3_BITWORD FOLLOW_SSL_SYMBOL_in_require_clause7832_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SSL_SYMBOL_in_require_clause7832	= { FOLLOW_SSL_SYMBOL_in_require_clause7832_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_X509_SYMBOL_in_require_clause7836  */
static	ANTLR3_BITWORD FOLLOW_X509_SYMBOL_in_require_clause7836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_X509_SYMBOL_in_require_clause7836	= { FOLLOW_X509_SYMBOL_in_require_clause7836_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NONE_SYMBOL_in_require_clause7840  */
static	ANTLR3_BITWORD FOLLOW_NONE_SYMBOL_in_require_clause7840_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NONE_SYMBOL_in_require_clause7840	= { FOLLOW_NONE_SYMBOL_in_require_clause7840_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_connect_options7850  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_connect_options7850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000000000CC000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_connect_options7850	= { FOLLOW_WITH_SYMBOL_in_connect_options7850_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7857  */
static	ANTLR3_BITWORD FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7857	= { FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7857_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_connect_options7859  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_connect_options7859_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000000000CC000) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_connect_options7859	= { FOLLOW_ulong_number_in_connect_options7859_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7865  */
static	ANTLR3_BITWORD FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7865_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7865	= { FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7865_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_connect_options7867  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_connect_options7867_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000000000CC000) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_connect_options7867	= { FOLLOW_ulong_number_in_connect_options7867_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7873  */
static	ANTLR3_BITWORD FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7873	= { FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7873_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_connect_options7875  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_connect_options7875_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000000000CC000) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_connect_options7875	= { FOLLOW_ulong_number_in_connect_options7875_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7881  */
static	ANTLR3_BITWORD FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7881_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7881	= { FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7881_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_connect_options7883  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_connect_options7883_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000000000CC000) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_connect_options7883	= { FOLLOW_ulong_number_in_connect_options7883_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7896  */
static	ANTLR3_BITWORD FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7896_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7896	= { FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7896_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_account_lock_password_expire_options7898  */
static	ANTLR3_BITWORD FOLLOW_set_in_account_lock_password_expire_options7898_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_account_lock_password_expire_options7898	= { FOLLOW_set_in_account_lock_password_expire_options7898_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_account_lock_password_expire_options7909  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_account_lock_password_expire_options7909_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PASSWORD_SYMBOL_in_account_lock_password_expire_options7909	= { FOLLOW_PASSWORD_SYMBOL_in_account_lock_password_expire_options7909_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7911  */
static	ANTLR3_BITWORD FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7911_bits[]	= { 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7911	= { FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7911_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7920  */
static	ANTLR3_BITWORD FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7920	= { FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7920_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_account_lock_password_expire_options7922  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_account_lock_password_expire_options7922_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_account_lock_password_expire_options7922	= { FOLLOW_real_ulong_number_in_account_lock_password_expire_options7922_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7924  */
static	ANTLR3_BITWORD FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7924_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7924	= { FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7924_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7931  */
static	ANTLR3_BITWORD FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7931_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7931	= { FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7931_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7938  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7938_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7938	= { FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7938_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_drop_user7952  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_drop_user7952_bits[]	= { 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_DROP_SYMBOL_in_drop_user7952	= { FOLLOW_DROP_SYMBOL_in_drop_user7952_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_drop_user7955  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_drop_user7955_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_drop_user7955	= { FOLLOW_USER_SYMBOL_in_drop_user7955_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_exists_in_drop_user7960  */
static	ANTLR3_BITWORD FOLLOW_if_exists_in_drop_user7960_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_exists_in_drop_user7960	= { FOLLOW_if_exists_in_drop_user7960_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_drop_user7967  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_drop_user7967_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_drop_user7967	= { FOLLOW_user_list_in_drop_user7967_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_in_parse_grant7977  */
static	ANTLR3_BITWORD FOLLOW_grant_in_parse_grant7977_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_in_parse_grant7977	= { FOLLOW_grant_in_parse_grant7977_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_parse_grant7979  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_parse_grant7979_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_parse_grant7979	= { FOLLOW_EOF_in_parse_grant7979_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant7988  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant7988_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000004800110), ANTLR3_UINT64_LIT(0x1800000000004000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000080010000), ANTLR3_UINT64_LIT(0x0000000010800020), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x2002000008000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000018) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANT_SYMBOL_in_grant7988	= { FOLLOW_GRANT_SYMBOL_in_grant7988_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_privileges_in_grant7991  */
static	ANTLR3_BITWORD FOLLOW_grant_privileges_in_grant7991_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_privileges_in_grant7991	= { FOLLOW_grant_privileges_in_grant7991_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_target_in_grant7993  */
static	ANTLR3_BITWORD FOLLOW_privilege_target_in_grant7993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_privilege_target_in_grant7993	= { FOLLOW_privilege_target_in_grant7993_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_grant7997  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_grant7997_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_grant7997	= { FOLLOW_TO_SYMBOL_in_grant7997_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_list_in_grant7999  */
static	ANTLR3_BITWORD FOLLOW_grant_list_in_grant7999_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(0x0000000200000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_list_in_grant7999	= { FOLLOW_grant_list_in_grant7999_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_clause_in_grant8001  */
static	ANTLR3_BITWORD FOLLOW_require_clause_in_grant8001_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_require_clause_in_grant8001	= { FOLLOW_require_clause_in_grant8001_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_grant8005  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_grant8005_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000000000CC000), 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_WITH_SYMBOL_in_grant8005	= { FOLLOW_WITH_SYMBOL_in_grant8005_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_option_in_grant8007  */
static	ANTLR3_BITWORD FOLLOW_grant_option_in_grant8007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x00000000000CC000), 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_grant_option_in_grant8007	= { FOLLOW_grant_option_in_grant8007_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_proxy8019  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_proxy8019_bits[]	= { 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_GRANT_SYMBOL_in_grant_proxy8019	= { FOLLOW_GRANT_SYMBOL_in_grant_proxy8019_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_grant_proxy8022  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_grant_proxy8022_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PROXY_SYMBOL_in_grant_proxy8022	= { FOLLOW_PROXY_SYMBOL_in_grant_proxy8022_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_grant_proxy8024  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_grant_proxy8024_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_grant_proxy8024	= { FOLLOW_ON_SYMBOL_in_grant_proxy8024_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_proxy8026  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_proxy8026_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_grant_user_in_grant_proxy8026	= { FOLLOW_grant_user_in_grant_proxy8026_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_grant_proxy8028  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_grant_proxy8028_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_grant_proxy8028	= { FOLLOW_TO_SYMBOL_in_grant_proxy8028_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_proxy8030  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_proxy8030_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(0x0000100000000000), 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_grant_user_in_grant_proxy8030	= { FOLLOW_grant_user_in_grant_proxy8030_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant_proxy8033  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant_proxy8033_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant_proxy8033	= { FOLLOW_COMMA_SYMBOL_in_grant_proxy8033_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_proxy8035  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_proxy8035_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(0x0000100000000000), 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_grant_user_in_grant_proxy8035	= { FOLLOW_grant_user_in_grant_proxy8035_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_grant_proxy8042  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_grant_proxy8042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WITH_SYMBOL_in_grant_proxy8042	= { FOLLOW_WITH_SYMBOL_in_grant_proxy8042_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_proxy8044  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_proxy8044_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_GRANT_SYMBOL_in_grant_proxy8044	= { FOLLOW_GRANT_SYMBOL_in_grant_proxy8044_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_grant_proxy8046  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_grant_proxy8046_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_grant_proxy8046	= { FOLLOW_OPTION_SYMBOL_in_grant_proxy8046_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RENAME_SYMBOL_in_rename_user8057  */
static	ANTLR3_BITWORD FOLLOW_RENAME_SYMBOL_in_rename_user8057_bits[]	= { 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_RENAME_SYMBOL_in_rename_user8057	= { FOLLOW_RENAME_SYMBOL_in_rename_user8057_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_rename_user8060  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_rename_user8060_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_rename_user8060	= { FOLLOW_USER_SYMBOL_in_rename_user8060_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user8062  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user8062_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_user_in_rename_user8062	= { FOLLOW_user_in_rename_user8062_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_user8064  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_user8064_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_user8064	= { FOLLOW_TO_SYMBOL_in_rename_user8064_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user8066  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user8066_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_rename_user8066	= { FOLLOW_user_in_rename_user8066_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_rename_user8069  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_rename_user8069_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_rename_user8069	= { FOLLOW_COMMA_SYMBOL_in_rename_user8069_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user8071  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user8071_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_user_in_rename_user8071	= { FOLLOW_user_in_rename_user8071_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_rename_user8073  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_rename_user8073_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_rename_user8073	= { FOLLOW_TO_SYMBOL_in_rename_user8073_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_rename_user8075  */
static	ANTLR3_BITWORD FOLLOW_user_in_rename_user8075_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_rename_user8075	= { FOLLOW_user_in_rename_user8075_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVOKE_SYMBOL_in_revoke_statement8086  */
static	ANTLR3_BITWORD FOLLOW_REVOKE_SYMBOL_in_revoke_statement8086_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000004800110), ANTLR3_UINT64_LIT(0x1800000000004000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000080010000), ANTLR3_UINT64_LIT(0x0000000010800020), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x2002000008000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000018) };
static  ANTLR3_BITSET_LIST FOLLOW_REVOKE_SYMBOL_in_revoke_statement8086	= { FOLLOW_REVOKE_SYMBOL_in_revoke_statement8086_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_revoke_statement8098  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_revoke_statement8098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_revoke_statement8098	= { FOLLOW_ALL_SYMBOL_in_revoke_statement8098_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement8100  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement8100_bits[]	= { ANTLR3_UINT64_LIT(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_PRIVILEGES_SYMBOL_in_revoke_statement8100	= { FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement8100_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_revoke_statement8103  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_revoke_statement8103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_revoke_statement8103	= { FOLLOW_COMMA_SYMBOL_in_revoke_statement8103_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_revoke_statement8105  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_revoke_statement8105_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_GRANT_SYMBOL_in_revoke_statement8105	= { FOLLOW_GRANT_SYMBOL_in_revoke_statement8105_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_revoke_statement8107  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_revoke_statement8107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPTION_SYMBOL_in_revoke_statement8107	= { FOLLOW_OPTION_SYMBOL_in_revoke_statement8107_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement8109  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement8109_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement8109	= { FOLLOW_FROM_SYMBOL_in_revoke_statement8109_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement8111  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement8111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement8111	= { FOLLOW_user_list_in_revoke_statement8111_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_privileges_in_revoke_statement8117  */
static	ANTLR3_BITWORD FOLLOW_grant_privileges_in_revoke_statement8117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_privileges_in_revoke_statement8117	= { FOLLOW_grant_privileges_in_revoke_statement8117_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_target_in_revoke_statement8119  */
static	ANTLR3_BITWORD FOLLOW_privilege_target_in_revoke_statement8119_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_privilege_target_in_revoke_statement8119	= { FOLLOW_privilege_target_in_revoke_statement8119_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement8121  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement8121_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement8121	= { FOLLOW_FROM_SYMBOL_in_revoke_statement8121_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement8123  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement8123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement8123	= { FOLLOW_user_list_in_revoke_statement8123_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_revoke_statement8131  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_revoke_statement8131_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_PROXY_SYMBOL_in_revoke_statement8131	= { FOLLOW_PROXY_SYMBOL_in_revoke_statement8131_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_revoke_statement8133  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_revoke_statement8133_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_revoke_statement8133	= { FOLLOW_ON_SYMBOL_in_revoke_statement8133_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_revoke_statement8135  */
static	ANTLR3_BITWORD FOLLOW_user_in_revoke_statement8135_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_user_in_revoke_statement8135	= { FOLLOW_user_in_revoke_statement8135_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_revoke_statement8137  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_revoke_statement8137_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_revoke_statement8137	= { FOLLOW_FROM_SYMBOL_in_revoke_statement8137_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_list_in_revoke_statement8139  */
static	ANTLR3_BITWORD FOLLOW_user_list_in_revoke_statement8139_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_list_in_revoke_statement8139	= { FOLLOW_user_list_in_revoke_statement8139_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_privilege_target8151  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_privilege_target8151_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_privilege_target8151	= { FOLLOW_ON_SYMBOL_in_privilege_target8151_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_object_type_in_privilege_target8153  */
static	ANTLR3_BITWORD FOLLOW_grant_object_type_in_privilege_target8153_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_object_type_in_privilege_target8153	= { FOLLOW_grant_object_type_in_privilege_target8153_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_level_in_privilege_target8155  */
static	ANTLR3_BITWORD FOLLOW_privilege_level_in_privilege_target8155_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_level_in_privilege_target8155	= { FOLLOW_privilege_level_in_privilege_target8155_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_set_password8176  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_set_password8176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_set_password8176	= { FOLLOW_SET_SYMBOL_in_set_password8176_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_set_password8179  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_set_password8179_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x1000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_set_password8179	= { FOLLOW_PASSWORD_SYMBOL_in_set_password8179_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_set_password8182  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_set_password8182_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_set_password8182	= { FOLLOW_FOR_SYMBOL_in_set_password8182_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_set_password8184  */
static	ANTLR3_BITWORD FOLLOW_user_in_set_password8184_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_set_password8184	= { FOLLOW_user_in_set_password8184_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_set_password8188  */
static	ANTLR3_BITWORD FOLLOW_equal_in_set_password8188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0404000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_set_password8188	= { FOLLOW_equal_in_set_password8188_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_set_password8195  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_set_password8195_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_PASSWORD_SYMBOL_in_set_password8195	= { FOLLOW_PASSWORD_SYMBOL_in_set_password8195_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_set_password8197  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_set_password8197_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_set_password8197	= { FOLLOW_OPEN_PAR_SYMBOL_in_set_password8197_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_set_password8199  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_set_password8199_bits[]	= { ANTLR3_UINT64_LIT(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_text_string_in_set_password8199	= { FOLLOW_text_string_in_set_password8199_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8201  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8201_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8201	= { FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8201_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password8209  */
static	ANTLR3_BITWORD FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password8209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_OLD_PASSWORD_SYMBOL_in_set_password8209	= { FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password8209_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_set_password8211  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_set_password8211_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_set_password8211	= { FOLLOW_OPEN_PAR_SYMBOL_in_set_password8211_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_set_password8213  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_set_password8213_bits[]	= { ANTLR3_UINT64_LIT(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_text_string_in_set_password8213	= { FOLLOW_text_string_in_set_password8213_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8215  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8215_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8215	= { FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8215_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_set_password8221  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_set_password8221_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_set_password8221	= { FOLLOW_text_string_in_set_password8221_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_grant_object_type8234  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_grant_object_type8234_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_grant_object_type8234	= { FOLLOW_TABLE_SYMBOL_in_grant_object_type8234_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8239  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8239	= { FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8243  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8243	= { FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8243_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_grant_privileges8253  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_grant_privileges8253_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_ALL_SYMBOL_in_grant_privileges8253	= { FOLLOW_ALL_SYMBOL_in_grant_privileges8253_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8255  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8255_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8255	= { FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8255_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_type_in_grant_privileges8261  */
static	ANTLR3_BITWORD FOLLOW_privilege_type_in_grant_privileges8261_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_type_in_grant_privileges8261	= { FOLLOW_privilege_type_in_grant_privileges8261_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant_privileges8264  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant_privileges8264_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000040040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000004800110), ANTLR3_UINT64_LIT(0x1000000000004000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000080010000), ANTLR3_UINT64_LIT(0x0000000010800020), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x2002000008000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x0000000000000018) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant_privileges8264	= { FOLLOW_COMMA_SYMBOL_in_grant_privileges8264_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_privilege_type_in_grant_privileges8266  */
static	ANTLR3_BITWORD FOLLOW_privilege_type_in_grant_privileges8266_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_privilege_type_in_grant_privileges8266	= { FOLLOW_privilege_type_in_grant_privileges8266_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALTER_SYMBOL_in_privilege_type8277  */
static	ANTLR3_BITWORD FOLLOW_ALTER_SYMBOL_in_privilege_type8277_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALTER_SYMBOL_in_privilege_type8277	= { FOLLOW_ALTER_SYMBOL_in_privilege_type8277_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROUTINE_SYMBOL_in_privilege_type8279  */
static	ANTLR3_BITWORD FOLLOW_ROUTINE_SYMBOL_in_privilege_type8279_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROUTINE_SYMBOL_in_privilege_type8279	= { FOLLOW_ROUTINE_SYMBOL_in_privilege_type8279_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_privilege_type8285  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_privilege_type8285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000480000600000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_privilege_type8285	= { FOLLOW_CREATE_SYMBOL_in_privilege_type8285_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROUTINE_SYMBOL_in_privilege_type8288  */
static	ANTLR3_BITWORD FOLLOW_ROUTINE_SYMBOL_in_privilege_type8288_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ROUTINE_SYMBOL_in_privilege_type8288	= { FOLLOW_ROUTINE_SYMBOL_in_privilege_type8288_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8292  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8292_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8292	= { FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8292_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8296  */
static	ANTLR3_BITWORD FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8296_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) };
static  ANTLR3_BITSET_LIST FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8296	= { FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8296_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_privilege_type8298  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_privilege_type8298_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_privilege_type8298	= { FOLLOW_TABLES_SYMBOL_in_privilege_type8298_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_privilege_type8302  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_privilege_type8302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_privilege_type8302	= { FOLLOW_USER_SYMBOL_in_privilege_type8302_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_privilege_type8306  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_privilege_type8306_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_privilege_type8306	= { FOLLOW_VIEW_SYMBOL_in_privilege_type8306_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_privilege_type8313  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_privilege_type8313_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_privilege_type8313	= { FOLLOW_DELETE_SYMBOL_in_privilege_type8313_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DROP_SYMBOL_in_privilege_type8318  */
static	ANTLR3_BITWORD FOLLOW_DROP_SYMBOL_in_privilege_type8318_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DROP_SYMBOL_in_privilege_type8318	= { FOLLOW_DROP_SYMBOL_in_privilege_type8318_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_privilege_type8323  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_privilege_type8323_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_privilege_type8323	= { FOLLOW_EVENT_SYMBOL_in_privilege_type8323_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXECUTE_SYMBOL_in_privilege_type8328  */
static	ANTLR3_BITWORD FOLLOW_EXECUTE_SYMBOL_in_privilege_type8328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXECUTE_SYMBOL_in_privilege_type8328	= { FOLLOW_EXECUTE_SYMBOL_in_privilege_type8328_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FILE_SYMBOL_in_privilege_type8333  */
static	ANTLR3_BITWORD FOLLOW_FILE_SYMBOL_in_privilege_type8333_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FILE_SYMBOL_in_privilege_type8333	= { FOLLOW_FILE_SYMBOL_in_privilege_type8333_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_privilege_type8338  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_privilege_type8338_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_GRANT_SYMBOL_in_privilege_type8338	= { FOLLOW_GRANT_SYMBOL_in_privilege_type8338_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_privilege_type8340  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_privilege_type8340_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_privilege_type8340	= { FOLLOW_OPTION_SYMBOL_in_privilege_type8340_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_privilege_type8345  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_privilege_type8345_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_privilege_type8345	= { FOLLOW_INDEX_SYMBOL_in_privilege_type8345_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_privilege_type8350  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_in_privilege_type8350_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_INSERT_SYMBOL_in_privilege_type8350	= { FOLLOW_INSERT_SYMBOL_in_privilege_type8350_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_privilege_type8352  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_privilege_type8352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_privilege_type8352	= { FOLLOW_identifier_list_with_parentheses_in_privilege_type8352_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_privilege_type8358  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_privilege_type8358_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) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_privilege_type8358	= { FOLLOW_LOCK_SYMBOL_in_privilege_type8358_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_privilege_type8360  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_privilege_type8360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_privilege_type8360	= { FOLLOW_TABLES_SYMBOL_in_privilege_type8360_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCESS_SYMBOL_in_privilege_type8365  */
static	ANTLR3_BITWORD FOLLOW_PROCESS_SYMBOL_in_privilege_type8365_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCESS_SYMBOL_in_privilege_type8365	= { FOLLOW_PROCESS_SYMBOL_in_privilege_type8365_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROXY_SYMBOL_in_privilege_type8370  */
static	ANTLR3_BITWORD FOLLOW_PROXY_SYMBOL_in_privilege_type8370_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROXY_SYMBOL_in_privilege_type8370	= { FOLLOW_PROXY_SYMBOL_in_privilege_type8370_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REFERENCES_SYMBOL_in_privilege_type8375  */
static	ANTLR3_BITWORD FOLLOW_REFERENCES_SYMBOL_in_privilege_type8375_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_REFERENCES_SYMBOL_in_privilege_type8375	= { FOLLOW_REFERENCES_SYMBOL_in_privilege_type8375_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_privilege_type8377  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_privilege_type8377_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_privilege_type8377	= { FOLLOW_identifier_list_with_parentheses_in_privilege_type8377_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELOAD_SYMBOL_in_privilege_type8383  */
static	ANTLR3_BITWORD FOLLOW_RELOAD_SYMBOL_in_privilege_type8383_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RELOAD_SYMBOL_in_privilege_type8383	= { FOLLOW_RELOAD_SYMBOL_in_privilege_type8383_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLICATION_SYMBOL_in_privilege_type8388  */
static	ANTLR3_BITWORD FOLLOW_REPLICATION_SYMBOL_in_privilege_type8388_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPLICATION_SYMBOL_in_privilege_type8388	= { FOLLOW_REPLICATION_SYMBOL_in_privilege_type8388_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_privilege_type8390  */
static	ANTLR3_BITWORD FOLLOW_set_in_privilege_type8390_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_privilege_type8390	= { FOLLOW_set_in_privilege_type8390_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_SYMBOL_in_privilege_type8401  */
static	ANTLR3_BITWORD FOLLOW_SELECT_SYMBOL_in_privilege_type8401_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_SELECT_SYMBOL_in_privilege_type8401	= { FOLLOW_SELECT_SYMBOL_in_privilege_type8401_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_privilege_type8403  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_privilege_type8403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_privilege_type8403	= { FOLLOW_identifier_list_with_parentheses_in_privilege_type8403_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_privilege_type8409  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_privilege_type8409_bits[]	= { ANTLR3_UINT64_LIT(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_SHOW_SYMBOL_in_privilege_type8409	= { FOLLOW_SHOW_SYMBOL_in_privilege_type8409_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASES_SYMBOL_in_privilege_type8411  */
static	ANTLR3_BITWORD FOLLOW_DATABASES_SYMBOL_in_privilege_type8411_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASES_SYMBOL_in_privilege_type8411	= { FOLLOW_DATABASES_SYMBOL_in_privilege_type8411_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_privilege_type8416  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_privilege_type8416_bits[]	= { 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_SHOW_SYMBOL_in_privilege_type8416	= { FOLLOW_SHOW_SYMBOL_in_privilege_type8416_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_privilege_type8418  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_privilege_type8418_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_privilege_type8418	= { FOLLOW_VIEW_SYMBOL_in_privilege_type8418_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8423  */
static	ANTLR3_BITWORD FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8423_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8423	= { FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8423_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUPER_SYMBOL_in_privilege_type8428  */
static	ANTLR3_BITWORD FOLLOW_SUPER_SYMBOL_in_privilege_type8428_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SUPER_SYMBOL_in_privilege_type8428	= { FOLLOW_SUPER_SYMBOL_in_privilege_type8428_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_privilege_type8433  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_privilege_type8433_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_privilege_type8433	= { FOLLOW_TRIGGER_SYMBOL_in_privilege_type8433_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_privilege_type8438  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_privilege_type8438_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_privilege_type8438	= { FOLLOW_UPDATE_SYMBOL_in_privilege_type8438_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_privilege_type8440  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_privilege_type8440_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_privilege_type8440	= { FOLLOW_identifier_list_with_parentheses_in_privilege_type8440_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USAGE_SYMBOL_in_privilege_type8446  */
static	ANTLR3_BITWORD FOLLOW_USAGE_SYMBOL_in_privilege_type8446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USAGE_SYMBOL_in_privilege_type8446	= { FOLLOW_USAGE_SYMBOL_in_privilege_type8446_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_privilege_level8455  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_privilege_level8455_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_MULT_OPERATOR_in_privilege_level8455	= { FOLLOW_MULT_OPERATOR_in_privilege_level8455_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_privilege_level8458  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_privilege_level8458_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_DOT_SYMBOL_in_privilege_level8458	= { FOLLOW_DOT_SYMBOL_in_privilege_level8458_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_privilege_level8460  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_privilege_level8460_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_privilege_level8460	= { FOLLOW_MULT_OPERATOR_in_privilege_level8460_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_privilege_level8467  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_privilege_level8467_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_identifier_in_privilege_level8467	= { FOLLOW_identifier_in_privilege_level8467_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_privilege_level8470  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_privilege_level8470_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_privilege_level8470	= { FOLLOW_DOT_SYMBOL_in_privilege_level8470_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_privilege_level8473  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_privilege_level8473_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_privilege_level8473	= { FOLLOW_MULT_OPERATOR_in_privilege_level8473_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_privilege_level8477  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_privilege_level8477_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_privilege_level8477	= { FOLLOW_identifier_in_privilege_level8477_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_list_element_in_require_list8489  */
static	ANTLR3_BITWORD FOLLOW_require_list_element_in_require_list8489_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_require_list_element_in_require_list8489	= { FOLLOW_require_list_element_in_require_list8489_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_require_list8492  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_require_list8492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_require_list8492	= { FOLLOW_AND_SYMBOL_in_require_list8492_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_require_list_element_in_require_list8495  */
static	ANTLR3_BITWORD FOLLOW_require_list_element_in_require_list8495_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_require_list_element_in_require_list8495	= { FOLLOW_require_list_element_in_require_list8495_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CIPHER_SYMBOL_in_require_list_element8506  */
static	ANTLR3_BITWORD FOLLOW_CIPHER_SYMBOL_in_require_list_element8506_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CIPHER_SYMBOL_in_require_list_element8506	= { FOLLOW_CIPHER_SYMBOL_in_require_list_element8506_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_require_list_element8508  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_require_list_element8508_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_require_list_element8508	= { FOLLOW_text_string_in_require_list_element8508_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ISSUER_SYMBOL_in_require_list_element8513  */
static	ANTLR3_BITWORD FOLLOW_ISSUER_SYMBOL_in_require_list_element8513_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ISSUER_SYMBOL_in_require_list_element8513	= { FOLLOW_ISSUER_SYMBOL_in_require_list_element8513_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_require_list_element8515  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_require_list_element8515_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_require_list_element8515	= { FOLLOW_text_string_in_require_list_element8515_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBJECT_SYMBOL_in_require_list_element8520  */
static	ANTLR3_BITWORD FOLLOW_SUBJECT_SYMBOL_in_require_list_element8520_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBJECT_SYMBOL_in_require_list_element8520	= { FOLLOW_SUBJECT_SYMBOL_in_require_list_element8520_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_require_list_element8522  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_require_list_element8522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_require_list_element8522	= { FOLLOW_text_string_in_require_list_element8522_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANT_SYMBOL_in_grant_option8531  */
static	ANTLR3_BITWORD FOLLOW_GRANT_SYMBOL_in_grant_option8531_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_GRANT_SYMBOL_in_grant_option8531	= { FOLLOW_GRANT_SYMBOL_in_grant_option8531_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTION_SYMBOL_in_grant_option8533  */
static	ANTLR3_BITWORD FOLLOW_OPTION_SYMBOL_in_grant_option8533_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTION_SYMBOL_in_grant_option8533	= { FOLLOW_OPTION_SYMBOL_in_grant_option8533_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8538  */
static	ANTLR3_BITWORD FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8538_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8538	= { FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8538_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_grant_option8540  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_grant_option8540_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_grant_option8540	= { FOLLOW_ulong_number_in_grant_option8540_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8545  */
static	ANTLR3_BITWORD FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8545_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8545	= { FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8545_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_grant_option8547  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_grant_option8547_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_grant_option8547	= { FOLLOW_ulong_number_in_grant_option8547_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8552  */
static	ANTLR3_BITWORD FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8552_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8552	= { FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8552_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_grant_option8554  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_grant_option8554_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_grant_option8554	= { FOLLOW_ulong_number_in_grant_option8554_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8559  */
static	ANTLR3_BITWORD FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8559_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8559	= { FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8559_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_grant_option8561  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_grant_option8561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_grant_option8561	= { FOLLOW_ulong_number_in_grant_option8561_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8572  */
static	ANTLR3_BITWORD FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8572_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8572	= { FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8572_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement8575  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_table_administration_statement8575_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_no_write_to_bin_log_in_table_administration_statement8575	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement8575_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8578  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8578_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8578	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8578_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8580  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8580_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_table_administration_statement8580	= { FOLLOW_table_ref_list_in_table_administration_statement8580_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_table_administration_statement8585  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_table_administration_statement8585_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECK_SYMBOL_in_table_administration_statement8585	= { FOLLOW_CHECK_SYMBOL_in_table_administration_statement8585_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8588  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8588_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8588	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8588_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8590  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8590_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000004800), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_table_administration_statement8590	= { FOLLOW_table_ref_list_in_table_administration_statement8590_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_check_option_in_table_administration_statement8592  */
static	ANTLR3_BITWORD FOLLOW_check_option_in_table_administration_statement8592_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000004800), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_check_option_in_table_administration_statement8592	= { FOLLOW_check_option_in_table_administration_statement8592_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement8598  */
static	ANTLR3_BITWORD FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement8598_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHECKSUM_SYMBOL_in_table_administration_statement8598	= { FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement8598_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8601  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8601_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8601	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8601_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8603  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8603_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_table_administration_statement8603	= { FOLLOW_table_ref_list_in_table_administration_statement8603_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8617  */
static	ANTLR3_BITWORD FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8617_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8617	= { FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8617_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement8620  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_table_administration_statement8620_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_no_write_to_bin_log_in_table_administration_statement8620	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement8620_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8623  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8623_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8623	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8623_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8625  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_table_administration_statement8625	= { FOLLOW_table_ref_list_in_table_administration_statement8625_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8630  */
static	ANTLR3_BITWORD FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8630	= { FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8630_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_table_administration_statement8633  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_table_administration_statement8633_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_no_write_to_bin_log_in_table_administration_statement8633	= { FOLLOW_no_write_to_bin_log_in_table_administration_statement8633_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8636  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8636_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8636	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8636_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8638  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8638_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_list_in_table_administration_statement8638	= { FOLLOW_table_ref_list_in_table_administration_statement8638_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repair_option_in_table_administration_statement8640  */
static	ANTLR3_BITWORD FOLLOW_repair_option_in_table_administration_statement8640_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_repair_option_in_table_administration_statement8640	= { FOLLOW_repair_option_in_table_administration_statement8640_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BACKUP_SYMBOL_in_table_administration_statement8648  */
static	ANTLR3_BITWORD FOLLOW_BACKUP_SYMBOL_in_table_administration_statement8648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_BACKUP_SYMBOL_in_table_administration_statement8648	= { FOLLOW_BACKUP_SYMBOL_in_table_administration_statement8648_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8651  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8651_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8651	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8651_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8653  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8653_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ref_list_in_table_administration_statement8653	= { FOLLOW_table_ref_list_in_table_administration_statement8653_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TO_SYMBOL_in_table_administration_statement8655  */
static	ANTLR3_BITWORD FOLLOW_TO_SYMBOL_in_table_administration_statement8655_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TO_SYMBOL_in_table_administration_statement8655	= { FOLLOW_TO_SYMBOL_in_table_administration_statement8655_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_table_administration_statement8657  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_table_administration_statement8657_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_table_administration_statement8657	= { FOLLOW_string_literal_in_table_administration_statement8657_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESTORE_SYMBOL_in_table_administration_statement8664  */
static	ANTLR3_BITWORD FOLLOW_RESTORE_SYMBOL_in_table_administration_statement8664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_RESTORE_SYMBOL_in_table_administration_statement8664	= { FOLLOW_RESTORE_SYMBOL_in_table_administration_statement8664_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_table_administration_statement8667  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_table_administration_statement8667_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_table_administration_statement8667	= { FOLLOW_TABLE_SYMBOL_in_table_administration_statement8667_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_table_administration_statement8669  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_table_administration_statement8669_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_table_ref_list_in_table_administration_statement8669	= { FOLLOW_table_ref_list_in_table_administration_statement8669_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_table_administration_statement8671  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_table_administration_statement8671_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_table_administration_statement8671	= { FOLLOW_FROM_SYMBOL_in_table_administration_statement8671_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_table_administration_statement8673  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_table_administration_statement8673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_table_administration_statement8673	= { FOLLOW_string_literal_in_table_administration_statement8673_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_check_option8682  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_check_option8682_bits[]	= { ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_check_option8682	= { FOLLOW_FOR_SYMBOL_in_check_option8682_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPGRADE_SYMBOL_in_check_option8684  */
static	ANTLR3_BITWORD FOLLOW_UPGRADE_SYMBOL_in_check_option8684_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UPGRADE_SYMBOL_in_check_option8684	= { FOLLOW_UPGRADE_SYMBOL_in_check_option8684_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUICK_SYMBOL_in_check_option8688  */
static	ANTLR3_BITWORD FOLLOW_QUICK_SYMBOL_in_check_option8688_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_QUICK_SYMBOL_in_check_option8688	= { FOLLOW_QUICK_SYMBOL_in_check_option8688_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FAST_SYMBOL_in_check_option8692  */
static	ANTLR3_BITWORD FOLLOW_FAST_SYMBOL_in_check_option8692_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FAST_SYMBOL_in_check_option8692	= { FOLLOW_FAST_SYMBOL_in_check_option8692_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUM_SYMBOL_in_check_option8696  */
static	ANTLR3_BITWORD FOLLOW_MEDIUM_SYMBOL_in_check_option8696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUM_SYMBOL_in_check_option8696	= { FOLLOW_MEDIUM_SYMBOL_in_check_option8696_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENDED_SYMBOL_in_check_option8700  */
static	ANTLR3_BITWORD FOLLOW_EXTENDED_SYMBOL_in_check_option8700_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENDED_SYMBOL_in_check_option8700	= { FOLLOW_EXTENDED_SYMBOL_in_check_option8700_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANGED_SYMBOL_in_check_option8704  */
static	ANTLR3_BITWORD FOLLOW_CHANGED_SYMBOL_in_check_option8704_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANGED_SYMBOL_in_check_option8704	= { FOLLOW_CHANGED_SYMBOL_in_check_option8704_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8732  */
static	ANTLR3_BITWORD FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8732_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8732	= { FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8732_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8735  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8735_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8735	= { FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8735_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_install_uninstall_statment8737  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_install_uninstall_statment8737_bits[]	= { ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_install_uninstall_statment8737	= { FOLLOW_identifier_in_install_uninstall_statment8737_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8739  */
static	ANTLR3_BITWORD FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8739_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8739	= { FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8739_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_install_uninstall_statment8741  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_install_uninstall_statment8741_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_install_uninstall_statment8741	= { FOLLOW_string_literal_in_install_uninstall_statment8741_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8746  */
static	ANTLR3_BITWORD FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8746_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8746	= { FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8746_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8749  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8749_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8749	= { FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8749_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_install_uninstall_statment8751  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_install_uninstall_statment8751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_install_uninstall_statment8751	= { FOLLOW_identifier_in_install_uninstall_statment8751_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_set_statement8762  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_set_statement8762_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000200000170), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_set_statement8762	= { FOLLOW_SET_SYMBOL_in_set_statement8762_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_set_statement8785  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_set_statement8785_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) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_set_statement8785	= { FOLLOW_option_type_in_set_statement8785_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRANSACTION_SYMBOL_in_set_statement8788  */
static	ANTLR3_BITWORD FOLLOW_TRANSACTION_SYMBOL_in_set_statement8788_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000020000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_TRANSACTION_SYMBOL_in_set_statement8788	= { FOLLOW_TRANSACTION_SYMBOL_in_set_statement8788_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_transaction_characteristic_in_set_statement8790  */
static	ANTLR3_BITWORD FOLLOW_set_transaction_characteristic_in_set_statement8790_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_transaction_characteristic_in_set_statement8790	= { FOLLOW_set_transaction_characteristic_in_set_statement8790_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8801  */
static	ANTLR3_BITWORD FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8801_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000200000170), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8801	= { FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8801_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_no_option_type_in_set_statement8804  */
static	ANTLR3_BITWORD FOLLOW_option_value_no_option_type_in_set_statement8804_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_no_option_type_in_set_statement8804	= { FOLLOW_option_value_no_option_type_in_set_statement8804_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_set_statement8807  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_set_statement8807_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000200000170), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_set_statement8807	= { FOLLOW_COMMA_SYMBOL_in_set_statement8807_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_list_in_set_statement8809  */
static	ANTLR3_BITWORD FOLLOW_option_value_list_in_set_statement8809_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_list_in_set_statement8809	= { FOLLOW_option_value_list_in_set_statement8809_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_set_statement8818  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_set_statement8818_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_set_statement8818	= { FOLLOW_option_type_in_set_statement8818_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_following_option_type_in_set_statement8820  */
static	ANTLR3_BITWORD FOLLOW_option_value_following_option_type_in_set_statement8820_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_following_option_type_in_set_statement8820	= { FOLLOW_option_value_following_option_type_in_set_statement8820_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_set_statement8823  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_set_statement8823_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000200000170), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_set_statement8823	= { FOLLOW_COMMA_SYMBOL_in_set_statement8823_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_list_in_set_statement8825  */
static	ANTLR3_BITWORD FOLLOW_option_value_list_in_set_statement8825_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_list_in_set_statement8825	= { FOLLOW_option_value_list_in_set_statement8825_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8850  */
static	ANTLR3_BITWORD FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8850_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001104), ANTLR3_UINT64_LIT(0x0000008020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8850	= { FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8850_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_no_option_type8859  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_no_option_type8859_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_no_option_type8859	= { FOLLOW_equal_in_option_value_no_option_type8859_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_option_value_no_option_type8861  */
static	ANTLR3_BITWORD FOLLOW_expression_in_option_value_no_option_type8861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_option_value_no_option_type8861	= { FOLLOW_expression_in_option_value_no_option_type8861_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_option_value_no_option_type8868  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_option_value_no_option_type8868_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_option_value_no_option_type8868	= { FOLLOW_charset_name_or_default_in_option_value_no_option_type8868_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8871  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8871_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8871	= { FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8871_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_option_value_no_option_type8873  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_option_value_no_option_type8873_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_option_value_no_option_type8873	= { FOLLOW_collation_name_or_default_in_option_value_no_option_type8873_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_option_value_no_option_type8884  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_option_value_no_option_type8884_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_option_value_no_option_type8884	= { FOLLOW_variable_name_in_option_value_no_option_type8884_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_no_option_type8886  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_no_option_type8886_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0xC159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_no_option_type8886	= { FOLLOW_equal_in_option_value_no_option_type8886_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value_no_option_type8888  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value_no_option_type8888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value_no_option_type8888	= { FOLLOW_set_expression_or_default_in_option_value_no_option_type8888_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_option_value_no_option_type8893  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_option_value_no_option_type8893_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_option_value_no_option_type8893	= { FOLLOW_user_variable_in_option_value_no_option_type8893_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_no_option_type8895  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_no_option_type8895_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_no_option_type8895	= { FOLLOW_equal_in_option_value_no_option_type8895_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_option_value_no_option_type8897  */
static	ANTLR3_BITWORD FOLLOW_expression_in_option_value_no_option_type8897_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_option_value_no_option_type8897	= { FOLLOW_expression_in_option_value_no_option_type8897_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_system_variable_in_option_value_no_option_type8902  */
static	ANTLR3_BITWORD FOLLOW_system_variable_in_option_value_no_option_type8902_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_system_variable_in_option_value_no_option_type8902	= { FOLLOW_system_variable_in_option_value_no_option_type8902_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_no_option_type8904  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_no_option_type8904_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0xC159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_no_option_type8904	= { FOLLOW_equal_in_option_value_no_option_type8904_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value_no_option_type8906  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value_no_option_type8906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value_no_option_type8906	= { FOLLOW_set_expression_or_default_in_option_value_no_option_type8906_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_clause_in_option_value_no_option_type8911  */
static	ANTLR3_BITWORD FOLLOW_charset_clause_in_option_value_no_option_type8911_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_clause_in_option_value_no_option_type8911	= { FOLLOW_charset_clause_in_option_value_no_option_type8911_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_option_value_following_option_type8920  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_option_value_following_option_type8920_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_option_value_following_option_type8920	= { FOLLOW_variable_name_in_option_value_following_option_type8920_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value_following_option_type8922  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value_following_option_type8922_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0xC159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value_following_option_type8922	= { FOLLOW_equal_in_option_value_following_option_type8922_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value_following_option_type8924  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value_following_option_type8924_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value_following_option_type8924	= { FOLLOW_set_expression_or_default_in_option_value_following_option_type8924_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_set_expression_or_default8934  */
static	ANTLR3_BITWORD FOLLOW_expression_in_set_expression_or_default8934_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_set_expression_or_default8934	= { FOLLOW_expression_in_set_expression_or_default8934_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8939  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8939_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8939	= { FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8939_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_set_expression_or_default8944  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_set_expression_or_default8944_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ON_SYMBOL_in_set_expression_or_default8944	= { FOLLOW_ON_SYMBOL_in_set_expression_or_default8944_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_set_expression_or_default8949  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_set_expression_or_default8949_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_set_expression_or_default8949	= { FOLLOW_ALL_SYMBOL_in_set_expression_or_default8949_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8954  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8954_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8954	= { FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8954_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_in_option_value_list8963  */
static	ANTLR3_BITWORD FOLLOW_option_value_in_option_value_list8963_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_in_option_value_list8963	= { FOLLOW_option_value_in_option_value_list8963_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_option_value_list8966  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_option_value_list8966_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000200000170), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_option_value_list8966	= { FOLLOW_COMMA_SYMBOL_in_option_value_list8966_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_in_option_value_list8968  */
static	ANTLR3_BITWORD FOLLOW_option_value_in_option_value_list8968_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_in_option_value_list8968	= { FOLLOW_option_value_in_option_value_list8968_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_option_value8979  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_option_value8979_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_option_value8979	= { FOLLOW_option_type_in_option_value8979_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_option_value8981  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_option_value8981_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_option_value8981	= { FOLLOW_variable_name_in_option_value8981_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_equal_in_option_value8983  */
static	ANTLR3_BITWORD FOLLOW_equal_in_option_value8983_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0xC159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_equal_in_option_value8983	= { FOLLOW_equal_in_option_value8983_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_expression_or_default_in_option_value8985  */
static	ANTLR3_BITWORD FOLLOW_set_expression_or_default_in_option_value8985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_expression_or_default_in_option_value8985	= { FOLLOW_set_expression_or_default_in_option_value8985_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_value_no_option_type_in_option_value8990  */
static	ANTLR3_BITWORD FOLLOW_option_value_no_option_type_in_option_value8990_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_option_value_no_option_type_in_option_value8990	= { FOLLOW_option_value_no_option_type_in_option_value8990_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHOW_SYMBOL_in_show_statement9001  */
static	ANTLR3_BITWORD FOLLOW_SHOW_SYMBOL_in_show_statement9001_bits[]	= { ANTLR3_UINT64_LIT(0x0001000080000800), ANTLR3_UINT64_LIT(0x0000020012000210), ANTLR3_UINT64_LIT(0x0210005018020096), ANTLR3_UINT64_LIT(0x6000000000000000), ANTLR3_UINT64_LIT(0x00040000000800E8), ANTLR3_UINT64_LIT(0x00012008080800C0), ANTLR3_UINT64_LIT(0x2028000200001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SHOW_SYMBOL_in_show_statement9001	= { FOLLOW_SHOW_SYMBOL_in_show_statement9001_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTHORS_SYMBOL_in_show_statement9011  */
static	ANTLR3_BITWORD FOLLOW_AUTHORS_SYMBOL_in_show_statement9011_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTHORS_SYMBOL_in_show_statement9011	= { FOLLOW_AUTHORS_SYMBOL_in_show_statement9011_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASES_SYMBOL_in_show_statement9017  */
static	ANTLR3_BITWORD FOLLOW_DATABASES_SYMBOL_in_show_statement9017_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASES_SYMBOL_in_show_statement9017	= { FOLLOW_DATABASES_SYMBOL_in_show_statement9017_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9019  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9019_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9019	= { FOLLOW_like_or_where_in_show_statement9019_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement9026  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement9026_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) };
static  ANTLR3_BITSET_LIST FOLLOW_FULL_SYMBOL_in_show_statement9026	= { FOLLOW_FULL_SYMBOL_in_show_statement9026_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_show_statement9029  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_show_statement9029_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x4000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_show_statement9029	= { FOLLOW_TABLES_SYMBOL_in_show_statement9029_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9031  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9031_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9031	= { FOLLOW_in_db_in_show_statement9031_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9034  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9034	= { FOLLOW_like_or_where_in_show_statement9034_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement9041  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement9041_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_FULL_SYMBOL_in_show_statement9041	= { FOLLOW_FULL_SYMBOL_in_show_statement9041_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGERS_SYMBOL_in_show_statement9044  */
static	ANTLR3_BITWORD FOLLOW_TRIGGERS_SYMBOL_in_show_statement9044_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x4000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGERS_SYMBOL_in_show_statement9044	= { FOLLOW_TRIGGERS_SYMBOL_in_show_statement9044_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9046  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9046_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9046	= { FOLLOW_in_db_in_show_statement9046_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9049  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9049_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9049	= { FOLLOW_like_or_where_in_show_statement9049_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENTS_SYMBOL_in_show_statement9056  */
static	ANTLR3_BITWORD FOLLOW_EVENTS_SYMBOL_in_show_statement9056_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x4000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENTS_SYMBOL_in_show_statement9056	= { FOLLOW_EVENTS_SYMBOL_in_show_statement9056_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9058  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9058_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9058	= { FOLLOW_in_db_in_show_statement9058_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9061  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9061	= { FOLLOW_like_or_where_in_show_statement9061_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_show_statement9068  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_show_statement9068_bits[]	= { 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_TABLE_SYMBOL_in_show_statement9068	= { FOLLOW_TABLE_SYMBOL_in_show_statement9068_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9070  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9070_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x4000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9070	= { FOLLOW_STATUS_SYMBOL_in_show_statement9070_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9072  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9072_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9072	= { FOLLOW_in_db_in_show_statement9072_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9075  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9075	= { FOLLOW_like_or_where_in_show_statement9075_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_show_statement9082  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_show_statement9082_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) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_SYMBOL_in_show_statement9082	= { FOLLOW_OPEN_SYMBOL_in_show_statement9082_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLES_SYMBOL_in_show_statement9084  */
static	ANTLR3_BITWORD FOLLOW_TABLES_SYMBOL_in_show_statement9084_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x4000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLES_SYMBOL_in_show_statement9084	= { FOLLOW_TABLES_SYMBOL_in_show_statement9084_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9086  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9086_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9086	= { FOLLOW_in_db_in_show_statement9086_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9089  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9089_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9089	= { FOLLOW_like_or_where_in_show_statement9089_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGIN_SYMBOL_in_show_statement9098  */
static	ANTLR3_BITWORD FOLLOW_PLUGIN_SYMBOL_in_show_statement9098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGIN_SYMBOL_in_show_statement9098	= { FOLLOW_PLUGIN_SYMBOL_in_show_statement9098_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUGINS_SYMBOL_in_show_statement9107  */
static	ANTLR3_BITWORD FOLLOW_PLUGINS_SYMBOL_in_show_statement9107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUGINS_SYMBOL_in_show_statement9107	= { FOLLOW_PLUGINS_SYMBOL_in_show_statement9107_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_show_statement9113  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_show_statement9113_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_show_statement9113	= { FOLLOW_ENGINE_SYMBOL_in_show_statement9113_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_show_statement9115  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_show_statement9115_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_show_statement9115	= { FOLLOW_engine_ref_in_show_statement9115_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9117  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9117	= { FOLLOW_set_in_show_statement9117_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement9129  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement9129_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FULL_SYMBOL_in_show_statement9129	= { FOLLOW_FULL_SYMBOL_in_show_statement9129_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_show_statement9132  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_show_statement9132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMNS_SYMBOL_in_show_statement9132	= { FOLLOW_COLUMNS_SYMBOL_in_show_statement9132_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9134  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9134_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9134	= { FOLLOW_set_in_show_statement9134_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_show_statement9142  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_show_statement9142_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x4000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_show_statement9142	= { FOLLOW_table_ref_in_show_statement9142_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9144  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9144_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9144	= { FOLLOW_in_db_in_show_statement9144_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9147  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9147_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9147	= { FOLLOW_like_or_where_in_show_statement9147_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9154  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9154_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9154	= { FOLLOW_set_in_show_statement9154_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_show_statement9162  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_show_statement9162_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_show_statement9162	= { FOLLOW_LOGS_SYMBOL_in_show_statement9162_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_show_statement9168  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_show_statement9168_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_show_statement9168	= { FOLLOW_SLAVE_SYMBOL_in_show_statement9168_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOSTS_SYMBOL_in_show_statement9179  */
static	ANTLR3_BITWORD FOLLOW_HOSTS_SYMBOL_in_show_statement9179_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOSTS_SYMBOL_in_show_statement9179	= { FOLLOW_HOSTS_SYMBOL_in_show_statement9179_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9187  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9187_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9187	= { FOLLOW_STATUS_SYMBOL_in_show_statement9187_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_non_blocking_in_show_statement9189  */
static	ANTLR3_BITWORD FOLLOW_non_blocking_in_show_statement9189_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_non_blocking_in_show_statement9189	= { FOLLOW_non_blocking_in_show_statement9189_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_show_statement9191  */
static	ANTLR3_BITWORD FOLLOW_channel_in_show_statement9191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_show_statement9191	= { FOLLOW_channel_in_show_statement9191_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9203  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9203_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9203	= { FOLLOW_set_in_show_statement9203_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENTS_SYMBOL_in_show_statement9211  */
static	ANTLR3_BITWORD FOLLOW_EVENTS_SYMBOL_in_show_statement9211_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(0x5000000000000000), ANTLR3_UINT64_LIT(0x8000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENTS_SYMBOL_in_show_statement9211	= { FOLLOW_EVENTS_SYMBOL_in_show_statement9211_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_show_statement9214  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_show_statement9214_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_show_statement9214	= { FOLLOW_IN_SYMBOL_in_show_statement9214_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_show_statement9216  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_show_statement9216_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(0x5000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_show_statement9216	= { FOLLOW_text_string_in_show_statement9216_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_show_statement9221  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_show_statement9221_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_show_statement9221	= { FOLLOW_FROM_SYMBOL_in_show_statement9221_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_show_statement9223  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_show_statement9223_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(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_show_statement9223	= { FOLLOW_ulonglong_number_in_show_statement9223_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement9227  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement9227_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement9227	= { FOLLOW_limit_clause_in_show_statement9227_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_show_statement9230  */
static	ANTLR3_BITWORD FOLLOW_channel_in_show_statement9230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_show_statement9230	= { FOLLOW_channel_in_show_statement9230_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9237  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9237_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000010000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9237	= { FOLLOW_set_in_show_statement9237_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_from_or_in_in_show_statement9249  */
static	ANTLR3_BITWORD FOLLOW_from_or_in_in_show_statement9249_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_from_or_in_in_show_statement9249	= { FOLLOW_from_or_in_in_show_statement9249_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_show_statement9251  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_show_statement9251_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_show_statement9251	= { FOLLOW_table_ref_in_show_statement9251_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_db_in_show_statement9253  */
static	ANTLR3_BITWORD FOLLOW_in_db_in_show_statement9253_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_in_db_in_show_statement9253	= { FOLLOW_in_db_in_show_statement9253_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_show_statement9256  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_show_statement9256_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_show_statement9256	= { FOLLOW_where_clause_in_show_statement9256_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_show_statement9263  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_show_statement9263_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_show_statement9263	= { FOLLOW_STORAGE_SYMBOL_in_show_statement9263_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINES_SYMBOL_in_show_statement9266  */
static	ANTLR3_BITWORD FOLLOW_ENGINES_SYMBOL_in_show_statement9266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINES_SYMBOL_in_show_statement9266	= { FOLLOW_ENGINES_SYMBOL_in_show_statement9266_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9272  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9272_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9272	= { FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9272_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COUNT_SYMBOL_in_show_statement9278  */
static	ANTLR3_BITWORD FOLLOW_COUNT_SYMBOL_in_show_statement9278_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_COUNT_SYMBOL_in_show_statement9278	= { FOLLOW_COUNT_SYMBOL_in_show_statement9278_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_show_statement9280  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_show_statement9280_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_OPEN_PAR_SYMBOL_in_show_statement9280	= { FOLLOW_OPEN_PAR_SYMBOL_in_show_statement9280_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_show_statement9282  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_show_statement9282_bits[]	= { ANTLR3_UINT64_LIT(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_MULT_OPERATOR_in_show_statement9282	= { FOLLOW_MULT_OPERATOR_in_show_statement9282_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9284  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9284_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000010), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9284	= { FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9284_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9286  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9286_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9286	= { FOLLOW_set_in_show_statement9286_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WARNINGS_SYMBOL_in_show_statement9298  */
static	ANTLR3_BITWORD FOLLOW_WARNINGS_SYMBOL_in_show_statement9298_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WARNINGS_SYMBOL_in_show_statement9298	= { FOLLOW_WARNINGS_SYMBOL_in_show_statement9298_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement9300  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement9300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement9300	= { FOLLOW_limit_clause_in_show_statement9300_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ERRORS_SYMBOL_in_show_statement9307  */
static	ANTLR3_BITWORD FOLLOW_ERRORS_SYMBOL_in_show_statement9307_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ERRORS_SYMBOL_in_show_statement9307	= { FOLLOW_ERRORS_SYMBOL_in_show_statement9307_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement9309  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement9309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement9309	= { FOLLOW_limit_clause_in_show_statement9309_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROFILES_SYMBOL_in_show_statement9316  */
static	ANTLR3_BITWORD FOLLOW_PROFILES_SYMBOL_in_show_statement9316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROFILES_SYMBOL_in_show_statement9316	= { FOLLOW_PROFILES_SYMBOL_in_show_statement9316_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROFILE_SYMBOL_in_show_statement9322  */
static	ANTLR3_BITWORD FOLLOW_PROFILE_SYMBOL_in_show_statement9322_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000050000000800), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0040000000200000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0800000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROFILE_SYMBOL_in_show_statement9322	= { FOLLOW_PROFILE_SYMBOL_in_show_statement9322_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_profile_type_in_show_statement9325  */
static	ANTLR3_BITWORD FOLLOW_profile_type_in_show_statement9325_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(0x0000100000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_profile_type_in_show_statement9325	= { FOLLOW_profile_type_in_show_statement9325_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_show_statement9328  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_show_statement9328_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000050000000800), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0040000000200000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0800000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_show_statement9328	= { FOLLOW_COMMA_SYMBOL_in_show_statement9328_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_profile_type_in_show_statement9330  */
static	ANTLR3_BITWORD FOLLOW_profile_type_in_show_statement9330_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(0x0000100000000000), ANTLR3_UINT64_LIT(0x1000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_profile_type_in_show_statement9330	= { FOLLOW_profile_type_in_show_statement9330_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_show_statement9337  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_show_statement9337_bits[]	= { 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_FOR_SYMBOL_in_show_statement9337	= { FOLLOW_FOR_SYMBOL_in_show_statement9337_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_show_statement9339  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_show_statement9339_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_QUERY_SYMBOL_in_show_statement9339	= { FOLLOW_QUERY_SYMBOL_in_show_statement9339_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_show_statement9341  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_show_statement9341_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(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_show_statement9341	= { FOLLOW_INT_NUMBER_in_show_statement9341_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_limit_clause_in_show_statement9345  */
static	ANTLR3_BITWORD FOLLOW_limit_clause_in_show_statement9345_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_limit_clause_in_show_statement9345	= { FOLLOW_limit_clause_in_show_statement9345_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_show_statement9352  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_show_statement9352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_option_type_in_show_statement9352	= { FOLLOW_option_type_in_show_statement9352_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_show_statement9355  */
static	ANTLR3_BITWORD FOLLOW_set_in_show_statement9355_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_show_statement9355	= { FOLLOW_set_in_show_statement9355_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9363  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9363	= { FOLLOW_like_or_where_in_show_statement9363_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FULL_SYMBOL_in_show_statement9370  */
static	ANTLR3_BITWORD FOLLOW_FULL_SYMBOL_in_show_statement9370_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_FULL_SYMBOL_in_show_statement9370	= { FOLLOW_FULL_SYMBOL_in_show_statement9370_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9373  */
static	ANTLR3_BITWORD FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9373_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9373	= { FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9373_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_show_statement9379  */
static	ANTLR3_BITWORD FOLLOW_charset_in_show_statement9379_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_show_statement9379	= { FOLLOW_charset_in_show_statement9379_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9381  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9381_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9381	= { FOLLOW_like_or_where_in_show_statement9381_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATION_SYMBOL_in_show_statement9388  */
static	ANTLR3_BITWORD FOLLOW_COLLATION_SYMBOL_in_show_statement9388_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATION_SYMBOL_in_show_statement9388	= { FOLLOW_COLLATION_SYMBOL_in_show_statement9388_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9390  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9390_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9390	= { FOLLOW_like_or_where_in_show_statement9390_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9399  */
static	ANTLR3_BITWORD FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9399	= { FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9399_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GRANTS_SYMBOL_in_show_statement9405  */
static	ANTLR3_BITWORD FOLLOW_GRANTS_SYMBOL_in_show_statement9405_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_GRANTS_SYMBOL_in_show_statement9405	= { FOLLOW_GRANTS_SYMBOL_in_show_statement9405_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_show_statement9408  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_show_statement9408_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_show_statement9408	= { FOLLOW_FOR_SYMBOL_in_show_statement9408_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_show_statement9410  */
static	ANTLR3_BITWORD FOLLOW_user_in_show_statement9410_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_show_statement9410	= { FOLLOW_user_in_show_statement9410_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_show_statement9418  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_show_statement9418_bits[]	= { 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_MASTER_SYMBOL_in_show_statement9418	= { FOLLOW_MASTER_SYMBOL_in_show_statement9418_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9420  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9420_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9420	= { FOLLOW_STATUS_SYMBOL_in_show_statement9420_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CREATE_SYMBOL_in_show_statement9426  */
static	ANTLR3_BITWORD FOLLOW_CREATE_SYMBOL_in_show_statement9426_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000040), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000480800000000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000100000), ANTLR3_UINT64_LIT(0x0040100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CREATE_SYMBOL_in_show_statement9426	= { FOLLOW_CREATE_SYMBOL_in_show_statement9426_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_show_statement9437  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_show_statement9437_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000060000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATABASE_SYMBOL_in_show_statement9437	= { FOLLOW_DATABASE_SYMBOL_in_show_statement9437_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_not_exists_in_show_statement9439  */
static	ANTLR3_BITWORD FOLLOW_if_not_exists_in_show_statement9439_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_not_exists_in_show_statement9439	= { FOLLOW_if_not_exists_in_show_statement9439_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_show_statement9442  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_show_statement9442_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_schema_ref_in_show_statement9442	= { FOLLOW_schema_ref_in_show_statement9442_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVENT_SYMBOL_in_show_statement9450  */
static	ANTLR3_BITWORD FOLLOW_EVENT_SYMBOL_in_show_statement9450_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_EVENT_SYMBOL_in_show_statement9450	= { FOLLOW_EVENT_SYMBOL_in_show_statement9450_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_event_ref_in_show_statement9452  */
static	ANTLR3_BITWORD FOLLOW_event_ref_in_show_statement9452_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_event_ref_in_show_statement9452	= { FOLLOW_event_ref_in_show_statement9452_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_show_statement9460  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_show_statement9460_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_show_statement9460	= { FOLLOW_FUNCTION_SYMBOL_in_show_statement9460_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_ref_in_show_statement9462  */
static	ANTLR3_BITWORD FOLLOW_function_ref_in_show_statement9462_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_ref_in_show_statement9462	= { FOLLOW_function_ref_in_show_statement9462_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_show_statement9470  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_show_statement9470_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_show_statement9470	= { FOLLOW_PROCEDURE_SYMBOL_in_show_statement9470_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_show_statement9472  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_show_statement9472_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_show_statement9472	= { FOLLOW_procedure_ref_in_show_statement9472_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLE_SYMBOL_in_show_statement9480  */
static	ANTLR3_BITWORD FOLLOW_TABLE_SYMBOL_in_show_statement9480_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLE_SYMBOL_in_show_statement9480	= { FOLLOW_TABLE_SYMBOL_in_show_statement9480_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_show_statement9482  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_show_statement9482_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_show_statement9482	= { FOLLOW_table_ref_in_show_statement9482_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIGGER_SYMBOL_in_show_statement9490  */
static	ANTLR3_BITWORD FOLLOW_TRIGGER_SYMBOL_in_show_statement9490_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRIGGER_SYMBOL_in_show_statement9490	= { FOLLOW_TRIGGER_SYMBOL_in_show_statement9490_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trigger_ref_in_show_statement9492  */
static	ANTLR3_BITWORD FOLLOW_trigger_ref_in_show_statement9492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_trigger_ref_in_show_statement9492	= { FOLLOW_trigger_ref_in_show_statement9492_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VIEW_SYMBOL_in_show_statement9500  */
static	ANTLR3_BITWORD FOLLOW_VIEW_SYMBOL_in_show_statement9500_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_VIEW_SYMBOL_in_show_statement9500	= { FOLLOW_VIEW_SYMBOL_in_show_statement9500_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_ref_in_show_statement9502  */
static	ANTLR3_BITWORD FOLLOW_view_ref_in_show_statement9502_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_view_ref_in_show_statement9502	= { FOLLOW_view_ref_in_show_statement9502_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_show_statement9512  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_show_statement9512_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_SYMBOL_in_show_statement9512	= { FOLLOW_USER_SYMBOL_in_show_statement9512_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_show_statement9514  */
static	ANTLR3_BITWORD FOLLOW_user_in_show_statement9514_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_show_statement9514	= { FOLLOW_user_in_show_statement9514_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_show_statement9525  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_show_statement9525_bits[]	= { 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_PROCEDURE_SYMBOL_in_show_statement9525	= { FOLLOW_PROCEDURE_SYMBOL_in_show_statement9525_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9527  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9527_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9527	= { FOLLOW_STATUS_SYMBOL_in_show_statement9527_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9529  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9529_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9529	= { FOLLOW_like_or_where_in_show_statement9529_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_show_statement9536  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_show_statement9536_bits[]	= { 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_FUNCTION_SYMBOL_in_show_statement9536	= { FOLLOW_FUNCTION_SYMBOL_in_show_statement9536_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9538  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9538_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(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9538	= { FOLLOW_STATUS_SYMBOL_in_show_statement9538_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_or_where_in_show_statement9540  */
static	ANTLR3_BITWORD FOLLOW_like_or_where_in_show_statement9540_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_or_where_in_show_statement9540	= { FOLLOW_like_or_where_in_show_statement9540_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PROCEDURE_SYMBOL_in_show_statement9547  */
static	ANTLR3_BITWORD FOLLOW_PROCEDURE_SYMBOL_in_show_statement9547_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PROCEDURE_SYMBOL_in_show_statement9547	= { FOLLOW_PROCEDURE_SYMBOL_in_show_statement9547_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_SYMBOL_in_show_statement9549  */
static	ANTLR3_BITWORD FOLLOW_CODE_SYMBOL_in_show_statement9549_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_CODE_SYMBOL_in_show_statement9549	= { FOLLOW_CODE_SYMBOL_in_show_statement9549_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_procedure_ref_in_show_statement9551  */
static	ANTLR3_BITWORD FOLLOW_procedure_ref_in_show_statement9551_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_procedure_ref_in_show_statement9551	= { FOLLOW_procedure_ref_in_show_statement9551_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FUNCTION_SYMBOL_in_show_statement9557  */
static	ANTLR3_BITWORD FOLLOW_FUNCTION_SYMBOL_in_show_statement9557_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000001000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FUNCTION_SYMBOL_in_show_statement9557	= { FOLLOW_FUNCTION_SYMBOL_in_show_statement9557_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_SYMBOL_in_show_statement9559  */
static	ANTLR3_BITWORD FOLLOW_CODE_SYMBOL_in_show_statement9559_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_CODE_SYMBOL_in_show_statement9559	= { FOLLOW_CODE_SYMBOL_in_show_statement9559_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_ref_in_show_statement9561  */
static	ANTLR3_BITWORD FOLLOW_function_ref_in_show_statement9561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_ref_in_show_statement9561	= { FOLLOW_function_ref_in_show_statement9561_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INNODB_SYMBOL_in_show_statement9569  */
static	ANTLR3_BITWORD FOLLOW_INNODB_SYMBOL_in_show_statement9569_bits[]	= { 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_INNODB_SYMBOL_in_show_statement9569	= { FOLLOW_INNODB_SYMBOL_in_show_statement9569_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_show_statement9571  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_show_statement9571_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_show_statement9571	= { FOLLOW_STATUS_SYMBOL_in_show_statement9571_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9586  */
static	ANTLR3_BITWORD FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9586_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9586	= { FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9586_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_from_or_in_in_in_db9614  */
static	ANTLR3_BITWORD FOLLOW_from_or_in_in_in_db9614_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_from_or_in_in_in_db9614	= { FOLLOW_from_or_in_in_in_db9614_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_in_db9616  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_in_db9616_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_in_db9616	= { FOLLOW_identifier_in_in_db9616_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_profile_type9625  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_profile_type9625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_profile_type9625	= { FOLLOW_ALL_SYMBOL_in_profile_type9625_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BLOCK_SYMBOL_in_profile_type9630  */
static	ANTLR3_BITWORD FOLLOW_BLOCK_SYMBOL_in_profile_type9630_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BLOCK_SYMBOL_in_profile_type9630	= { FOLLOW_BLOCK_SYMBOL_in_profile_type9630_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IO_SYMBOL_in_profile_type9632  */
static	ANTLR3_BITWORD FOLLOW_IO_SYMBOL_in_profile_type9632_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IO_SYMBOL_in_profile_type9632	= { FOLLOW_IO_SYMBOL_in_profile_type9632_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTEXT_SYMBOL_in_profile_type9637  */
static	ANTLR3_BITWORD FOLLOW_CONTEXT_SYMBOL_in_profile_type9637_bits[]	= { 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_CONTEXT_SYMBOL_in_profile_type9637	= { FOLLOW_CONTEXT_SYMBOL_in_profile_type9637_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SWITCHES_SYMBOL_in_profile_type9639  */
static	ANTLR3_BITWORD FOLLOW_SWITCHES_SYMBOL_in_profile_type9639_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SWITCHES_SYMBOL_in_profile_type9639	= { FOLLOW_SWITCHES_SYMBOL_in_profile_type9639_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CPU_SYMBOL_in_profile_type9644  */
static	ANTLR3_BITWORD FOLLOW_CPU_SYMBOL_in_profile_type9644_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CPU_SYMBOL_in_profile_type9644	= { FOLLOW_CPU_SYMBOL_in_profile_type9644_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IPC_SYMBOL_in_profile_type9649  */
static	ANTLR3_BITWORD FOLLOW_IPC_SYMBOL_in_profile_type9649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IPC_SYMBOL_in_profile_type9649	= { FOLLOW_IPC_SYMBOL_in_profile_type9649_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEMORY_SYMBOL_in_profile_type9654  */
static	ANTLR3_BITWORD FOLLOW_MEMORY_SYMBOL_in_profile_type9654_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEMORY_SYMBOL_in_profile_type9654	= { FOLLOW_MEMORY_SYMBOL_in_profile_type9654_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PAGE_SYMBOL_in_profile_type9659  */
static	ANTLR3_BITWORD FOLLOW_PAGE_SYMBOL_in_profile_type9659_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_PAGE_SYMBOL_in_profile_type9659	= { FOLLOW_PAGE_SYMBOL_in_profile_type9659_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FAULTS_SYMBOL_in_profile_type9661  */
static	ANTLR3_BITWORD FOLLOW_FAULTS_SYMBOL_in_profile_type9661_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FAULTS_SYMBOL_in_profile_type9661	= { FOLLOW_FAULTS_SYMBOL_in_profile_type9661_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOURCE_SYMBOL_in_profile_type9666  */
static	ANTLR3_BITWORD FOLLOW_SOURCE_SYMBOL_in_profile_type9666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SOURCE_SYMBOL_in_profile_type9666	= { FOLLOW_SOURCE_SYMBOL_in_profile_type9666_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SWAPS_SYMBOL_in_profile_type9671  */
static	ANTLR3_BITWORD FOLLOW_SWAPS_SYMBOL_in_profile_type9671_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SWAPS_SYMBOL_in_profile_type9671	= { FOLLOW_SWAPS_SYMBOL_in_profile_type9671_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9682  */
static	ANTLR3_BITWORD FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9682_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9682	= { FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9682_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_other_administrative_statement9685  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_other_administrative_statement9685_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_other_administrative_statement9685	= { FOLLOW_string_literal_in_other_administrative_statement9685_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9690  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9690_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CACHE_SYMBOL_in_other_administrative_statement9690	= { FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9690_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9693  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9693_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9693	= { FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9693_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_cache_list_or_parts_in_other_administrative_statement9695  */
static	ANTLR3_BITWORD FOLLOW_key_cache_list_or_parts_in_other_administrative_statement9695_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_key_cache_list_or_parts_in_other_administrative_statement9695	= { FOLLOW_key_cache_list_or_parts_in_other_administrative_statement9695_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_other_administrative_statement9697  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_other_administrative_statement9697_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_other_administrative_statement9697	= { FOLLOW_IN_SYMBOL_in_other_administrative_statement9697_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_other_administrative_statement9700  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_other_administrative_statement9700_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_other_administrative_statement9700	= { FOLLOW_identifier_in_other_administrative_statement9700_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9704  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9704_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9704	= { FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9704_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9710  */
static	ANTLR3_BITWORD FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9710_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x009000004080000A), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000040408), ANTLR3_UINT64_LIT(0x0000040000080040), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0020000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9710	= { FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9710_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_no_write_to_bin_log_in_other_administrative_statement9713  */
static	ANTLR3_BITWORD FOLLOW_no_write_to_bin_log_in_other_administrative_statement9713_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x008000004080000A), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000040408), ANTLR3_UINT64_LIT(0x0000040000080040), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_no_write_to_bin_log_in_other_administrative_statement9713	= { FOLLOW_no_write_to_bin_log_in_other_administrative_statement9713_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_tables_in_other_administrative_statement9723  */
static	ANTLR3_BITWORD FOLLOW_flush_tables_in_other_administrative_statement9723_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_tables_in_other_administrative_statement9723	= { FOLLOW_flush_tables_in_other_administrative_statement9723_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_option_in_other_administrative_statement9730  */
static	ANTLR3_BITWORD FOLLOW_flush_option_in_other_administrative_statement9730_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_option_in_other_administrative_statement9730	= { FOLLOW_flush_option_in_other_administrative_statement9730_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9733  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9733_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000000000), ANTLR3_UINT64_LIT(0x008000004080000A), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0040000000040408), ANTLR3_UINT64_LIT(0x0000040000000040), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9733	= { FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9733_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_option_in_other_administrative_statement9735  */
static	ANTLR3_BITWORD FOLLOW_flush_option_in_other_administrative_statement9735_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_option_in_other_administrative_statement9735	= { FOLLOW_flush_option_in_other_administrative_statement9735_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KILL_SYMBOL_in_other_administrative_statement9746  */
static	ANTLR3_BITWORD FOLLOW_KILL_SYMBOL_in_other_administrative_statement9746_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_KILL_SYMBOL_in_other_administrative_statement9746	= { FOLLOW_KILL_SYMBOL_in_other_administrative_statement9746_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_other_administrative_statement9763  */
static	ANTLR3_BITWORD FOLLOW_set_in_other_administrative_statement9763_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_other_administrative_statement9763	= { FOLLOW_set_in_other_administrative_statement9763_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_other_administrative_statement9773  */
static	ANTLR3_BITWORD FOLLOW_expression_in_other_administrative_statement9773_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_other_administrative_statement9773	= { FOLLOW_expression_in_other_administrative_statement9773_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOAD_SYMBOL_in_other_administrative_statement9778  */
static	ANTLR3_BITWORD FOLLOW_LOAD_SYMBOL_in_other_administrative_statement9778_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_other_administrative_statement9778	= { FOLLOW_LOAD_SYMBOL_in_other_administrative_statement9778_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9781  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_INDEX_SYMBOL_in_other_administrative_statement9781	= { FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9781_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_other_administrative_statement9783  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_other_administrative_statement9783_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_other_administrative_statement9783	= { FOLLOW_INTO_SYMBOL_in_other_administrative_statement9783_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9785  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9785_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9785	= { FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9785_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_table_index_list_in_other_administrative_statement9787  */
static	ANTLR3_BITWORD FOLLOW_load_table_index_list_in_other_administrative_statement9787_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_load_table_index_list_in_other_administrative_statement9787	= { FOLLOW_load_table_index_list_in_other_administrative_statement9787_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESET_SYMBOL_in_other_administrative_statement9792  */
static	ANTLR3_BITWORD FOLLOW_RESET_SYMBOL_in_other_administrative_statement9792_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_RESET_SYMBOL_in_other_administrative_statement9792	= { FOLLOW_RESET_SYMBOL_in_other_administrative_statement9792_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reset_option_in_other_administrative_statement9795  */
static	ANTLR3_BITWORD FOLLOW_reset_option_in_other_administrative_statement9795_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reset_option_in_other_administrative_statement9795	= { FOLLOW_reset_option_in_other_administrative_statement9795_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9798  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9798_bits[]	= { ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9798	= { FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9798_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reset_option_in_other_administrative_statement9800  */
static	ANTLR3_BITWORD FOLLOW_reset_option_in_other_administrative_statement9800_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reset_option_in_other_administrative_statement9800	= { FOLLOW_reset_option_in_other_administrative_statement9800_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9809  */
static	ANTLR3_BITWORD FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9809_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9809	= { FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9809_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_cache_list_in_key_cache_list_or_parts9829  */
static	ANTLR3_BITWORD FOLLOW_key_cache_list_in_key_cache_list_or_parts9829_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_key_cache_list_in_key_cache_list_or_parts9829	= { FOLLOW_key_cache_list_in_key_cache_list_or_parts9829_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9842  */
static	ANTLR3_BITWORD FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9842	= { FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9842_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_assign_to_keycache_in_key_cache_list9859  */
static	ANTLR3_BITWORD FOLLOW_assign_to_keycache_in_key_cache_list9859_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_assign_to_keycache_in_key_cache_list9859	= { FOLLOW_assign_to_keycache_in_key_cache_list9859_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_key_cache_list9862  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_key_cache_list9862_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_key_cache_list9862	= { FOLLOW_COMMA_SYMBOL_in_key_cache_list9862_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_assign_to_keycache_in_key_cache_list9864  */
static	ANTLR3_BITWORD FOLLOW_assign_to_keycache_in_key_cache_list9864_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_assign_to_keycache_in_key_cache_list9864	= { FOLLOW_assign_to_keycache_in_key_cache_list9864_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_assign_to_keycache9875  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_assign_to_keycache9875_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(0x0010000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_assign_to_keycache9875	= { FOLLOW_table_ref_in_assign_to_keycache9875_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cache_keys_spec_in_assign_to_keycache9877  */
static	ANTLR3_BITWORD FOLLOW_cache_keys_spec_in_assign_to_keycache9877_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cache_keys_spec_in_assign_to_keycache9877	= { FOLLOW_cache_keys_spec_in_assign_to_keycache9877_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_assign_to_keycache_partition9887  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_assign_to_keycache_partition9887_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_assign_to_keycache_partition9887	= { FOLLOW_table_ref_in_assign_to_keycache_partition9887_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_assign_to_keycache_partition9889  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_assign_to_keycache_partition9889_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_PARTITION_SYMBOL_in_assign_to_keycache_partition9889	= { FOLLOW_PARTITION_SYMBOL_in_assign_to_keycache_partition9889_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9891  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9891_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9891	= { FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9891_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_assign_to_keycache_partition9894  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_assign_to_keycache_partition9894_bits[]	= { ANTLR3_UINT64_LIT(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_ALL_SYMBOL_in_assign_to_keycache_partition9894	= { FOLLOW_ALL_SYMBOL_in_assign_to_keycache_partition9894_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_assign_to_keycache_partition9898  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_assign_to_keycache_partition9898_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_list_in_assign_to_keycache_partition9898	= { FOLLOW_identifier_list_in_assign_to_keycache_partition9898_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9901  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9901_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(0x0010000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9901	= { FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9901_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9903  */
static	ANTLR3_BITWORD FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9903_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9903	= { FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9903_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_cache_keys_spec9913  */
static	ANTLR3_BITWORD FOLLOW_set_in_cache_keys_spec9913_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_set_in_cache_keys_spec9913	= { FOLLOW_set_in_cache_keys_spec9913_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9921  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9921_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000001000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9921	= { FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9921_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_usage_element_in_cache_keys_spec9924  */
static	ANTLR3_BITWORD FOLLOW_key_usage_element_in_cache_keys_spec9924_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_key_usage_element_in_cache_keys_spec9924	= { FOLLOW_key_usage_element_in_cache_keys_spec9924_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9927  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9927_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000010000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9927	= { FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9927_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_key_usage_element_in_cache_keys_spec9929  */
static	ANTLR3_BITWORD FOLLOW_key_usage_element_in_cache_keys_spec9929_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_key_usage_element_in_cache_keys_spec9929	= { FOLLOW_key_usage_element_in_cache_keys_spec9929_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9935  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9935_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9935	= { FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9935_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_key_usage_element9944  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_key_usage_element9944_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_key_usage_element9944	= { FOLLOW_identifier_in_key_usage_element9944_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9949  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9949_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9949	= { FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9949_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option9958  */
static	ANTLR3_BITWORD FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option9958_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option9958	= { FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option9958_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOSTS_SYMBOL_in_flush_option9963  */
static	ANTLR3_BITWORD FOLLOW_HOSTS_SYMBOL_in_flush_option9963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOSTS_SYMBOL_in_flush_option9963	= { FOLLOW_HOSTS_SYMBOL_in_flush_option9963_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_log_type_in_flush_option9968  */
static	ANTLR3_BITWORD FOLLOW_log_type_in_flush_option9968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_log_type_in_flush_option9968	= { FOLLOW_log_type_in_flush_option9968_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_flush_option9971  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_flush_option9971_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_flush_option9971	= { FOLLOW_LOGS_SYMBOL_in_flush_option9971_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RELAY_SYMBOL_in_flush_option9976  */
static	ANTLR3_BITWORD FOLLOW_RELAY_SYMBOL_in_flush_option9976_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_RELAY_SYMBOL_in_flush_option9976	= { FOLLOW_RELAY_SYMBOL_in_flush_option9976_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOGS_SYMBOL_in_flush_option9978  */
static	ANTLR3_BITWORD FOLLOW_LOGS_SYMBOL_in_flush_option9978_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOGS_SYMBOL_in_flush_option9978	= { FOLLOW_LOGS_SYMBOL_in_flush_option9978_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_flush_option9980  */
static	ANTLR3_BITWORD FOLLOW_channel_in_flush_option9980_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_flush_option9980	= { FOLLOW_channel_in_flush_option9980_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIVILEGES_SYMBOL_in_flush_option9986  */
static	ANTLR3_BITWORD FOLLOW_PRIVILEGES_SYMBOL_in_flush_option9986_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIVILEGES_SYMBOL_in_flush_option9986	= { FOLLOW_PRIVILEGES_SYMBOL_in_flush_option9986_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_flush_option9991  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_flush_option9991_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_flush_option9991	= { FOLLOW_QUERY_SYMBOL_in_flush_option9991_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_flush_option9993  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_flush_option9993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_flush_option9993	= { FOLLOW_CACHE_SYMBOL_in_flush_option9993_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STATUS_SYMBOL_in_flush_option9998  */
static	ANTLR3_BITWORD FOLLOW_STATUS_SYMBOL_in_flush_option9998_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STATUS_SYMBOL_in_flush_option9998	= { FOLLOW_STATUS_SYMBOL_in_flush_option9998_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10003  */
static	ANTLR3_BITWORD FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10003_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10003	= { FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10003_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10010  */
static	ANTLR3_BITWORD FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10010_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10010	= { FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10010_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_flush_tables10048  */
static	ANTLR3_BITWORD FOLLOW_set_in_flush_tables10048_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_flush_tables10048	= { FOLLOW_set_in_flush_tables10048_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_flush_tables10061  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_flush_tables10061_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WITH_SYMBOL_in_flush_tables10061	= { FOLLOW_WITH_SYMBOL_in_flush_tables10061_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_flush_tables10063  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_flush_tables10063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_READ_SYMBOL_in_flush_tables10063	= { FOLLOW_READ_SYMBOL_in_flush_tables10063_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_flush_tables10065  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_flush_tables10065_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_flush_tables10065	= { FOLLOW_LOCK_SYMBOL_in_flush_tables10065_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_flush_tables10071  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_flush_tables10071_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(0x1000000000000000), 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_identifier_list_in_flush_tables10071	= { FOLLOW_identifier_list_in_flush_tables10071_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_flush_tables_options_in_flush_tables10073  */
static	ANTLR3_BITWORD FOLLOW_flush_tables_options_in_flush_tables10073_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_flush_tables_options_in_flush_tables10073	= { FOLLOW_flush_tables_options_in_flush_tables10073_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_flush_tables_options10089  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_flush_tables_options10089_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_flush_tables_options10089	= { FOLLOW_FOR_SYMBOL_in_flush_tables_options10089_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10091  */
static	ANTLR3_BITWORD FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10091_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10091	= { FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10091_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_flush_tables_options10096  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_flush_tables_options10096_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_WITH_SYMBOL_in_flush_tables_options10096	= { FOLLOW_WITH_SYMBOL_in_flush_tables_options10096_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_READ_SYMBOL_in_flush_tables_options10098  */
static	ANTLR3_BITWORD FOLLOW_READ_SYMBOL_in_flush_tables_options10098_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_READ_SYMBOL_in_flush_tables_options10098	= { FOLLOW_READ_SYMBOL_in_flush_tables_options10098_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCK_SYMBOL_in_flush_tables_options10100  */
static	ANTLR3_BITWORD FOLLOW_LOCK_SYMBOL_in_flush_tables_options10100_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCK_SYMBOL_in_flush_tables_options10100	= { FOLLOW_LOCK_SYMBOL_in_flush_tables_options10100_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_load_table_index_list10109  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_load_table_index_list10109_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000880000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_load_table_index_list10109	= { FOLLOW_table_ref_in_load_table_index_list10109_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_load_table_index_partion_in_load_table_index_list10111  */
static	ANTLR3_BITWORD FOLLOW_load_table_index_partion_in_load_table_index_list10111_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(0x0010000000880000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_load_table_index_partion_in_load_table_index_list10111	= { FOLLOW_load_table_index_partion_in_load_table_index_list10111_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_load_table_index_list10126  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_load_table_index_list10126_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(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_load_table_index_list10126	= { FOLLOW_identifier_list_with_parentheses_in_load_table_index_list10126_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10131  */
static	ANTLR3_BITWORD FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10131_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10131	= { FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10131_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10133  */
static	ANTLR3_BITWORD FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10133_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10133	= { FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10133_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion10149  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion10149_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_PARTITION_SYMBOL_in_load_table_index_partion10149	= { FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion10149_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10151  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10151_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10151	= { FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10151_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_load_table_index_partion10154  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_load_table_index_partion10154_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_list_in_load_table_index_partion10154	= { FOLLOW_identifier_list_in_load_table_index_partion10154_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_load_table_index_partion10158  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_load_table_index_partion10158_bits[]	= { ANTLR3_UINT64_LIT(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_ALL_SYMBOL_in_load_table_index_partion10158	= { FOLLOW_ALL_SYMBOL_in_load_table_index_partion10158_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10161  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10161_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10161	= { FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10161_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MASTER_SYMBOL_in_reset_option10171  */
static	ANTLR3_BITWORD FOLLOW_MASTER_SYMBOL_in_reset_option10171_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MASTER_SYMBOL_in_reset_option10171	= { FOLLOW_MASTER_SYMBOL_in_reset_option10171_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_reset_option10176  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_reset_option10176_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000400) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_reset_option10176	= { FOLLOW_QUERY_SYMBOL_in_reset_option10176_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CACHE_SYMBOL_in_reset_option10178  */
static	ANTLR3_BITWORD FOLLOW_CACHE_SYMBOL_in_reset_option10178_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CACHE_SYMBOL_in_reset_option10178	= { FOLLOW_CACHE_SYMBOL_in_reset_option10178_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SLAVE_SYMBOL_in_reset_option10183  */
static	ANTLR3_BITWORD FOLLOW_SLAVE_SYMBOL_in_reset_option10183_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), 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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SLAVE_SYMBOL_in_reset_option10183	= { FOLLOW_SLAVE_SYMBOL_in_reset_option10183_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_reset_option10185  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_reset_option10185_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(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_reset_option10185	= { FOLLOW_ALL_SYMBOL_in_reset_option10185_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_channel_in_reset_option10188  */
static	ANTLR3_BITWORD FOLLOW_channel_in_reset_option10188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_channel_in_reset_option10188	= { FOLLOW_channel_in_reset_option10188_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_describe_command_in_utility_statement10200  */
static	ANTLR3_BITWORD FOLLOW_describe_command_in_utility_statement10200_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x1000000024010000), ANTLR3_UINT64_LIT(0x0000000010020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_describe_command_in_utility_statement10200	= { FOLLOW_describe_command_in_utility_statement10200_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_utility_statement10209  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_utility_statement10209_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000002100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000021000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_utility_statement10209	= { FOLLOW_table_ref_in_utility_statement10209_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_utility_statement10212  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_utility_statement10212_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_utility_statement10212	= { FOLLOW_text_string_in_utility_statement10212_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_utility_statement10216  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_utility_statement10216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_utility_statement10216	= { FOLLOW_identifier_in_utility_statement10216_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTENDED_SYMBOL_in_utility_statement10248  */
static	ANTLR3_BITWORD FOLLOW_EXTENDED_SYMBOL_in_utility_statement10248_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000010000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_EXTENDED_SYMBOL_in_utility_statement10248	= { FOLLOW_EXTENDED_SYMBOL_in_utility_statement10248_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10260  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10260_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000010000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10260	= { FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10260_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORMAT_SYMBOL_in_utility_statement10272  */
static	ANTLR3_BITWORD FOLLOW_FORMAT_SYMBOL_in_utility_statement10272_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_FORMAT_SYMBOL_in_utility_statement10272	= { FOLLOW_FORMAT_SYMBOL_in_utility_statement10272_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_utility_statement10274  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_utility_statement10274_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_utility_statement10274	= { FOLLOW_EQUAL_OPERATOR_in_utility_statement10274_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_utility_statement10276  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_utility_statement10276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x1000000000010000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000100000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_utility_statement10276	= { FOLLOW_text_or_identifier_in_utility_statement10276_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_explainable_statement_in_utility_statement10285  */
static	ANTLR3_BITWORD FOLLOW_explainable_statement_in_utility_statement10285_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_explainable_statement_in_utility_statement10285	= { FOLLOW_explainable_statement_in_utility_statement10285_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HELP_SYMBOL_in_utility_statement10294  */
static	ANTLR3_BITWORD FOLLOW_HELP_SYMBOL_in_utility_statement10294_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HELP_SYMBOL_in_utility_statement10294	= { FOLLOW_HELP_SYMBOL_in_utility_statement10294_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_utility_statement10297  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_utility_statement10297_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_utility_statement10297	= { FOLLOW_text_or_identifier_in_utility_statement10297_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_use_command_in_utility_statement10302  */
static	ANTLR3_BITWORD FOLLOW_use_command_in_utility_statement10302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_use_command_in_utility_statement10302	= { FOLLOW_use_command_in_utility_statement10302_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DESCRIBE_SYMBOL_in_describe_command10311  */
static	ANTLR3_BITWORD FOLLOW_DESCRIBE_SYMBOL_in_describe_command10311_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DESCRIBE_SYMBOL_in_describe_command10311	= { FOLLOW_DESCRIBE_SYMBOL_in_describe_command10311_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DESC_SYMBOL_in_describe_command10316  */
static	ANTLR3_BITWORD FOLLOW_DESC_SYMBOL_in_describe_command10316_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DESC_SYMBOL_in_describe_command10316	= { FOLLOW_DESC_SYMBOL_in_describe_command10316_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_explainable_statement10327  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_explainable_statement10327_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_statement_in_explainable_statement10327	= { FOLLOW_select_statement_in_explainable_statement10327_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_delete_statement_in_explainable_statement10341  */
static	ANTLR3_BITWORD FOLLOW_delete_statement_in_explainable_statement10341_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_delete_statement_in_explainable_statement10341	= { FOLLOW_delete_statement_in_explainable_statement10341_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_insert_statement_in_explainable_statement10348  */
static	ANTLR3_BITWORD FOLLOW_insert_statement_in_explainable_statement10348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_insert_statement_in_explainable_statement10348	= { FOLLOW_insert_statement_in_explainable_statement10348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_replace_statement_in_explainable_statement10355  */
static	ANTLR3_BITWORD FOLLOW_replace_statement_in_explainable_statement10355_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_replace_statement_in_explainable_statement10355	= { FOLLOW_replace_statement_in_explainable_statement10355_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_update_statement_in_explainable_statement10362  */
static	ANTLR3_BITWORD FOLLOW_update_statement_in_explainable_statement10362_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_update_statement_in_explainable_statement10362	= { FOLLOW_update_statement_in_explainable_statement10362_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_explainable_statement10373  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_explainable_statement10373_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_explainable_statement10373	= { FOLLOW_FOR_SYMBOL_in_explainable_statement10373_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10375  */
static	ANTLR3_BITWORD FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10375_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10375	= { FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10375_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_explainable_statement10377  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_explainable_statement10377_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_explainable_statement10377	= { FOLLOW_real_ulong_number_in_explainable_statement10377_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USE_SYMBOL_in_use_command10386  */
static	ANTLR3_BITWORD FOLLOW_USE_SYMBOL_in_use_command10386_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_USE_SYMBOL_in_use_command10386	= { FOLLOW_USE_SYMBOL_in_use_command10386_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_use_command10388  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_use_command10388_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_use_command10388	= { FOLLOW_identifier_in_use_command10388_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_or_expression_in_expression10412  */
static	ANTLR3_BITWORD FOLLOW_logical_or_expression_in_expression10412_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_or_expression_in_expression10412	= { FOLLOW_logical_or_expression_in_expression10412_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_xor_expression_in_logical_or_expression10429  */
static	ANTLR3_BITWORD FOLLOW_logical_xor_expression_in_logical_or_expression10429_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(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_xor_expression_in_logical_or_expression10429	= { FOLLOW_logical_xor_expression_in_logical_or_expression10429_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logical_or_expression10445  */
static	ANTLR3_BITWORD FOLLOW_set_in_logical_or_expression10445_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logical_or_expression10445	= { FOLLOW_set_in_logical_or_expression10445_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_xor_expression_in_logical_or_expression10454  */
static	ANTLR3_BITWORD FOLLOW_logical_xor_expression_in_logical_or_expression10454_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(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_xor_expression_in_logical_or_expression10454	= { FOLLOW_logical_xor_expression_in_logical_or_expression10454_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_and_expression_in_logical_xor_expression10465  */
static	ANTLR3_BITWORD FOLLOW_logical_and_expression_in_logical_xor_expression10465_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_and_expression_in_logical_xor_expression10465	= { FOLLOW_logical_and_expression_in_logical_xor_expression10465_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_XOR_SYMBOL_in_logical_xor_expression10481  */
static	ANTLR3_BITWORD FOLLOW_XOR_SYMBOL_in_logical_xor_expression10481_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_XOR_SYMBOL_in_logical_xor_expression10481	= { FOLLOW_XOR_SYMBOL_in_logical_xor_expression10481_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_and_expression_in_logical_xor_expression10484  */
static	ANTLR3_BITWORD FOLLOW_logical_and_expression_in_logical_xor_expression10484_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_and_expression_in_logical_xor_expression10484	= { FOLLOW_logical_and_expression_in_logical_xor_expression10484_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_and_expression10495  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_and_expression10495_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_and_expression10495	= { FOLLOW_logical_not_expression_in_logical_and_expression10495_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_logical_and_expression10511  */
static	ANTLR3_BITWORD FOLLOW_set_in_logical_and_expression10511_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_logical_and_expression10511	= { FOLLOW_set_in_logical_and_expression10511_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_and_expression10520  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_and_expression10520_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_and_expression10520	= { FOLLOW_logical_not_expression_in_logical_and_expression10520_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_logical_not_expression10531  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_logical_not_expression10531_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_logical_not_expression10531	= { FOLLOW_NOT_SYMBOL_in_logical_not_expression10531_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_logical_not_expression_in_logical_not_expression10534  */
static	ANTLR3_BITWORD FOLLOW_logical_not_expression_in_logical_not_expression10534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_logical_not_expression_in_logical_not_expression10534	= { FOLLOW_logical_not_expression_in_logical_not_expression10534_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_boolean_primary_expression_in_logical_not_expression10539  */
static	ANTLR3_BITWORD FOLLOW_boolean_primary_expression_in_logical_not_expression10539_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_boolean_primary_expression_in_logical_not_expression10539	= { FOLLOW_boolean_primary_expression_in_logical_not_expression10539_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_boolean_primary_expression10548  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_boolean_primary_expression10548_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(0x0000008000000000), ANTLR3_UINT64_LIT(0x0C001000000000C0), ANTLR3_UINT64_LIT(0x0086000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_boolean_primary_expression10548	= { FOLLOW_predicate_in_boolean_primary_expression10548_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_comparison_operator_in_boolean_primary_expression10569  */
static	ANTLR3_BITWORD FOLLOW_comparison_operator_in_boolean_primary_expression10569_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_comparison_operator_in_boolean_primary_expression10569	= { FOLLOW_comparison_operator_in_boolean_primary_expression10569_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_boolean_primary_expression10583  */
static	ANTLR3_BITWORD FOLLOW_set_in_boolean_primary_expression10583_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_set_in_boolean_primary_expression10583	= { FOLLOW_set_in_boolean_primary_expression10583_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_boolean_primary_expression10591  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_boolean_primary_expression10591_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(0x0000008000000000), ANTLR3_UINT64_LIT(0x0C001000000000C0), ANTLR3_UINT64_LIT(0x0086000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_boolean_primary_expression10591	= { FOLLOW_subquery_in_boolean_primary_expression10591_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_boolean_primary_expression10599  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_boolean_primary_expression10599_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(0x0000008000000000), ANTLR3_UINT64_LIT(0x0C001000000000C0), ANTLR3_UINT64_LIT(0x0086000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_boolean_primary_expression10599	= { FOLLOW_predicate_in_boolean_primary_expression10599_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IS_SYMBOL_in_boolean_primary_expression10628  */
static	ANTLR3_BITWORD FOLLOW_IS_SYMBOL_in_boolean_primary_expression10628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0148000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IS_SYMBOL_in_boolean_primary_expression10628	= { FOLLOW_IS_SYMBOL_in_boolean_primary_expression10628_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10631  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10631_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0140000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10631	= { FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10631_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_boolean_primary_expression10636  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_boolean_primary_expression10636_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(0x0000008000000000), ANTLR3_UINT64_LIT(0x0C001000000000C0), ANTLR3_UINT64_LIT(0x0086000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_boolean_primary_expression10636	= { FOLLOW_null_literal_in_boolean_primary_expression10636_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10640  */
static	ANTLR3_BITWORD FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10640_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(0x0000008000000000), ANTLR3_UINT64_LIT(0x0C001000000000C0), ANTLR3_UINT64_LIT(0x0086000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10640	= { FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10640_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10644  */
static	ANTLR3_BITWORD FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10644_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(0x0000008000000000), ANTLR3_UINT64_LIT(0x0C001000000000C0), ANTLR3_UINT64_LIT(0x0086000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10644	= { FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10644_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10648  */
static	ANTLR3_BITWORD FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10648_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(0x0000008000000000), ANTLR3_UINT64_LIT(0x0C001000000000C0), ANTLR3_UINT64_LIT(0x0086000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10648	= { FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10648_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate10665  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate10665_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000400), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000010000000000), ANTLR3_UINT64_LIT(0x0008000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate10665	= { FOLLOW_bitwise_or_expression_in_predicate10665_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_predicate10686  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_predicate10686_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000010000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_predicate10686	= { FOLLOW_NOT_SYMBOL_in_predicate10686_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BETWEEN_SYMBOL_in_predicate10700  */
static	ANTLR3_BITWORD FOLLOW_BETWEEN_SYMBOL_in_predicate10700_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BETWEEN_SYMBOL_in_predicate10700	= { FOLLOW_BETWEEN_SYMBOL_in_predicate10700_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate10703  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate10703_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_bitwise_or_expression_in_predicate10703	= { FOLLOW_bitwise_or_expression_in_predicate10703_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AND_SYMBOL_in_predicate10705  */
static	ANTLR3_BITWORD FOLLOW_AND_SYMBOL_in_predicate10705_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_AND_SYMBOL_in_predicate10705	= { FOLLOW_AND_SYMBOL_in_predicate10705_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_predicate10707  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_predicate10707_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_predicate10707	= { FOLLOW_predicate_in_predicate10707_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_predicate10716  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_predicate10716_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_predicate10716	= { FOLLOW_LIKE_SYMBOL_in_predicate10716_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_predicate10719  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_predicate10719_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_predicate10719	= { FOLLOW_unary_expression_in_predicate10719_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ESCAPE_SYMBOL_in_predicate10735  */
static	ANTLR3_BITWORD FOLLOW_ESCAPE_SYMBOL_in_predicate10735_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230383170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002010061100), ANTLR3_UINT64_LIT(0x8150108402810000), ANTLR3_UINT64_LIT(0x0000004180002401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_ESCAPE_SYMBOL_in_predicate10735	= { FOLLOW_ESCAPE_SYMBOL_in_predicate10735_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_predicate10737  */
static	ANTLR3_BITWORD FOLLOW_primary_in_predicate10737_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_predicate10737	= { FOLLOW_primary_in_predicate10737_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REGEXP_SYMBOL_in_predicate10748  */
static	ANTLR3_BITWORD FOLLOW_REGEXP_SYMBOL_in_predicate10748_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_REGEXP_SYMBOL_in_predicate10748	= { FOLLOW_REGEXP_SYMBOL_in_predicate10748_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate10751  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate10751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate10751	= { FOLLOW_bitwise_or_expression_in_predicate10751_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_predicate10760  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_predicate10760_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_IN_SYMBOL_in_predicate10760	= { FOLLOW_IN_SYMBOL_in_predicate10760_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_predicate_in_in_predicate10762  */
static	ANTLR3_BITWORD FOLLOW_predicate_in_in_predicate10762_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_predicate_in_in_predicate10762	= { FOLLOW_predicate_in_in_predicate10762_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SOUNDS_SYMBOL_in_predicate10781  */
static	ANTLR3_BITWORD FOLLOW_SOUNDS_SYMBOL_in_predicate10781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_SOUNDS_SYMBOL_in_predicate10781	= { FOLLOW_SOUNDS_SYMBOL_in_predicate10781_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_predicate10784  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_predicate10784_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_predicate10784	= { FOLLOW_LIKE_SYMBOL_in_predicate10784_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_predicate10786  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_predicate10786_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_predicate10786	= { FOLLOW_bitwise_or_expression_in_predicate10786_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_predicate_in10805  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_predicate_in10805_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_predicate_in10805	= { FOLLOW_subquery_in_predicate_in10805_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_predicate_in10810  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_predicate_in10810_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_predicate_in10810	= { FOLLOW_expression_list_with_parentheses_in_predicate_in10810_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_and_expression_in_bitwise_or_expression10819  */
static	ANTLR3_BITWORD FOLLOW_bitwise_and_expression_in_bitwise_or_expression10819_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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_and_expression_in_bitwise_or_expression10819	= { FOLLOW_bitwise_and_expression_in_bitwise_or_expression10819_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10835  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10835_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10835	= { FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10835_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_and_expression_in_bitwise_or_expression10838  */
static	ANTLR3_BITWORD FOLLOW_bitwise_and_expression_in_bitwise_or_expression10838_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(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_and_expression_in_bitwise_or_expression10838	= { FOLLOW_bitwise_and_expression_in_bitwise_or_expression10838_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_shift_expression_in_bitwise_and_expression10849  */
static	ANTLR3_BITWORD FOLLOW_shift_expression_in_bitwise_and_expression10849_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_shift_expression_in_bitwise_and_expression10849	= { FOLLOW_shift_expression_in_bitwise_and_expression10849_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10865  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10865_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10865	= { FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10865_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_shift_expression_in_bitwise_and_expression10868  */
static	ANTLR3_BITWORD FOLLOW_shift_expression_in_bitwise_and_expression10868_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_shift_expression_in_bitwise_and_expression10868	= { FOLLOW_shift_expression_in_bitwise_and_expression10868_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_additive_expression_in_shift_expression10879  */
static	ANTLR3_BITWORD FOLLOW_additive_expression_in_shift_expression10879_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(0x1800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_additive_expression_in_shift_expression10879	= { FOLLOW_additive_expression_in_shift_expression10879_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_shift_expression10895  */
static	ANTLR3_BITWORD FOLLOW_set_in_shift_expression10895_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_shift_expression10895	= { FOLLOW_set_in_shift_expression10895_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_additive_expression_in_shift_expression10904  */
static	ANTLR3_BITWORD FOLLOW_additive_expression_in_shift_expression10904_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(0x1800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_additive_expression_in_shift_expression10904	= { FOLLOW_additive_expression_in_shift_expression10904_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplicative_expression_in_additive_expression10915  */
static	ANTLR3_BITWORD FOLLOW_multiplicative_expression_in_additive_expression10915_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(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplicative_expression_in_additive_expression10915	= { FOLLOW_multiplicative_expression_in_additive_expression10915_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_additive_expression10931  */
static	ANTLR3_BITWORD FOLLOW_set_in_additive_expression10931_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_additive_expression10931	= { FOLLOW_set_in_additive_expression10931_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplicative_expression_in_additive_expression10940  */
static	ANTLR3_BITWORD FOLLOW_multiplicative_expression_in_additive_expression10940_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(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplicative_expression_in_additive_expression10940	= { FOLLOW_multiplicative_expression_in_additive_expression10940_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_xor_expression_in_multiplicative_expression10951  */
static	ANTLR3_BITWORD FOLLOW_bitwise_xor_expression_in_multiplicative_expression10951_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(0x0000000003000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000002C000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_xor_expression_in_multiplicative_expression10951	= { FOLLOW_bitwise_xor_expression_in_multiplicative_expression10951_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_multiplication_operator_in_multiplicative_expression10967  */
static	ANTLR3_BITWORD FOLLOW_multiplication_operator_in_multiplicative_expression10967_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_multiplication_operator_in_multiplicative_expression10967	= { FOLLOW_multiplication_operator_in_multiplicative_expression10967_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_xor_expression_in_multiplicative_expression10970  */
static	ANTLR3_BITWORD FOLLOW_bitwise_xor_expression_in_multiplicative_expression10970_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(0x0000000003000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000002C000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_xor_expression_in_multiplicative_expression10970	= { FOLLOW_bitwise_xor_expression_in_multiplicative_expression10970_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_concat_expression_in_bitwise_xor_expression10981  */
static	ANTLR3_BITWORD FOLLOW_concat_expression_in_bitwise_xor_expression10981_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(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_concat_expression_in_bitwise_xor_expression10981	= { FOLLOW_concat_expression_in_bitwise_xor_expression10981_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression10997  */
static	ANTLR3_BITWORD FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression10997_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression10997	= { FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression10997_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_concat_expression_in_bitwise_xor_expression11000  */
static	ANTLR3_BITWORD FOLLOW_concat_expression_in_bitwise_xor_expression11000_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(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_concat_expression_in_bitwise_xor_expression11000	= { FOLLOW_concat_expression_in_bitwise_xor_expression11000_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_concat_expression11012  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_concat_expression11012_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_concat_expression11012	= { FOLLOW_unary_expression_in_concat_expression11012_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11028  */
static	ANTLR3_BITWORD FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11028_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11028	= { FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11028_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_concat_expression11031  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_concat_expression11031_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(0x0000400000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_concat_expression11031	= { FOLLOW_unary_expression_in_concat_expression11031_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_unary_expression11042  */
static	ANTLR3_BITWORD FOLLOW_set_in_unary_expression11042_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_unary_expression11042	= { FOLLOW_set_in_unary_expression11042_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unary_expression_in_unary_expression11054  */
static	ANTLR3_BITWORD FOLLOW_unary_expression_in_unary_expression11054_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_unary_expression_in_unary_expression11054	= { FOLLOW_unary_expression_in_unary_expression11054_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not_expression_in_unary_expression11059  */
static	ANTLR3_BITWORD FOLLOW_not_expression_in_unary_expression11059_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_not_expression_in_unary_expression11059	= { FOLLOW_not_expression_in_unary_expression11059_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not2_rule_in_not_expression11068  */
static	ANTLR3_BITWORD FOLLOW_not2_rule_in_not_expression11068_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230383170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8150108402810000), ANTLR3_UINT64_LIT(0x0000004180002401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_not2_rule_in_not_expression11068	= { FOLLOW_not2_rule_in_not_expression11068_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_expression_in_not_expression11071  */
static	ANTLR3_BITWORD FOLLOW_interval_expression_in_not_expression11071_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_expression_in_not_expression11071	= { FOLLOW_interval_expression_in_not_expression11071_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTERVAL_SYMBOL_in_interval_expression11080  */
static	ANTLR3_BITWORD FOLLOW_INTERVAL_SYMBOL_in_interval_expression11080_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_INTERVAL_SYMBOL_in_interval_expression11080	= { FOLLOW_INTERVAL_SYMBOL_in_interval_expression11080_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_function_in_interval_expression11112  */
static	ANTLR3_BITWORD FOLLOW_interval_function_in_interval_expression11112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_function_in_interval_expression11112	= { FOLLOW_interval_function_in_interval_expression11112_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_time_span_in_interval_expression11119  */
static	ANTLR3_BITWORD FOLLOW_interval_time_span_in_interval_expression11119_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_time_span_in_interval_expression11119	= { FOLLOW_interval_time_span_in_interval_expression11119_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_interval_expression11128  */
static	ANTLR3_BITWORD FOLLOW_primary_in_interval_expression11128_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_interval_expression11128	= { FOLLOW_primary_in_interval_expression11128_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11137  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11137_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11137	= { FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11137_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval_function11139  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval_function11139_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_interval_function11139	= { FOLLOW_expression_in_interval_function11139_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_interval_function11142  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_interval_function11142_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_interval_function11142	= { FOLLOW_COMMA_SYMBOL_in_interval_function11142_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval_function11144  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval_function11144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_interval_function11144	= { FOLLOW_expression_in_interval_function11144_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11148  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11148_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11148	= { FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11148_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_interval_time_span11180  */
static	ANTLR3_BITWORD FOLLOW_interval_in_interval_time_span11180_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_in_interval_time_span11180	= { FOLLOW_interval_in_interval_time_span11180_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_primary11204  */
static	ANTLR3_BITWORD FOLLOW_literal_in_primary11204_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_primary11204	= { FOLLOW_literal_in_primary11204_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_runtime_function_call_in_primary11210  */
static	ANTLR3_BITWORD FOLLOW_runtime_function_call_in_primary11210_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_runtime_function_call_in_primary11210	= { FOLLOW_runtime_function_call_in_primary11210_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_call_in_primary11217  */
static	ANTLR3_BITWORD FOLLOW_udf_call_in_primary11217_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_udf_call_in_primary11217	= { FOLLOW_udf_call_in_primary11217_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_stored_function_call_in_primary11229  */
static	ANTLR3_BITWORD FOLLOW_stored_function_call_in_primary11229_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_stored_function_call_in_primary11229	= { FOLLOW_stored_function_call_in_primary11229_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_primary11235  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_primary11235_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(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_primary11235	= { FOLLOW_column_ref_in_primary11235_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JSON_SEPARATOR_SYMBOL_in_primary11242  */
static	ANTLR3_BITWORD FOLLOW_JSON_SEPARATOR_SYMBOL_in_primary11242_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_JSON_SEPARATOR_SYMBOL_in_primary11242	= { FOLLOW_JSON_SEPARATOR_SYMBOL_in_primary11242_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_primary11244  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_primary11244_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_primary11244	= { FOLLOW_text_string_in_primary11244_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARAM_MARKER_in_primary11258  */
static	ANTLR3_BITWORD FOLLOW_PARAM_MARKER_in_primary11258_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARAM_MARKER_in_primary11258	= { FOLLOW_PARAM_MARKER_in_primary11258_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_primary11264  */
static	ANTLR3_BITWORD FOLLOW_variable_in_primary11264_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_in_primary11264	= { FOLLOW_variable_in_primary11264_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_primary11270  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_primary11270_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EXISTS_SYMBOL_in_primary11270	= { FOLLOW_EXISTS_SYMBOL_in_primary11270_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_primary11272  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_primary11272_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_primary11272	= { FOLLOW_subquery_in_primary11272_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_with_nested_parentheses_in_primary11278  */
static	ANTLR3_BITWORD FOLLOW_expression_with_nested_parentheses_in_primary11278_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_with_nested_parentheses_in_primary11278	= { FOLLOW_expression_with_nested_parentheses_in_primary11278_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_CURLY_SYMBOL_in_primary11284  */
static	ANTLR3_BITWORD FOLLOW_OPEN_CURLY_SYMBOL_in_primary11284_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_CURLY_SYMBOL_in_primary11284	= { FOLLOW_OPEN_CURLY_SYMBOL_in_primary11284_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_primary11286  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_primary11286_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_primary11286	= { FOLLOW_identifier_in_primary11286_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_primary11288  */
static	ANTLR3_BITWORD FOLLOW_expression_in_primary11288_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_primary11288	= { FOLLOW_expression_in_primary11288_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11290  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11290_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11290	= { FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11290_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_match_expression_in_primary11296  */
static	ANTLR3_BITWORD FOLLOW_match_expression_in_primary11296_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_match_expression_in_primary11296	= { FOLLOW_match_expression_in_primary11296_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_case_expression_in_primary11302  */
static	ANTLR3_BITWORD FOLLOW_case_expression_in_primary11302_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_case_expression_in_primary11302	= { FOLLOW_case_expression_in_primary11302_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_expression_in_primary11308  */
static	ANTLR3_BITWORD FOLLOW_cast_expression_in_primary11308_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_cast_expression_in_primary11308	= { FOLLOW_cast_expression_in_primary11308_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_primary11330  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_primary11330_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_primary11330	= { FOLLOW_COLLATE_SYMBOL_in_primary11330_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_in_primary11332  */
static	ANTLR3_BITWORD FOLLOW_collation_name_in_primary11332_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(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_in_primary11332	= { FOLLOW_collation_name_in_primary11332_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subquery_in_expression_with_nested_parentheses11347  */
static	ANTLR3_BITWORD FOLLOW_subquery_in_expression_with_nested_parentheses11347_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_subquery_in_expression_with_nested_parentheses11347	= { FOLLOW_subquery_in_expression_with_nested_parentheses11347_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11352  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11352_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11352	= { FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11352_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_SYMBOL_in_expression_with_nested_parentheses11357  */
static	ANTLR3_BITWORD FOLLOW_ROW_SYMBOL_in_expression_with_nested_parentheses11357_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_ROW_SYMBOL_in_expression_with_nested_parentheses11357	= { FOLLOW_ROW_SYMBOL_in_expression_with_nested_parentheses11357_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_expression_with_nested_parentheses11359  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_expression_with_nested_parentheses11359_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_expression_with_nested_parentheses11359	= { FOLLOW_OPEN_PAR_SYMBOL_in_expression_with_nested_parentheses11359_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_with_nested_parentheses11361  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_with_nested_parentheses11361_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_expression_with_nested_parentheses11361	= { FOLLOW_expression_in_expression_with_nested_parentheses11361_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_expression_with_nested_parentheses11364  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_expression_with_nested_parentheses11364_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_expression_with_nested_parentheses11364	= { FOLLOW_COMMA_SYMBOL_in_expression_with_nested_parentheses11364_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_with_nested_parentheses11366  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_with_nested_parentheses11366_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_with_nested_parentheses11366	= { FOLLOW_expression_in_expression_with_nested_parentheses11366_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_expression_with_nested_parentheses11370  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_expression_with_nested_parentheses11370_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_expression_with_nested_parentheses11370	= { FOLLOW_CLOSE_PAR_SYMBOL_in_expression_with_nested_parentheses11370_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_runtime_function_call_expression_in_runtime_function_call11448  */
static	ANTLR3_BITWORD FOLLOW_runtime_function_call_expression_in_runtime_function_call11448_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_runtime_function_call_expression_in_runtime_function_call11448	= { FOLLOW_runtime_function_call_expression_in_runtime_function_call11448_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11467  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_CHAR_SYMBOL_in_runtime_function_call_expression11467	= { FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11467_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11469  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11469_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11469	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11469_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_runtime_function_call_expression11471  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_runtime_function_call_expression11471_bits[]	= { ANTLR3_UINT64_LIT(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), 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_expression_list_in_runtime_function_call_expression11471	= { FOLLOW_expression_list_in_runtime_function_call_expression11471_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11474  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11474_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11474	= { FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11474_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_runtime_function_call_expression11476  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_runtime_function_call_expression11476_bits[]	= { ANTLR3_UINT64_LIT(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_charset_name_in_runtime_function_call_expression11476	= { FOLLOW_charset_name_in_runtime_function_call_expression11476_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11480  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11480_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11480	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11480_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11485  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11485_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11485	= { FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11485_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11487  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11487_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11487	= { FOLLOW_parentheses_in_runtime_function_call_expression11487_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_runtime_function_call_expression11493  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_runtime_function_call_expression11493_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_DATE_SYMBOL_in_runtime_function_call_expression11493	= { FOLLOW_DATE_SYMBOL_in_runtime_function_call_expression11493_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11495  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11495_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11495	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11495_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11497  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11497_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11497	= { FOLLOW_expression_in_runtime_function_call_expression11497_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11499  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11499_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11499	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11499_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SYMBOL_in_runtime_function_call_expression11504  */
static	ANTLR3_BITWORD FOLLOW_DAY_SYMBOL_in_runtime_function_call_expression11504_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_DAY_SYMBOL_in_runtime_function_call_expression11504	= { FOLLOW_DAY_SYMBOL_in_runtime_function_call_expression11504_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11506  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11506_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11506	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11506_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11508  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11508_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11508	= { FOLLOW_expression_in_runtime_function_call_expression11508_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11510  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11510_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11510	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11510_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_SYMBOL_in_runtime_function_call_expression11515  */
static	ANTLR3_BITWORD FOLLOW_HOUR_SYMBOL_in_runtime_function_call_expression11515_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_HOUR_SYMBOL_in_runtime_function_call_expression11515	= { FOLLOW_HOUR_SYMBOL_in_runtime_function_call_expression11515_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11517  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11517_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11517	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11517_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11519  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11519_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11519	= { FOLLOW_expression_in_runtime_function_call_expression11519_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11521  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11521_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11521	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11521_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_SYMBOL_in_runtime_function_call_expression11526  */
static	ANTLR3_BITWORD FOLLOW_INSERT_SYMBOL_in_runtime_function_call_expression11526_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_INSERT_SYMBOL_in_runtime_function_call_expression11526	= { FOLLOW_INSERT_SYMBOL_in_runtime_function_call_expression11526_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11528  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11528_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11528	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11528_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11530  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11530_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11530	= { FOLLOW_expression_in_runtime_function_call_expression11530_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11532  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11532_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11532	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11532_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11534  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11534_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11534	= { FOLLOW_expression_in_runtime_function_call_expression11534_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11536  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11536_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11536	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11536_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11538  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11538_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11538	= { FOLLOW_expression_in_runtime_function_call_expression11538_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11540  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11540_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11540	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11540_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11542  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11542_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11542	= { FOLLOW_expression_in_runtime_function_call_expression11542_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11544  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11544_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11544	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11544_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEFT_SYMBOL_in_runtime_function_call_expression11551  */
static	ANTLR3_BITWORD FOLLOW_LEFT_SYMBOL_in_runtime_function_call_expression11551_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_LEFT_SYMBOL_in_runtime_function_call_expression11551	= { FOLLOW_LEFT_SYMBOL_in_runtime_function_call_expression11551_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11553  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11553_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11553	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11553_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11555  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11555_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11555	= { FOLLOW_expression_in_runtime_function_call_expression11555_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11557  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11557_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11557	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11557_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11559  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11559_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11559	= { FOLLOW_expression_in_runtime_function_call_expression11559_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11561  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11561_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11561	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11561_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_SYMBOL_in_runtime_function_call_expression11566  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_SYMBOL_in_runtime_function_call_expression11566_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MINUTE_SYMBOL_in_runtime_function_call_expression11566	= { FOLLOW_MINUTE_SYMBOL_in_runtime_function_call_expression11566_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11568  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11568_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11568	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11568_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11570  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11570_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11570	= { FOLLOW_expression_in_runtime_function_call_expression11570_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11572  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11572_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11572	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11572_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MONTH_SYMBOL_in_runtime_function_call_expression11577  */
static	ANTLR3_BITWORD FOLLOW_MONTH_SYMBOL_in_runtime_function_call_expression11577_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MONTH_SYMBOL_in_runtime_function_call_expression11577	= { FOLLOW_MONTH_SYMBOL_in_runtime_function_call_expression11577_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11579  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11579_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11579	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11579_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11581  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11581_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11581	= { FOLLOW_expression_in_runtime_function_call_expression11581_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11583  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11583_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11583	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11583_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RIGHT_SYMBOL_in_runtime_function_call_expression11588  */
static	ANTLR3_BITWORD FOLLOW_RIGHT_SYMBOL_in_runtime_function_call_expression11588_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_RIGHT_SYMBOL_in_runtime_function_call_expression11588	= { FOLLOW_RIGHT_SYMBOL_in_runtime_function_call_expression11588_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11590  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11590_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11590	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11590_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11592  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11592_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11592	= { FOLLOW_expression_in_runtime_function_call_expression11592_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11594  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11594_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11594	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11594_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11596  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11596_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11596	= { FOLLOW_expression_in_runtime_function_call_expression11596_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11598  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11598_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11598	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11598_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECOND_SYMBOL_in_runtime_function_call_expression11603  */
static	ANTLR3_BITWORD FOLLOW_SECOND_SYMBOL_in_runtime_function_call_expression11603_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_SECOND_SYMBOL_in_runtime_function_call_expression11603	= { FOLLOW_SECOND_SYMBOL_in_runtime_function_call_expression11603_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11605  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11605_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11605	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11605_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11607  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11607_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11607	= { FOLLOW_expression_in_runtime_function_call_expression11607_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11609  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11609_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11609	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11609_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_runtime_function_call_expression11614  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_runtime_function_call_expression11614_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_TIME_SYMBOL_in_runtime_function_call_expression11614	= { FOLLOW_TIME_SYMBOL_in_runtime_function_call_expression11614_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11616  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11616_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11616	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11616_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11618  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11618_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11618	= { FOLLOW_expression_in_runtime_function_call_expression11618_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11620  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11620_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11620	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11620_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11625  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11625_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11625	= { FOLLOW_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11625_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11627  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11627_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11627	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11627_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11629  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11629_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11629	= { FOLLOW_expression_in_runtime_function_call_expression11629_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11632  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11632_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11632	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11632_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11634  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11634_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11634	= { FOLLOW_expression_in_runtime_function_call_expression11634_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11638  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11638_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11638	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11638_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_trim_function_in_runtime_function_call_expression11643  */
static	ANTLR3_BITWORD FOLLOW_trim_function_in_runtime_function_call_expression11643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_trim_function_in_runtime_function_call_expression11643	= { FOLLOW_trim_function_in_runtime_function_call_expression11643_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USER_SYMBOL_in_runtime_function_call_expression11648  */
static	ANTLR3_BITWORD FOLLOW_USER_SYMBOL_in_runtime_function_call_expression11648_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_USER_SYMBOL_in_runtime_function_call_expression11648	= { FOLLOW_USER_SYMBOL_in_runtime_function_call_expression11648_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11650  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11650_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11650	= { FOLLOW_parentheses_in_runtime_function_call_expression11650_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUES_SYMBOL_in_runtime_function_call_expression11655  */
static	ANTLR3_BITWORD FOLLOW_VALUES_SYMBOL_in_runtime_function_call_expression11655_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_VALUES_SYMBOL_in_runtime_function_call_expression11655	= { FOLLOW_VALUES_SYMBOL_in_runtime_function_call_expression11655_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11657  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11657_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11657	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11657_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11659  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11659_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11659	= { FOLLOW_expression_in_runtime_function_call_expression11659_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11661  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11661_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11661	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11661_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_SYMBOL_in_runtime_function_call_expression11666  */
static	ANTLR3_BITWORD FOLLOW_YEAR_SYMBOL_in_runtime_function_call_expression11666_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_YEAR_SYMBOL_in_runtime_function_call_expression11666	= { FOLLOW_YEAR_SYMBOL_in_runtime_function_call_expression11666_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11668  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11668_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11668	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11668_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11670  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11670_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11670	= { FOLLOW_expression_in_runtime_function_call_expression11670_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11672  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11672_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11672	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11672_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_runtime_function_call_expression11680  */
static	ANTLR3_BITWORD FOLLOW_set_in_runtime_function_call_expression11680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_set_in_runtime_function_call_expression11680	= { FOLLOW_set_in_runtime_function_call_expression11680_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11688  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11688_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11688	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11688_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11690  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11690_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11690	= { FOLLOW_expression_in_runtime_function_call_expression11690_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11692  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11692_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11692	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11692_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11694  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11694_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11694	= { FOLLOW_expression_in_runtime_function_call_expression11694_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11696  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11696	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11696_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11701  */
static	ANTLR3_BITWORD FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11701_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11701	= { FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11701_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11703  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11703_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11703	= { FOLLOW_parentheses_in_runtime_function_call_expression11703_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11709  */
static	ANTLR3_BITWORD FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11709_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11709	= { FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11709_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11711  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11711_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11711	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11711_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_runtime_function_call_expression11717  */
static	ANTLR3_BITWORD FOLLOW_set_in_runtime_function_call_expression11717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_set_in_runtime_function_call_expression11717	= { FOLLOW_set_in_runtime_function_call_expression11717_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11725  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11725_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11725	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11725_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11727  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11727_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11727	= { FOLLOW_expression_in_runtime_function_call_expression11727_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11729  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_runtime_function_call_expression11729	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11729_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11731  */
static	ANTLR3_BITWORD FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11731_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11731	= { FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11731_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_runtime_function_call_expression11733  */
static	ANTLR3_BITWORD FOLLOW_interval_in_runtime_function_call_expression11733_bits[]	= { ANTLR3_UINT64_LIT(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_interval_in_runtime_function_call_expression11733	= { FOLLOW_interval_in_runtime_function_call_expression11733_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11735  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11735_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11735	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11735_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXTRACT_SYMBOL_in_runtime_function_call_expression11740  */
static	ANTLR3_BITWORD FOLLOW_EXTRACT_SYMBOL_in_runtime_function_call_expression11740_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EXTRACT_SYMBOL_in_runtime_function_call_expression11740	= { FOLLOW_EXTRACT_SYMBOL_in_runtime_function_call_expression11740_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11742  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11742_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000045000000), ANTLR3_UINT64_LIT(0x0000800000000200), ANTLR3_UINT64_LIT(0x0104000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x20000000000001E0), ANTLR3_UINT64_LIT(0x000000000001C000), ANTLR3_UINT64_LIT(0x0000000300000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11742	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11742_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_unit_in_runtime_function_call_expression11744  */
static	ANTLR3_BITWORD FOLLOW_interval_unit_in_runtime_function_call_expression11744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_interval_unit_in_runtime_function_call_expression11744	= { FOLLOW_interval_unit_in_runtime_function_call_expression11744_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11746  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11746_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11746	= { FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11746_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11748  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11748_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11748	= { FOLLOW_expression_in_runtime_function_call_expression11748_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11750  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11750_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11750	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11750_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11755  */
static	ANTLR3_BITWORD FOLLOW_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11755_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11755	= { FOLLOW_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11755_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11757  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11757_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0003000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000090000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11757	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11757_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_date_time_type_in_runtime_function_call_expression11759  */
static	ANTLR3_BITWORD FOLLOW_date_time_type_in_runtime_function_call_expression11759_bits[]	= { ANTLR3_UINT64_LIT(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_date_time_type_in_runtime_function_call_expression11759	= { FOLLOW_date_time_type_in_runtime_function_call_expression11759_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11762  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11762_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11762	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11762_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11764  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11764_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11764	= { FOLLOW_expression_in_runtime_function_call_expression11764_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11766  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11766_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11766	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11766_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11771  */
static	ANTLR3_BITWORD FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11771_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11771	= { FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11771_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11773  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11773_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11773	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11773_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POSITION_SYMBOL_in_runtime_function_call_expression11779  */
static	ANTLR3_BITWORD FOLLOW_POSITION_SYMBOL_in_runtime_function_call_expression11779_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_POSITION_SYMBOL_in_runtime_function_call_expression11779	= { FOLLOW_POSITION_SYMBOL_in_runtime_function_call_expression11779_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11781  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11781_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11781	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11781_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_runtime_function_call_expression11783  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_runtime_function_call_expression11783_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_bitwise_or_expression_in_runtime_function_call_expression11783	= { FOLLOW_bitwise_or_expression_in_runtime_function_call_expression11783_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11785  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11785_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11785	= { FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11785_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11787  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11787_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11787	= { FOLLOW_expression_in_runtime_function_call_expression11787_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11789  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11789_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11789	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11789_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_substring_function_in_runtime_function_call_expression11794  */
static	ANTLR3_BITWORD FOLLOW_substring_function_in_runtime_function_call_expression11794_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_substring_function_in_runtime_function_call_expression11794	= { FOLLOW_substring_function_in_runtime_function_call_expression11794_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11799  */
static	ANTLR3_BITWORD FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11799_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11799	= { FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11799_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11801  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11801_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11801	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11801_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_runtime_function_call_expression11807  */
static	ANTLR3_BITWORD FOLLOW_set_in_runtime_function_call_expression11807_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_set_in_runtime_function_call_expression11807	= { FOLLOW_set_in_runtime_function_call_expression11807_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11815  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000045000000), ANTLR3_UINT64_LIT(0x0000800000000200), ANTLR3_UINT64_LIT(0x0104000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11815	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11815_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_timestamp_unit_in_runtime_function_call_expression11817  */
static	ANTLR3_BITWORD FOLLOW_interval_timestamp_unit_in_runtime_function_call_expression11817_bits[]	= { ANTLR3_UINT64_LIT(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_interval_timestamp_unit_in_runtime_function_call_expression11817	= { FOLLOW_interval_timestamp_unit_in_runtime_function_call_expression11817_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11819  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11819_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11819	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11819_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11821  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11821_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11821	= { FOLLOW_expression_in_runtime_function_call_expression11821_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11823  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11823_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11823	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11823_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11825  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11825_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11825	= { FOLLOW_expression_in_runtime_function_call_expression11825_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11827  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11827_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11827	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11827_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11832  */
static	ANTLR3_BITWORD FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11832_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11832	= { FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11832_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11834  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11834_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11834	= { FOLLOW_parentheses_in_runtime_function_call_expression11834_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11840  */
static	ANTLR3_BITWORD FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11840_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11840	= { FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11840_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11842  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11842	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11842_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11848  */
static	ANTLR3_BITWORD FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11848_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11848	= { FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11848_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_runtime_function_call_expression11850  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_runtime_function_call_expression11850_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_runtime_function_call_expression11850	= { FOLLOW_time_function_parameters_in_runtime_function_call_expression11850_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_runtime_function_call_expression11859  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_runtime_function_call_expression11859_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_ASCII_SYMBOL_in_runtime_function_call_expression11859	= { FOLLOW_ASCII_SYMBOL_in_runtime_function_call_expression11859_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11861  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11861_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11861	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11861_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11863  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11863_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11863	= { FOLLOW_expression_in_runtime_function_call_expression11863_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11865  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11865_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11865	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11865_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHARSET_SYMBOL_in_runtime_function_call_expression11870  */
static	ANTLR3_BITWORD FOLLOW_CHARSET_SYMBOL_in_runtime_function_call_expression11870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_CHARSET_SYMBOL_in_runtime_function_call_expression11870	= { FOLLOW_CHARSET_SYMBOL_in_runtime_function_call_expression11870_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11872  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11872_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11872	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11872_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11874  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11874_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11874	= { FOLLOW_expression_in_runtime_function_call_expression11874_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11876  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11876_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11876	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11876_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COALESCE_SYMBOL_in_runtime_function_call_expression11881  */
static	ANTLR3_BITWORD FOLLOW_COALESCE_SYMBOL_in_runtime_function_call_expression11881_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_COALESCE_SYMBOL_in_runtime_function_call_expression11881	= { FOLLOW_COALESCE_SYMBOL_in_runtime_function_call_expression11881_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11883  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11883_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11883	= { FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11883_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATION_SYMBOL_in_runtime_function_call_expression11888  */
static	ANTLR3_BITWORD FOLLOW_COLLATION_SYMBOL_in_runtime_function_call_expression11888_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_COLLATION_SYMBOL_in_runtime_function_call_expression11888	= { FOLLOW_COLLATION_SYMBOL_in_runtime_function_call_expression11888_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11890  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11890_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11890	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11890_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11892  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11892_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11892	= { FOLLOW_expression_in_runtime_function_call_expression11892_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11894  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11894_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11894	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11894_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATABASE_SYMBOL_in_runtime_function_call_expression11899  */
static	ANTLR3_BITWORD FOLLOW_DATABASE_SYMBOL_in_runtime_function_call_expression11899_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_DATABASE_SYMBOL_in_runtime_function_call_expression11899	= { FOLLOW_DATABASE_SYMBOL_in_runtime_function_call_expression11899_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression11901  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression11901_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression11901	= { FOLLOW_parentheses_in_runtime_function_call_expression11901_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_runtime_function_call_expression11906  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_runtime_function_call_expression11906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_IF_SYMBOL_in_runtime_function_call_expression11906	= { FOLLOW_IF_SYMBOL_in_runtime_function_call_expression11906_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11908  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11908_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11908	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11908_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11910  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11910_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11910	= { FOLLOW_expression_in_runtime_function_call_expression11910_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11912  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11912_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11912	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11912_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11914  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11914_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11914	= { FOLLOW_expression_in_runtime_function_call_expression11914_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11916  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11916_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11916	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11916_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11918  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11918_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11918	= { FOLLOW_expression_in_runtime_function_call_expression11918_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11920  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11920	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11920_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FORMAT_SYMBOL_in_runtime_function_call_expression11925  */
static	ANTLR3_BITWORD FOLLOW_FORMAT_SYMBOL_in_runtime_function_call_expression11925_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_FORMAT_SYMBOL_in_runtime_function_call_expression11925	= { FOLLOW_FORMAT_SYMBOL_in_runtime_function_call_expression11925_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11927  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11927_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11927	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11927_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11929  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11929_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11929	= { FOLLOW_expression_in_runtime_function_call_expression11929_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11931  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11931_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11931	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11931_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11933  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11933_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression11933	= { FOLLOW_expression_in_runtime_function_call_expression11933_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11936  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11936_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11936	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11936_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11938  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11938_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11938	= { FOLLOW_expression_in_runtime_function_call_expression11938_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11942  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11942	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11942_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MICROSECOND_SYMBOL_in_runtime_function_call_expression11947  */
static	ANTLR3_BITWORD FOLLOW_MICROSECOND_SYMBOL_in_runtime_function_call_expression11947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MICROSECOND_SYMBOL_in_runtime_function_call_expression11947	= { FOLLOW_MICROSECOND_SYMBOL_in_runtime_function_call_expression11947_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11949  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11949_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11949	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11949_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11951  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11951_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11951	= { FOLLOW_expression_in_runtime_function_call_expression11951_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11953  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11953_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11953	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11953_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MOD_SYMBOL_in_runtime_function_call_expression11958  */
static	ANTLR3_BITWORD FOLLOW_MOD_SYMBOL_in_runtime_function_call_expression11958_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MOD_SYMBOL_in_runtime_function_call_expression11958	= { FOLLOW_MOD_SYMBOL_in_runtime_function_call_expression11958_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11960  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11960_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11960	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11960_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11962  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11962_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11962	= { FOLLOW_expression_in_runtime_function_call_expression11962_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11964  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11964_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11964	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11964_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11966  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11966_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11966	= { FOLLOW_expression_in_runtime_function_call_expression11966_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11968  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11968	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11968_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression11975  */
static	ANTLR3_BITWORD FOLLOW_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression11975_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression11975	= { FOLLOW_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression11975_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11977  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11977_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11977	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11977_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_runtime_function_call_expression11979  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_runtime_function_call_expression11979_bits[]	= { ANTLR3_UINT64_LIT(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_string_literal_in_runtime_function_call_expression11979	= { FOLLOW_string_literal_in_runtime_function_call_expression11979_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11981  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11981_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11981	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11981_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_runtime_function_call_expression11986  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_runtime_function_call_expression11986_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_PASSWORD_SYMBOL_in_runtime_function_call_expression11986	= { FOLLOW_PASSWORD_SYMBOL_in_runtime_function_call_expression11986_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11988  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11988_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11988	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11988_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression11990  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression11990_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression11990	= { FOLLOW_expression_in_runtime_function_call_expression11990_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11992  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11992_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11992	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11992_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUARTER_SYMBOL_in_runtime_function_call_expression11997  */
static	ANTLR3_BITWORD FOLLOW_QUARTER_SYMBOL_in_runtime_function_call_expression11997_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_QUARTER_SYMBOL_in_runtime_function_call_expression11997	= { FOLLOW_QUARTER_SYMBOL_in_runtime_function_call_expression11997_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11999  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11999_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11999	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11999_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12001  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12001_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12001	= { FOLLOW_expression_in_runtime_function_call_expression12001_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12003  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12003_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12003	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12003_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_runtime_function_call_expression12008  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_runtime_function_call_expression12008_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_REPEAT_SYMBOL_in_runtime_function_call_expression12008	= { FOLLOW_REPEAT_SYMBOL_in_runtime_function_call_expression12008_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12010  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12010_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12010	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12010_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12012  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12012_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12012	= { FOLLOW_expression_in_runtime_function_call_expression12012_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12014  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12014_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12014	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12014_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12016  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12016_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12016	= { FOLLOW_expression_in_runtime_function_call_expression12016_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12018  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12018_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12018	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12018_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPLACE_SYMBOL_in_runtime_function_call_expression12023  */
static	ANTLR3_BITWORD FOLLOW_REPLACE_SYMBOL_in_runtime_function_call_expression12023_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_REPLACE_SYMBOL_in_runtime_function_call_expression12023	= { FOLLOW_REPLACE_SYMBOL_in_runtime_function_call_expression12023_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12025  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12025_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12025	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12025_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12027  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12027_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12027	= { FOLLOW_expression_in_runtime_function_call_expression12027_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12029  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12029_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12029	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12029_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12031  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12031_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12031	= { FOLLOW_expression_in_runtime_function_call_expression12031_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12033  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12033_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12033	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12033_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12035  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12035_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12035	= { FOLLOW_expression_in_runtime_function_call_expression12035_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12037  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12037_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12037	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12037_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_runtime_function_call_expression12042  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_runtime_function_call_expression12042_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_REVERSE_SYMBOL_in_runtime_function_call_expression12042	= { FOLLOW_REVERSE_SYMBOL_in_runtime_function_call_expression12042_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12044  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12044_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12044	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12044_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12046  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12046_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12046	= { FOLLOW_expression_in_runtime_function_call_expression12046_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12048  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12048_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12048	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12048_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12053  */
static	ANTLR3_BITWORD FOLLOW_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12053_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12053	= { FOLLOW_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12053_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_runtime_function_call_expression12055  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_runtime_function_call_expression12055_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_runtime_function_call_expression12055	= { FOLLOW_parentheses_in_runtime_function_call_expression12055_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRUNCATE_SYMBOL_in_runtime_function_call_expression12060  */
static	ANTLR3_BITWORD FOLLOW_TRUNCATE_SYMBOL_in_runtime_function_call_expression12060_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_TRUNCATE_SYMBOL_in_runtime_function_call_expression12060	= { FOLLOW_TRUNCATE_SYMBOL_in_runtime_function_call_expression12060_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12062  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12062_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12062	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12062_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12064  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12064_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12064	= { FOLLOW_expression_in_runtime_function_call_expression12064_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12066  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12066_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12066	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12066_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12068  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12068_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12068	= { FOLLOW_expression_in_runtime_function_call_expression12068_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12070  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12070	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12070_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WEEK_SYMBOL_in_runtime_function_call_expression12075  */
static	ANTLR3_BITWORD FOLLOW_WEEK_SYMBOL_in_runtime_function_call_expression12075_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_WEEK_SYMBOL_in_runtime_function_call_expression12075	= { FOLLOW_WEEK_SYMBOL_in_runtime_function_call_expression12075_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12077  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12077_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12077	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12077_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12079  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12079_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression12079	= { FOLLOW_expression_in_runtime_function_call_expression12079_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12082  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12082_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12082	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12082_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12084  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12084_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_runtime_function_call_expression12084	= { FOLLOW_expression_in_runtime_function_call_expression12084_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12088  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12088_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12088	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12088_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12095  */
static	ANTLR3_BITWORD FOLLOW_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12095_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12095	= { FOLLOW_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12095_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12097  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12097_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12097	= { FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12097_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_runtime_function_call_expression12099  */
static	ANTLR3_BITWORD FOLLOW_expression_in_runtime_function_call_expression12099_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_runtime_function_call_expression12099	= { FOLLOW_expression_in_runtime_function_call_expression12099_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12109  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12109_bits[]	= { ANTLR3_UINT64_LIT(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_AS_SYMBOL_in_runtime_function_call_expression12109	= { FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12109_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12111  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_CHAR_SYMBOL_in_runtime_function_call_expression12111	= { FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12111_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_runtime_function_call_expression12113  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_runtime_function_call_expression12113_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000001000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_runtime_function_call_expression12113	= { FOLLOW_field_length_in_runtime_function_call_expression12113_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_levels_in_runtime_function_call_expression12117  */
static	ANTLR3_BITWORD FOLLOW_weight_string_levels_in_runtime_function_call_expression12117_bits[]	= { ANTLR3_UINT64_LIT(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_weight_string_levels_in_runtime_function_call_expression12117	= { FOLLOW_weight_string_levels_in_runtime_function_call_expression12117_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12125  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12125_bits[]	= { ANTLR3_UINT64_LIT(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_AS_SYMBOL_in_runtime_function_call_expression12125	= { FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12125_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_runtime_function_call_expression12127  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_runtime_function_call_expression12127_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_BINARY_SYMBOL_in_runtime_function_call_expression12127	= { FOLLOW_BINARY_SYMBOL_in_runtime_function_call_expression12127_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_runtime_function_call_expression12129  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_runtime_function_call_expression12129_bits[]	= { ANTLR3_UINT64_LIT(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_field_length_in_runtime_function_call_expression12129	= { FOLLOW_field_length_in_runtime_function_call_expression12129_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12136  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12136_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12136	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12136_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_runtime_function_call_expression12138  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_runtime_function_call_expression12138_bits[]	= { ANTLR3_UINT64_LIT(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_ulong_number_in_runtime_function_call_expression12138	= { FOLLOW_ulong_number_in_runtime_function_call_expression12138_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12140  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12140	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12140_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_runtime_function_call_expression12142  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_runtime_function_call_expression12142_bits[]	= { ANTLR3_UINT64_LIT(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_ulong_number_in_runtime_function_call_expression12142	= { FOLLOW_ulong_number_in_runtime_function_call_expression12142_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12144  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12144_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12144	= { FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12144_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_runtime_function_call_expression12146  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_runtime_function_call_expression12146_bits[]	= { ANTLR3_UINT64_LIT(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_ulong_number_in_runtime_function_call_expression12146	= { FOLLOW_ulong_number_in_runtime_function_call_expression12146_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12154  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12154_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12154	= { FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12154_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_geometry_function_in_runtime_function_call_expression12159  */
static	ANTLR3_BITWORD FOLLOW_geometry_function_in_runtime_function_call_expression12159_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_geometry_function_in_runtime_function_call_expression12159	= { FOLLOW_geometry_function_in_runtime_function_call_expression12159_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aggregate_function_in_runtime_function_call_expression12164  */
static	ANTLR3_BITWORD FOLLOW_aggregate_function_in_runtime_function_call_expression12164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_aggregate_function_in_runtime_function_call_expression12164	= { FOLLOW_aggregate_function_in_runtime_function_call_expression12164_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12173  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12173_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12173	= { FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12173_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_fractional_precision_in_time_function_parameters12175  */
static	ANTLR3_BITWORD FOLLOW_fractional_precision_in_time_function_parameters12175_bits[]	= { ANTLR3_UINT64_LIT(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_fractional_precision_in_time_function_parameters12175	= { FOLLOW_fractional_precision_in_time_function_parameters12175_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12178  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12178_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12178	= { FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12178_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_fractional_precision12191  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_fractional_precision12191_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_fractional_precision12191	= { FOLLOW_INT_NUMBER_in_fractional_precision12191_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12200  */
static	ANTLR3_BITWORD FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12200	= { FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12200_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_weight_string_levels12207  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_weight_string_levels12207_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_real_ulong_number_in_weight_string_levels12207	= { FOLLOW_real_ulong_number_in_weight_string_levels12207_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_OPERATOR_in_weight_string_levels12209  */
static	ANTLR3_BITWORD FOLLOW_MINUS_OPERATOR_in_weight_string_levels12209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUS_OPERATOR_in_weight_string_levels12209	= { FOLLOW_MINUS_OPERATOR_in_weight_string_levels12209_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_weight_string_levels12211  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_weight_string_levels12211_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_weight_string_levels12211	= { FOLLOW_real_ulong_number_in_weight_string_levels12211_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_level_list_item_in_weight_string_levels12217  */
static	ANTLR3_BITWORD FOLLOW_weight_string_level_list_item_in_weight_string_levels12217_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_weight_string_level_list_item_in_weight_string_levels12217	= { FOLLOW_weight_string_level_list_item_in_weight_string_levels12217_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_weight_string_levels12220  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_weight_string_levels12220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_weight_string_levels12220	= { FOLLOW_COMMA_SYMBOL_in_weight_string_levels12220_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_weight_string_level_list_item_in_weight_string_levels12222  */
static	ANTLR3_BITWORD FOLLOW_weight_string_level_list_item_in_weight_string_levels12222_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_weight_string_level_list_item_in_weight_string_levels12222	= { FOLLOW_weight_string_level_list_item_in_weight_string_levels12222_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_weight_string_level_list_item12236  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_weight_string_level_list_item12236_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_weight_string_level_list_item12236	= { FOLLOW_real_ulong_number_in_weight_string_level_list_item12236_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_weight_string_level_list_item12243  */
static	ANTLR3_BITWORD FOLLOW_set_in_weight_string_level_list_item12243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_weight_string_level_list_item12243	= { FOLLOW_set_in_weight_string_level_list_item12243_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12251  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12251_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12251	= { FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12251_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12258  */
static	ANTLR3_BITWORD FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12258	= { FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12258_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRIM_SYMBOL_in_trim_function12295  */
static	ANTLR3_BITWORD FOLLOW_TRIM_SYMBOL_in_trim_function12295_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_TRIM_SYMBOL_in_trim_function12295	= { FOLLOW_TRIM_SYMBOL_in_trim_function12295_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12297  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12297_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000231393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0280002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2988001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12297	= { FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12297_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12304  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12304_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_trim_function12304	= { FOLLOW_expression_in_trim_function12304_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function12307  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function12307_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function12307	= { FOLLOW_FROM_SYMBOL_in_trim_function12307_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12309  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12309_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_trim_function12309	= { FOLLOW_expression_in_trim_function12309_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEADING_SYMBOL_in_trim_function12317  */
static	ANTLR3_BITWORD FOLLOW_LEADING_SYMBOL_in_trim_function12317_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x410C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_LEADING_SYMBOL_in_trim_function12317	= { FOLLOW_LEADING_SYMBOL_in_trim_function12317_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12319  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12319_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12319	= { FOLLOW_expression_in_trim_function12319_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function12322  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function12322_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function12322	= { FOLLOW_FROM_SYMBOL_in_trim_function12322_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12324  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12324_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_trim_function12324	= { FOLLOW_expression_in_trim_function12324_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TRAILING_SYMBOL_in_trim_function12330  */
static	ANTLR3_BITWORD FOLLOW_TRAILING_SYMBOL_in_trim_function12330_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x410C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_TRAILING_SYMBOL_in_trim_function12330	= { FOLLOW_TRAILING_SYMBOL_in_trim_function12330_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12332  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12332_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12332	= { FOLLOW_expression_in_trim_function12332_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function12335  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function12335_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function12335	= { FOLLOW_FROM_SYMBOL_in_trim_function12335_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12337  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12337_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_trim_function12337	= { FOLLOW_expression_in_trim_function12337_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOTH_SYMBOL_in_trim_function12343  */
static	ANTLR3_BITWORD FOLLOW_BOTH_SYMBOL_in_trim_function12343_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x410C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BOTH_SYMBOL_in_trim_function12343	= { FOLLOW_BOTH_SYMBOL_in_trim_function12343_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12345  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12345_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_trim_function12345	= { FOLLOW_expression_in_trim_function12345_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_trim_function12348  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_trim_function12348_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_trim_function12348	= { FOLLOW_FROM_SYMBOL_in_trim_function12348_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_trim_function12350  */
static	ANTLR3_BITWORD FOLLOW_expression_in_trim_function12350_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_trim_function12350	= { FOLLOW_expression_in_trim_function12350_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12356  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12356_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12356	= { FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12356_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBSTRING_SYMBOL_in_substring_function12365  */
static	ANTLR3_BITWORD FOLLOW_SUBSTRING_SYMBOL_in_substring_function12365_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_SUBSTRING_SYMBOL_in_substring_function12365	= { FOLLOW_SUBSTRING_SYMBOL_in_substring_function12365_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12367  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12367_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12367	= { FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12367_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12369  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12369_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function12369	= { FOLLOW_expression_in_substring_function12369_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_substring_function12376  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_substring_function12376_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_substring_function12376	= { FOLLOW_COMMA_SYMBOL_in_substring_function12376_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12378  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12378_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function12378	= { FOLLOW_expression_in_substring_function12378_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_substring_function12381  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_substring_function12381_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_substring_function12381	= { FOLLOW_COMMA_SYMBOL_in_substring_function12381_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12383  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12383_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_substring_function12383	= { FOLLOW_expression_in_substring_function12383_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FROM_SYMBOL_in_substring_function12391  */
static	ANTLR3_BITWORD FOLLOW_FROM_SYMBOL_in_substring_function12391_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_FROM_SYMBOL_in_substring_function12391	= { FOLLOW_FROM_SYMBOL_in_substring_function12391_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12393  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12393_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x1000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_substring_function12393	= { FOLLOW_expression_in_substring_function12393_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_substring_function12396  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_substring_function12396_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_substring_function12396	= { FOLLOW_FOR_SYMBOL_in_substring_function12396_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_substring_function12398  */
static	ANTLR3_BITWORD FOLLOW_expression_in_substring_function12398_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_substring_function12398	= { FOLLOW_expression_in_substring_function12398_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12406  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12406_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12406	= { FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12406_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12416  */
static	ANTLR3_BITWORD FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12416	= { FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12416_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12418  */
static	ANTLR3_BITWORD FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12418_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12418	= { FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12418_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINESTRING_SYMBOL_in_geometry_function12423  */
static	ANTLR3_BITWORD FOLLOW_LINESTRING_SYMBOL_in_geometry_function12423_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_LINESTRING_SYMBOL_in_geometry_function12423	= { FOLLOW_LINESTRING_SYMBOL_in_geometry_function12423_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12425  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12425_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12425	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12425_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function12430  */
static	ANTLR3_BITWORD FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function12430_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MULTILINESTRING_SYMBOL_in_geometry_function12430	= { FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function12430_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12432  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12432_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12432	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12432_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function12437  */
static	ANTLR3_BITWORD FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function12437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MULTIPOINT_SYMBOL_in_geometry_function12437	= { FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function12437_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12439  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12439_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12439	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12439_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function12444  */
static	ANTLR3_BITWORD FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function12444_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MULTIPOLYGON_SYMBOL_in_geometry_function12444	= { FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function12444_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12446  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12446_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12446	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12446_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POINT_SYMBOL_in_geometry_function12451  */
static	ANTLR3_BITWORD FOLLOW_POINT_SYMBOL_in_geometry_function12451_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_POINT_SYMBOL_in_geometry_function12451	= { FOLLOW_POINT_SYMBOL_in_geometry_function12451_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12453  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12453_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12453	= { FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12453_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function12455  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function12455_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_geometry_function12455	= { FOLLOW_expression_in_geometry_function12455_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_geometry_function12457  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_geometry_function12457_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_geometry_function12457	= { FOLLOW_COMMA_SYMBOL_in_geometry_function12457_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function12459  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function12459_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_geometry_function12459	= { FOLLOW_expression_in_geometry_function12459_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12461  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12461_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12461	= { FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12461_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_POLYGON_SYMBOL_in_geometry_function12466  */
static	ANTLR3_BITWORD FOLLOW_POLYGON_SYMBOL_in_geometry_function12466_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_POLYGON_SYMBOL_in_geometry_function12466	= { FOLLOW_POLYGON_SYMBOL_in_geometry_function12466_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_with_parentheses_in_geometry_function12468  */
static	ANTLR3_BITWORD FOLLOW_expression_list_with_parentheses_in_geometry_function12468_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_with_parentheses_in_geometry_function12468	= { FOLLOW_expression_list_with_parentheses_in_geometry_function12468_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONTAINS_SYMBOL_in_geometry_function12475  */
static	ANTLR3_BITWORD FOLLOW_CONTAINS_SYMBOL_in_geometry_function12475_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_CONTAINS_SYMBOL_in_geometry_function12475	= { FOLLOW_CONTAINS_SYMBOL_in_geometry_function12475_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12477  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12477_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12477	= { FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12477_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function12479  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function12479_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_geometry_function12479	= { FOLLOW_expression_in_geometry_function12479_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_geometry_function12481  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_geometry_function12481_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_geometry_function12481	= { FOLLOW_COMMA_SYMBOL_in_geometry_function12481_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_geometry_function12483  */
static	ANTLR3_BITWORD FOLLOW_expression_in_geometry_function12483_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_geometry_function12483	= { FOLLOW_expression_in_geometry_function12483_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12485  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12485_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12485	= { FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12485_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AVG_SYMBOL_in_aggregate_function12494  */
static	ANTLR3_BITWORD FOLLOW_AVG_SYMBOL_in_aggregate_function12494_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_AVG_SYMBOL_in_aggregate_function12494	= { FOLLOW_AVG_SYMBOL_in_aggregate_function12494_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12496  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12496_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12496	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12496_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12498  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12498_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12498	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12498_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12501  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12501_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12501	= { FOLLOW_in_aggregate_expression_in_aggregate_function12501_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12503  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12503_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12503	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12503_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_AND_SYMBOL_in_aggregate_function12508  */
static	ANTLR3_BITWORD FOLLOW_BIT_AND_SYMBOL_in_aggregate_function12508_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_BIT_AND_SYMBOL_in_aggregate_function12508	= { FOLLOW_BIT_AND_SYMBOL_in_aggregate_function12508_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12510  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12510_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12510	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12510_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12512  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12512_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12512	= { FOLLOW_in_aggregate_expression_in_aggregate_function12512_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12514  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12514_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12514	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12514_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_OR_SYMBOL_in_aggregate_function12519  */
static	ANTLR3_BITWORD FOLLOW_BIT_OR_SYMBOL_in_aggregate_function12519_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_BIT_OR_SYMBOL_in_aggregate_function12519	= { FOLLOW_BIT_OR_SYMBOL_in_aggregate_function12519_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12521  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12521_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12521	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12521_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12523  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12523_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12523	= { FOLLOW_in_aggregate_expression_in_aggregate_function12523_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12525  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12525_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12525	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12525_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function12530  */
static	ANTLR3_BITWORD FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function12530_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_BIT_XOR_SYMBOL_in_aggregate_function12530	= { FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function12530_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12532  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12532_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12532	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12532_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12534  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12534_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12534	= { FOLLOW_in_aggregate_expression_in_aggregate_function12534_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12536  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12536_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12536	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12536_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_count_function_in_aggregate_function12541  */
static	ANTLR3_BITWORD FOLLOW_count_function_in_aggregate_function12541_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_count_function_in_aggregate_function12541	= { FOLLOW_count_function_in_aggregate_function12541_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIN_SYMBOL_in_aggregate_function12546  */
static	ANTLR3_BITWORD FOLLOW_MIN_SYMBOL_in_aggregate_function12546_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MIN_SYMBOL_in_aggregate_function12546	= { FOLLOW_MIN_SYMBOL_in_aggregate_function12546_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12548  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12548_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12548	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12548_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12550  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12550_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12550	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12550_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12553  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12553_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12553	= { FOLLOW_in_aggregate_expression_in_aggregate_function12553_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12555  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12555_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12555	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12555_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_SYMBOL_in_aggregate_function12560  */
static	ANTLR3_BITWORD FOLLOW_MAX_SYMBOL_in_aggregate_function12560_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MAX_SYMBOL_in_aggregate_function12560	= { FOLLOW_MAX_SYMBOL_in_aggregate_function12560_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12562  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12562_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12562	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12562_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12564  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12564_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12564	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12564_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12567  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12567_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12567	= { FOLLOW_in_aggregate_expression_in_aggregate_function12567_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12569  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12569_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12569	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12569_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STD_SYMBOL_in_aggregate_function12574  */
static	ANTLR3_BITWORD FOLLOW_STD_SYMBOL_in_aggregate_function12574_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_STD_SYMBOL_in_aggregate_function12574	= { FOLLOW_STD_SYMBOL_in_aggregate_function12574_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12576  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12576_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12576	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12576_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12578  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12578_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12578	= { FOLLOW_in_aggregate_expression_in_aggregate_function12578_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12580  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12580_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12580	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12580_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARIANCE_SYMBOL_in_aggregate_function12585  */
static	ANTLR3_BITWORD FOLLOW_VARIANCE_SYMBOL_in_aggregate_function12585_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_VARIANCE_SYMBOL_in_aggregate_function12585	= { FOLLOW_VARIANCE_SYMBOL_in_aggregate_function12585_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12587  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12587_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12587	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12587_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12589  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12589_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12589	= { FOLLOW_in_aggregate_expression_in_aggregate_function12589_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12591  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12591_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12591	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12591_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function12596  */
static	ANTLR3_BITWORD FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function12596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_STDDEV_SAMP_SYMBOL_in_aggregate_function12596	= { FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function12596_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12598  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12598_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12598	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12598_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12600  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12600_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12600	= { FOLLOW_in_aggregate_expression_in_aggregate_function12600_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12602  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12602_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12602	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12602_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function12607  */
static	ANTLR3_BITWORD FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function12607_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_VAR_SAMP_SYMBOL_in_aggregate_function12607	= { FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function12607_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12609  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12609_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12609	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12609_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12611  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12611_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12611	= { FOLLOW_in_aggregate_expression_in_aggregate_function12611_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12613  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12613_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12613	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12613_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUM_SYMBOL_in_aggregate_function12618  */
static	ANTLR3_BITWORD FOLLOW_SUM_SYMBOL_in_aggregate_function12618_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_SUM_SYMBOL_in_aggregate_function12618	= { FOLLOW_SUM_SYMBOL_in_aggregate_function12618_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12620  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12620_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12620	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12620_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12622  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12622_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12622	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12622_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_aggregate_function12625  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_aggregate_function12625_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_aggregate_function12625	= { FOLLOW_in_aggregate_expression_in_aggregate_function12625_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12627  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12627	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function12632  */
static	ANTLR3_BITWORD FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function12632_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_GROUP_CONCAT_SYMBOL_in_aggregate_function12632	= { FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function12632_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12634  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12634_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12634	= { FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12634_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12636  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12636_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12636	= { FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12636_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_aggregate_function12639  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_aggregate_function12639_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_list_in_aggregate_function12639	= { FOLLOW_expression_list_in_aggregate_function12639_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_order_by_clause_in_aggregate_function12641  */
static	ANTLR3_BITWORD FOLLOW_order_by_clause_in_aggregate_function12641_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_order_by_clause_in_aggregate_function12641	= { FOLLOW_order_by_clause_in_aggregate_function12641_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12645  */
static	ANTLR3_BITWORD FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12645_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12645	= { FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12645_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_aggregate_function12647  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_aggregate_function12647_bits[]	= { ANTLR3_UINT64_LIT(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_text_string_in_aggregate_function12647	= { FOLLOW_text_string_in_aggregate_function12647_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12651  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12651	= { FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12651_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12660  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12660_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12660	= { FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12660_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_in_aggregate_expression12663  */
static	ANTLR3_BITWORD FOLLOW_expression_in_in_aggregate_expression12663_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_in_aggregate_expression12663	= { FOLLOW_expression_in_in_aggregate_expression12663_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COUNT_SYMBOL_in_count_function12672  */
static	ANTLR3_BITWORD FOLLOW_COUNT_SYMBOL_in_count_function12672_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_COUNT_SYMBOL_in_count_function12672	= { FOLLOW_COUNT_SYMBOL_in_count_function12672_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_count_function12674  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_count_function12674_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x09FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002480020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159128482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_count_function12674	= { FOLLOW_OPEN_PAR_SYMBOL_in_count_function12674_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_SYMBOL_in_count_function12681  */
static	ANTLR3_BITWORD FOLLOW_ALL_SYMBOL_in_count_function12681_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_ALL_SYMBOL_in_count_function12681	= { FOLLOW_ALL_SYMBOL_in_count_function12681_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_count_function12684  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_count_function12684_bits[]	= { ANTLR3_UINT64_LIT(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_MULT_OPERATOR_in_count_function12684	= { FOLLOW_MULT_OPERATOR_in_count_function12684_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_in_aggregate_expression_in_count_function12690  */
static	ANTLR3_BITWORD FOLLOW_in_aggregate_expression_in_count_function12690_bits[]	= { ANTLR3_UINT64_LIT(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_in_aggregate_expression_in_count_function12690	= { FOLLOW_in_aggregate_expression_in_count_function12690_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DISTINCT_SYMBOL_in_count_function12696  */
static	ANTLR3_BITWORD FOLLOW_DISTINCT_SYMBOL_in_count_function12696_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_DISTINCT_SYMBOL_in_count_function12696	= { FOLLOW_DISTINCT_SYMBOL_in_count_function12696_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_count_function12698  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_count_function12698_bits[]	= { ANTLR3_UINT64_LIT(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_expression_list_in_count_function12698	= { FOLLOW_expression_list_in_count_function12698_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12704  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12704_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12704	= { FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12704_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_udf_call_expression_in_udf_call12713  */
static	ANTLR3_BITWORD FOLLOW_udf_call_expression_in_udf_call12713_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_udf_call_expression_in_udf_call12713	= { FOLLOW_udf_call_expression_in_udf_call12713_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_udf_call_expression12730  */
static	ANTLR3_BITWORD FOLLOW_set_in_udf_call_expression12730_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_set_in_udf_call_expression12730	= { FOLLOW_set_in_udf_call_expression12730_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_udf_call_expression12738  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_udf_call_expression12738_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C001230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_udf_call_expression12738	= { FOLLOW_OPEN_PAR_SYMBOL_in_udf_call_expression12738_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aliased_expression_list_in_udf_call_expression12740  */
static	ANTLR3_BITWORD FOLLOW_aliased_expression_list_in_udf_call_expression12740_bits[]	= { ANTLR3_UINT64_LIT(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_aliased_expression_list_in_udf_call_expression12740	= { FOLLOW_aliased_expression_list_in_udf_call_expression12740_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_udf_call_expression12743  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_udf_call_expression12743_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_udf_call_expression12743	= { FOLLOW_CLOSE_PAR_SYMBOL_in_udf_call_expression12743_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_stored_function_call_expression_in_stored_function_call12752  */
static	ANTLR3_BITWORD FOLLOW_stored_function_call_expression_in_stored_function_call12752_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_stored_function_call_expression_in_stored_function_call12752	= { FOLLOW_stored_function_call_expression_in_stored_function_call12752_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_stored_function_call_expression12769  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_stored_function_call_expression12769_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_qualified_identifier_in_stored_function_call_expression12769	= { FOLLOW_qualified_identifier_in_stored_function_call_expression12769_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_stored_function_call_expression12771  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_stored_function_call_expression12771_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C001230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_stored_function_call_expression12771	= { FOLLOW_OPEN_PAR_SYMBOL_in_stored_function_call_expression12771_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_stored_function_call_expression12773  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_stored_function_call_expression12773_bits[]	= { ANTLR3_UINT64_LIT(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_expression_list_in_stored_function_call_expression12773	= { FOLLOW_expression_list_in_stored_function_call_expression12773_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_stored_function_call_expression12776  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_stored_function_call_expression12776_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_stored_function_call_expression12776	= { FOLLOW_CLOSE_PAR_SYMBOL_in_stored_function_call_expression12776_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aliased_expression_in_aliased_expression_list12785  */
static	ANTLR3_BITWORD FOLLOW_aliased_expression_in_aliased_expression_list12785_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_aliased_expression_in_aliased_expression_list12785	= { FOLLOW_aliased_expression_in_aliased_expression_list12785_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12788  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12788_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12788	= { FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12788_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_aliased_expression_in_aliased_expression_list12790  */
static	ANTLR3_BITWORD FOLLOW_aliased_expression_in_aliased_expression_list12790_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_aliased_expression_in_aliased_expression_list12790	= { FOLLOW_aliased_expression_in_aliased_expression_list12790_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_aliased_expression12801  */
static	ANTLR3_BITWORD FOLLOW_expression_in_aliased_expression12801_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF2), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000002108), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000021000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_aliased_expression12801	= { FOLLOW_expression_in_aliased_expression12801_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_alias_in_aliased_expression12803  */
static	ANTLR3_BITWORD FOLLOW_select_alias_in_aliased_expression12803_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_select_alias_in_aliased_expression12803	= { FOLLOW_select_alias_in_aliased_expression12803_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_variable_in_variable12824  */
static	ANTLR3_BITWORD FOLLOW_user_variable_in_variable12824_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(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_user_variable_in_variable12824	= { FOLLOW_user_variable_in_variable12824_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASSIGN_OPERATOR_in_variable12827  */
static	ANTLR3_BITWORD FOLLOW_ASSIGN_OPERATOR_in_variable12827_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_ASSIGN_OPERATOR_in_variable12827	= { FOLLOW_ASSIGN_OPERATOR_in_variable12827_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_variable12830  */
static	ANTLR3_BITWORD FOLLOW_expression_in_variable12830_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_variable12830	= { FOLLOW_expression_in_variable12830_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_system_variable_in_variable12837  */
static	ANTLR3_BITWORD FOLLOW_system_variable_in_variable12837_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_system_variable_in_variable12837	= { FOLLOW_system_variable_in_variable12837_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_user_variable12847  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_user_variable12847_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_user_variable12847	= { FOLLOW_AT_SIGN_SYMBOL_in_user_variable12847_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_user_variable12849  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_user_variable12849_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_user_variable12849	= { FOLLOW_text_or_identifier_in_user_variable12849_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_TEXT_SUFFIX_in_user_variable12863  */
static	ANTLR3_BITWORD FOLLOW_AT_TEXT_SUFFIX_in_user_variable12863_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_TEXT_SUFFIX_in_user_variable12863	= { FOLLOW_AT_TEXT_SUFFIX_in_user_variable12863_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12873  */
static	ANTLR3_BITWORD FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12873_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12873	= { FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12873_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_option_type_in_system_variable12889  */
static	ANTLR3_BITWORD FOLLOW_option_type_in_system_variable12889_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_option_type_in_system_variable12889	= { FOLLOW_option_type_in_system_variable12889_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_system_variable12891  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_system_variable12891_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_system_variable12891	= { FOLLOW_DOT_SYMBOL_in_system_variable12891_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_name_in_system_variable12895  */
static	ANTLR3_BITWORD FOLLOW_variable_name_in_system_variable12895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_name_in_system_variable12895	= { FOLLOW_variable_name_in_system_variable12895_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_name12904  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_name12904_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_identifier_in_variable_name12904	= { FOLLOW_identifier_in_variable_name12904_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_variable_name12907  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_variable_name12907_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_variable_name12907	= { FOLLOW_DOT_SYMBOL_in_variable_name12907_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_name12909  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_name12909_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_variable_name12909	= { FOLLOW_identifier_in_variable_name12909_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_variable_name12920  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_variable_name12920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DEFAULT_SYMBOL_in_variable_name12920	= { FOLLOW_DEFAULT_SYMBOL_in_variable_name12920_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_variable_name12922  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_variable_name12922_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_variable_name12922	= { FOLLOW_DOT_SYMBOL_in_variable_name12922_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_name12924  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_name12924_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_variable_name12924	= { FOLLOW_identifier_in_variable_name12924_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MATCH_SYMBOL_in_match_expression12933  */
static	ANTLR3_BITWORD FOLLOW_MATCH_SYMBOL_in_match_expression12933_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_MATCH_SYMBOL_in_match_expression12933	= { FOLLOW_MATCH_SYMBOL_in_match_expression12933_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12936  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12936_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12936	= { FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12936_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_name_list_in_match_expression12938  */
static	ANTLR3_BITWORD FOLLOW_field_name_list_in_match_expression12938_bits[]	= { ANTLR3_UINT64_LIT(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_field_name_list_in_match_expression12938	= { FOLLOW_field_name_list_in_match_expression12938_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12940  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12940_bits[]	= { ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12940	= { FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12940_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AGAINST_SYMBOL_in_match_expression12942  */
static	ANTLR3_BITWORD FOLLOW_AGAINST_SYMBOL_in_match_expression12942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_AGAINST_SYMBOL_in_match_expression12942	= { FOLLOW_AGAINST_SYMBOL_in_match_expression12942_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12944  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12944_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12944	= { FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12944_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_match_expression12946  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_match_expression12946_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000010000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_bitwise_or_expression_in_match_expression12946	= { FOLLOW_bitwise_or_expression_in_match_expression12946_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_match_expression12955  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_match_expression12955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000) };
static  ANTLR3_BITSET_LIST FOLLOW_IN_SYMBOL_in_match_expression12955	= { FOLLOW_IN_SYMBOL_in_match_expression12955_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOLEAN_SYMBOL_in_match_expression12957  */
static	ANTLR3_BITWORD FOLLOW_BOOLEAN_SYMBOL_in_match_expression12957_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BOOLEAN_SYMBOL_in_match_expression12957	= { FOLLOW_BOOLEAN_SYMBOL_in_match_expression12957_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_match_expression12959  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_match_expression12959_bits[]	= { ANTLR3_UINT64_LIT(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_MODE_SYMBOL_in_match_expression12959	= { FOLLOW_MODE_SYMBOL_in_match_expression12959_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_match_expression12967  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_match_expression12967_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IN_SYMBOL_in_match_expression12967	= { FOLLOW_IN_SYMBOL_in_match_expression12967_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATURAL_SYMBOL_in_match_expression12969  */
static	ANTLR3_BITWORD FOLLOW_NATURAL_SYMBOL_in_match_expression12969_bits[]	= { ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NATURAL_SYMBOL_in_match_expression12969	= { FOLLOW_NATURAL_SYMBOL_in_match_expression12969_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LANGUAGE_SYMBOL_in_match_expression12971  */
static	ANTLR3_BITWORD FOLLOW_LANGUAGE_SYMBOL_in_match_expression12971_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LANGUAGE_SYMBOL_in_match_expression12971	= { FOLLOW_LANGUAGE_SYMBOL_in_match_expression12971_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MODE_SYMBOL_in_match_expression12973  */
static	ANTLR3_BITWORD FOLLOW_MODE_SYMBOL_in_match_expression12973_bits[]	= { ANTLR3_UINT64_LIT(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), 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_MODE_SYMBOL_in_match_expression12973	= { FOLLOW_MODE_SYMBOL_in_match_expression12973_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_match_expression12978  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_match_expression12978_bits[]	= { 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_WITH_SYMBOL_in_match_expression12978	= { FOLLOW_WITH_SYMBOL_in_match_expression12978_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_QUERY_SYMBOL_in_match_expression12980  */
static	ANTLR3_BITWORD FOLLOW_QUERY_SYMBOL_in_match_expression12980_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000200) };
static  ANTLR3_BITSET_LIST FOLLOW_QUERY_SYMBOL_in_match_expression12980	= { FOLLOW_QUERY_SYMBOL_in_match_expression12980_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXPANSION_SYMBOL_in_match_expression12982  */
static	ANTLR3_BITWORD FOLLOW_EXPANSION_SYMBOL_in_match_expression12982_bits[]	= { ANTLR3_UINT64_LIT(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_EXPANSION_SYMBOL_in_match_expression12982	= { FOLLOW_EXPANSION_SYMBOL_in_match_expression12982_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12992  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12992_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12992	= { FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12992_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_expression13002  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_expression13002_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000008048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_expression13002	= { FOLLOW_CASE_SYMBOL_in_case_expression13002_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_case_expression13004  */
static	ANTLR3_BITWORD FOLLOW_expression_in_case_expression13004_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_case_expression13004	= { FOLLOW_expression_in_case_expression13004_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_when_expression_in_case_expression13008  */
static	ANTLR3_BITWORD FOLLOW_when_expression_in_case_expression13008_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_when_expression_in_case_expression13008	= { FOLLOW_when_expression_in_case_expression13008_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_expression_in_case_expression13010  */
static	ANTLR3_BITWORD FOLLOW_then_expression_in_case_expression13010_bits[]	= { 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(0x0000000800000000), 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_then_expression_in_case_expression13010	= { FOLLOW_then_expression_in_case_expression13010_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_else_expression_in_case_expression13014  */
static	ANTLR3_BITWORD FOLLOW_else_expression_in_case_expression13014_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_else_expression_in_case_expression13014	= { FOLLOW_else_expression_in_case_expression13014_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_case_expression13017  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_case_expression13017_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_case_expression13017	= { FOLLOW_END_SYMBOL_in_case_expression13017_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHEN_SYMBOL_in_when_expression13026  */
static	ANTLR3_BITWORD FOLLOW_WHEN_SYMBOL_in_when_expression13026_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_WHEN_SYMBOL_in_when_expression13026	= { FOLLOW_WHEN_SYMBOL_in_when_expression13026_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_when_expression13029  */
static	ANTLR3_BITWORD FOLLOW_expression_in_when_expression13029_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_when_expression13029	= { FOLLOW_expression_in_when_expression13029_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THEN_SYMBOL_in_then_expression13038  */
static	ANTLR3_BITWORD FOLLOW_THEN_SYMBOL_in_then_expression13038_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_THEN_SYMBOL_in_then_expression13038	= { FOLLOW_THEN_SYMBOL_in_then_expression13038_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_then_expression13041  */
static	ANTLR3_BITWORD FOLLOW_expression_in_then_expression13041_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_then_expression13041	= { FOLLOW_expression_in_then_expression13041_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_else_expression13050  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_else_expression13050_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_else_expression13050	= { FOLLOW_ELSE_SYMBOL_in_else_expression13050_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_else_expression13053  */
static	ANTLR3_BITWORD FOLLOW_expression_in_else_expression13053_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_else_expression13053	= { FOLLOW_expression_in_else_expression13053_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_cast_expression13062  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_cast_expression13062_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230383170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002010061100), ANTLR3_UINT64_LIT(0x8150108402810000), ANTLR3_UINT64_LIT(0x0000004180002401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_cast_expression13062	= { FOLLOW_BINARY_SYMBOL_in_cast_expression13062_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_cast_expression13064  */
static	ANTLR3_BITWORD FOLLOW_primary_in_cast_expression13064_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_primary_in_cast_expression13064	= { FOLLOW_primary_in_cast_expression13064_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CAST_SYMBOL_in_cast_expression13069  */
static	ANTLR3_BITWORD FOLLOW_CAST_SYMBOL_in_cast_expression13069_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_CAST_SYMBOL_in_cast_expression13069	= { FOLLOW_CAST_SYMBOL_in_cast_expression13069_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13071  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13071_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13071	= { FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13071_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_cast_expression13073  */
static	ANTLR3_BITWORD FOLLOW_expression_in_cast_expression13073_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_cast_expression13073	= { FOLLOW_expression_in_cast_expression13073_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_cast_expression13075  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_cast_expression13075_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0003000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000200001000), ANTLR3_UINT64_LIT(0x0000000000000800), 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_AS_SYMBOL_in_cast_expression13075	= { FOLLOW_AS_SYMBOL_in_cast_expression13075_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_type_in_cast_expression13077  */
static	ANTLR3_BITWORD FOLLOW_cast_type_in_cast_expression13077_bits[]	= { ANTLR3_UINT64_LIT(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_cast_type_in_cast_expression13077	= { FOLLOW_cast_type_in_cast_expression13077_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13079  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13079_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13079	= { FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13079_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONVERT_SYMBOL_in_cast_expression13084  */
static	ANTLR3_BITWORD FOLLOW_CONVERT_SYMBOL_in_cast_expression13084_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_CONVERT_SYMBOL_in_cast_expression13084	= { FOLLOW_CONVERT_SYMBOL_in_cast_expression13084_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13086  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13086_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13086	= { FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13086_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_cast_expression13088  */
static	ANTLR3_BITWORD FOLLOW_expression_in_cast_expression13088_bits[]	= { ANTLR3_UINT64_LIT(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), 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_expression_in_cast_expression13088	= { FOLLOW_expression_in_cast_expression13088_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_cast_expression13091  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_cast_expression13091_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0003000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000200001000), ANTLR3_UINT64_LIT(0x0000000000000800), 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_COMMA_SYMBOL_in_cast_expression13091	= { FOLLOW_COMMA_SYMBOL_in_cast_expression13091_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cast_type_in_cast_expression13093  */
static	ANTLR3_BITWORD FOLLOW_cast_type_in_cast_expression13093_bits[]	= { ANTLR3_UINT64_LIT(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_cast_type_in_cast_expression13093	= { FOLLOW_cast_type_in_cast_expression13093_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_USING_SYMBOL_in_cast_expression13097  */
static	ANTLR3_BITWORD FOLLOW_USING_SYMBOL_in_cast_expression13097_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_USING_SYMBOL_in_cast_expression13097	= { FOLLOW_USING_SYMBOL_in_cast_expression13097_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_cast_expression13099  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_cast_expression13099_bits[]	= { ANTLR3_UINT64_LIT(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_charset_name_in_cast_expression13099	= { FOLLOW_charset_name_in_cast_expression13099_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13102  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13102_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13102	= { FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13102_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_cast_type13111  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_cast_type13111_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_cast_type13111	= { FOLLOW_BINARY_SYMBOL_in_cast_type13111_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type13113  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type13113_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type13113	= { FOLLOW_field_length_in_cast_type13113_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_cast_type13119  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_cast_type13119_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_cast_type13119	= { FOLLOW_CHAR_SYMBOL_in_cast_type13119_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type13121  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type13121_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type13121	= { FOLLOW_field_length_in_cast_type13121_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_encoding_in_cast_type13124  */
static	ANTLR3_BITWORD FOLLOW_encoding_in_cast_type13124_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_encoding_in_cast_type13124	= { FOLLOW_encoding_in_cast_type13124_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_cast_type13130  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_cast_type13130_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_SYMBOL_in_cast_type13130	= { FOLLOW_NCHAR_SYMBOL_in_cast_type13130_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_cast_type13132  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_cast_type13132_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_cast_type13132	= { FOLLOW_field_length_in_cast_type13132_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SIGNED_SYMBOL_in_cast_type13138  */
static	ANTLR3_BITWORD FOLLOW_SIGNED_SYMBOL_in_cast_type13138_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(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SIGNED_SYMBOL_in_cast_type13138	= { FOLLOW_SIGNED_SYMBOL_in_cast_type13138_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_SYMBOL_in_cast_type13140  */
static	ANTLR3_BITWORD FOLLOW_INT_SYMBOL_in_cast_type13140_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_SYMBOL_in_cast_type13140	= { FOLLOW_INT_SYMBOL_in_cast_type13140_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNSIGNED_SYMBOL_in_cast_type13146  */
static	ANTLR3_BITWORD FOLLOW_UNSIGNED_SYMBOL_in_cast_type13146_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(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNSIGNED_SYMBOL_in_cast_type13146	= { FOLLOW_UNSIGNED_SYMBOL_in_cast_type13146_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_SYMBOL_in_cast_type13148  */
static	ANTLR3_BITWORD FOLLOW_INT_SYMBOL_in_cast_type13148_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_SYMBOL_in_cast_type13148	= { FOLLOW_INT_SYMBOL_in_cast_type13148_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_cast_type13154  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_cast_type13154_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_cast_type13154	= { FOLLOW_DATE_SYMBOL_in_cast_type13154_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_cast_type13159  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_cast_type13159_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_cast_type13159	= { FOLLOW_TIME_SYMBOL_in_cast_type13159_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_cast_type13161  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_cast_type13161_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_cast_type13161	= { FOLLOW_type_datetime_precision_in_cast_type13161_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATETIME_SYMBOL_in_cast_type13167  */
static	ANTLR3_BITWORD FOLLOW_DATETIME_SYMBOL_in_cast_type13167_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_DATETIME_SYMBOL_in_cast_type13167	= { FOLLOW_DATETIME_SYMBOL_in_cast_type13167_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_cast_type13169  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_cast_type13169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_cast_type13169	= { FOLLOW_type_datetime_precision_in_cast_type13169_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECIMAL_SYMBOL_in_cast_type13175  */
static	ANTLR3_BITWORD FOLLOW_DECIMAL_SYMBOL_in_cast_type13175_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_DECIMAL_SYMBOL_in_cast_type13175	= { FOLLOW_DECIMAL_SYMBOL_in_cast_type13175_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_cast_type13177  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_cast_type13177_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_cast_type13177	= { FOLLOW_float_options_in_cast_type13177_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JSON_SYMBOL_in_cast_type13185  */
static	ANTLR3_BITWORD FOLLOW_JSON_SYMBOL_in_cast_type13185_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_JSON_SYMBOL_in_cast_type13185	= { FOLLOW_JSON_SYMBOL_in_cast_type13185_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_encoding13194  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_encoding13194_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_encoding13194	= { FOLLOW_ASCII_SYMBOL_in_encoding13194_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding13196  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding13196_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding13196	= { FOLLOW_BINARY_SYMBOL_in_encoding13196_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding13202  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding13202_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000822), 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_BINARY_SYMBOL_in_encoding13202	= { FOLLOW_BINARY_SYMBOL_in_encoding13202_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_encoding13205  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_encoding13205_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_encoding13205	= { FOLLOW_ASCII_SYMBOL_in_encoding13205_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_encoding13209  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_encoding13209_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNICODE_SYMBOL_in_encoding13209	= { FOLLOW_UNICODE_SYMBOL_in_encoding13209_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_encoding13213  */
static	ANTLR3_BITWORD FOLLOW_charset_in_encoding13213_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_encoding13213	= { FOLLOW_charset_in_encoding13213_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_encoding13215  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_encoding13215_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_encoding13215	= { FOLLOW_charset_name_in_encoding13215_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_encoding13222  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_encoding13222_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNICODE_SYMBOL_in_encoding13222	= { FOLLOW_UNICODE_SYMBOL_in_encoding13222_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding13224  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding13224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding13224	= { FOLLOW_BINARY_SYMBOL_in_encoding13224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BYTE_SYMBOL_in_encoding13230  */
static	ANTLR3_BITWORD FOLLOW_BYTE_SYMBOL_in_encoding13230_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BYTE_SYMBOL_in_encoding13230	= { FOLLOW_BYTE_SYMBOL_in_encoding13230_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_encoding13235  */
static	ANTLR3_BITWORD FOLLOW_charset_in_encoding13235_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_encoding13235	= { FOLLOW_charset_in_encoding13235_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_encoding13237  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_encoding13237_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_encoding13237	= { FOLLOW_charset_name_in_encoding13237_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_encoding13239  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_encoding13239_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_encoding13239	= { FOLLOW_BINARY_SYMBOL_in_encoding13239_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_charset13249  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_charset13249_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_charset13249	= { FOLLOW_CHAR_SYMBOL_in_charset13249_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_charset13251  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_charset13251_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_charset13251	= { FOLLOW_SET_SYMBOL_in_charset13251_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHARSET_SYMBOL_in_charset13255  */
static	ANTLR3_BITWORD FOLLOW_CHARSET_SYMBOL_in_charset13255_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHARSET_SYMBOL_in_charset13255	= { FOLLOW_CHARSET_SYMBOL_in_charset13255_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_interval13336  */
static	ANTLR3_BITWORD FOLLOW_expression_in_interval13336_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000045000000), ANTLR3_UINT64_LIT(0x0000800000000200), ANTLR3_UINT64_LIT(0x0104000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x20000000000001E0), ANTLR3_UINT64_LIT(0x000000000001C000), ANTLR3_UINT64_LIT(0x0000000300000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_interval13336	= { FOLLOW_expression_in_interval13336_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_unit_in_interval13338  */
static	ANTLR3_BITWORD FOLLOW_interval_unit_in_interval13338_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_unit_in_interval13338	= { FOLLOW_interval_unit_in_interval13338_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_timestamp_unit_in_interval_unit13348  */
static	ANTLR3_BITWORD FOLLOW_interval_timestamp_unit_in_interval_unit13348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_timestamp_unit_in_interval_unit13348	= { FOLLOW_interval_timestamp_unit_in_interval_unit13348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13353  */
static	ANTLR3_BITWORD FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13353	= { FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13353_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13358  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13358_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13358	= { FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13358_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13363  */
static	ANTLR3_BITWORD FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13363	= { FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13363_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13368  */
static	ANTLR3_BITWORD FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13368	= { FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13368_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13373  */
static	ANTLR3_BITWORD FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13373_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13373	= { FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13373_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13378  */
static	ANTLR3_BITWORD FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13378_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13378	= { FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13378_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13383  */
static	ANTLR3_BITWORD FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13383_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13383	= { FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13383_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13388  */
static	ANTLR3_BITWORD FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13388_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13388	= { FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13388_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13393  */
static	ANTLR3_BITWORD FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13393_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13393	= { FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13393_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13398  */
static	ANTLR3_BITWORD FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13398_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13398	= { FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13398_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13403  */
static	ANTLR3_BITWORD FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13403	= { FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13403_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13471  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13471_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13471	= { FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13471_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_expression_list_with_parentheses13473  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_expression_list_with_parentheses13473_bits[]	= { ANTLR3_UINT64_LIT(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_expression_list_in_expression_list_with_parentheses13473	= { FOLLOW_expression_list_in_expression_list_with_parentheses13473_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13475  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13475_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13475	= { FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13475_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13496  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13496_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C001230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13496	= { FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13496_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_list_in_optional_expression_list_with_parentheses13498  */
static	ANTLR3_BITWORD FOLLOW_expression_list_in_optional_expression_list_with_parentheses13498_bits[]	= { ANTLR3_UINT64_LIT(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_expression_list_in_optional_expression_list_with_parentheses13498	= { FOLLOW_expression_list_in_optional_expression_list_with_parentheses13498_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13501  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13501_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13501	= { FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13501_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list13523  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list13523_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list13523	= { FOLLOW_expression_in_expression_list13523_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_expression_list13526  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_expression_list13526_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_expression_list13526	= { FOLLOW_COMMA_SYMBOL_in_expression_list13526_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list13528  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list13528_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list13528	= { FOLLOW_expression_in_expression_list13528_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list_with_direction13539  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list_with_direction13539_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(0x0000100000000001), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list_with_direction13539	= { FOLLOW_expression_in_expression_list_with_direction13539_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_expression_list_with_direction13541  */
static	ANTLR3_BITWORD FOLLOW_direction_in_expression_list_with_direction13541_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_expression_list_with_direction13541	= { FOLLOW_direction_in_expression_list_with_direction13541_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13558  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13558_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13558	= { FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13558_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_expression_list_with_direction13560  */
static	ANTLR3_BITWORD FOLLOW_expression_in_expression_list_with_direction13560_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(0x0000100000000001), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_expression_list_with_direction13560	= { FOLLOW_expression_in_expression_list_with_direction13560_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_expression_list_with_direction13562  */
static	ANTLR3_BITWORD FOLLOW_direction_in_expression_list_with_direction13562_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_expression_list_with_direction13562	= { FOLLOW_direction_in_expression_list_with_direction13562_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_channel13578  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_channel13578_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_channel13578	= { FOLLOW_FOR_SYMBOL_in_channel13578_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHANNEL_SYMBOL_in_channel13580  */
static	ANTLR3_BITWORD FOLLOW_CHANNEL_SYMBOL_in_channel13580_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHANNEL_SYMBOL_in_channel13580	= { FOLLOW_CHANNEL_SYMBOL_in_channel13580_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_no_linebreak_in_channel13582  */
static	ANTLR3_BITWORD FOLLOW_text_string_no_linebreak_in_channel13582_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_no_linebreak_in_channel13582	= { FOLLOW_text_string_no_linebreak_in_channel13582_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_in_compound_statement13594  */
static	ANTLR3_BITWORD FOLLOW_label_in_compound_statement13594_bits[]	= { 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(0x0000000000080000), ANTLR3_UINT64_LIT(0x0000000080000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_label_in_compound_statement13594	= { FOLLOW_label_in_compound_statement13594_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_begin_end_block_in_compound_statement13606  */
static	ANTLR3_BITWORD FOLLOW_begin_end_block_in_compound_statement13606_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_begin_end_block_in_compound_statement13606	= { FOLLOW_begin_end_block_in_compound_statement13606_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_loop_block_in_compound_statement13613  */
static	ANTLR3_BITWORD FOLLOW_loop_block_in_compound_statement13613_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_loop_block_in_compound_statement13613	= { FOLLOW_loop_block_in_compound_statement13613_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_repeat_until_block_in_compound_statement13620  */
static	ANTLR3_BITWORD FOLLOW_repeat_until_block_in_compound_statement13620_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_repeat_until_block_in_compound_statement13620	= { FOLLOW_repeat_until_block_in_compound_statement13620_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_while_do_block_in_compound_statement13627  */
static	ANTLR3_BITWORD FOLLOW_while_do_block_in_compound_statement13627_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_while_do_block_in_compound_statement13627	= { FOLLOW_while_do_block_in_compound_statement13627_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_case_statement_in_compound_statement13636  */
static	ANTLR3_BITWORD FOLLOW_case_statement_in_compound_statement13636_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_case_statement_in_compound_statement13636	= { FOLLOW_case_statement_in_compound_statement13636_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_statement_in_compound_statement13641  */
static	ANTLR3_BITWORD FOLLOW_if_statement_in_compound_statement13641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_statement_in_compound_statement13641	= { FOLLOW_if_statement_in_compound_statement13641_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_iterate_statement_in_compound_statement13646  */
static	ANTLR3_BITWORD FOLLOW_iterate_statement_in_compound_statement13646_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_iterate_statement_in_compound_statement13646	= { FOLLOW_iterate_statement_in_compound_statement13646_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_leave_statement_in_compound_statement13651  */
static	ANTLR3_BITWORD FOLLOW_leave_statement_in_compound_statement13651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_leave_statement_in_compound_statement13651	= { FOLLOW_leave_statement_in_compound_statement13651_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_return_statement_in_compound_statement13656  */
static	ANTLR3_BITWORD FOLLOW_return_statement_in_compound_statement13656_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_return_statement_in_compound_statement13656	= { FOLLOW_return_statement_in_compound_statement13656_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_open_in_compound_statement13663  */
static	ANTLR3_BITWORD FOLLOW_cursor_open_in_compound_statement13663_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_open_in_compound_statement13663	= { FOLLOW_cursor_open_in_compound_statement13663_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_fetch_in_compound_statement13668  */
static	ANTLR3_BITWORD FOLLOW_cursor_fetch_in_compound_statement13668_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_fetch_in_compound_statement13668	= { FOLLOW_cursor_fetch_in_compound_statement13668_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_close_in_compound_statement13673  */
static	ANTLR3_BITWORD FOLLOW_cursor_close_in_compound_statement13673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_close_in_compound_statement13673	= { FOLLOW_cursor_close_in_compound_statement13673_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_in_compound_statement13680  */
static	ANTLR3_BITWORD FOLLOW_statement_in_compound_statement13680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_in_compound_statement13680	= { FOLLOW_statement_in_compound_statement13680_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_get_diagnostics_in_compound_statement13687  */
static	ANTLR3_BITWORD FOLLOW_get_diagnostics_in_compound_statement13687_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_get_diagnostics_in_compound_statement13687	= { FOLLOW_get_diagnostics_in_compound_statement13687_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_statement_in_compound_statement13694  */
static	ANTLR3_BITWORD FOLLOW_signal_statement_in_compound_statement13694_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_statement_in_compound_statement13694	= { FOLLOW_signal_statement_in_compound_statement13694_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_resignal_statement_in_compound_statement13701  */
static	ANTLR3_BITWORD FOLLOW_resignal_statement_in_compound_statement13701_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_resignal_statement_in_compound_statement13701	= { FOLLOW_resignal_statement_in_compound_statement13701_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_compound_statement_list13711  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_compound_statement_list13711_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_compound_statement_in_compound_statement_list13711	= { FOLLOW_compound_statement_in_compound_statement_list13711_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13713  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13713_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B582), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13713	= { FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13713_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_label13726  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_label13726_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000004000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_label13726	= { FOLLOW_label_identifier_in_label13726_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLON_SYMBOL_in_label13728  */
static	ANTLR3_BITWORD FOLLOW_COLON_SYMBOL_in_label13728_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLON_SYMBOL_in_label13728	= { FOLLOW_COLON_SYMBOL_in_label13728_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_label_identifier13747  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_label_identifier13747_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_label_identifier13747	= { FOLLOW_pure_identifier_in_label_identifier13747_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_sp_in_label_identifier13751  */
static	ANTLR3_BITWORD FOLLOW_keyword_sp_in_label_identifier13751_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_sp_in_label_identifier13751	= { FOLLOW_keyword_sp_in_label_identifier13751_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BEGIN_SYMBOL_in_begin_end_block13761  */
static	ANTLR3_BITWORD FOLLOW_BEGIN_SYMBOL_in_begin_end_block13761_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F48963EB580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0071000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_BEGIN_SYMBOL_in_begin_end_block13761	= { FOLLOW_BEGIN_SYMBOL_in_begin_end_block13761_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_declarations_in_begin_end_block13764  */
static	ANTLR3_BITWORD FOLLOW_declarations_in_begin_end_block13764_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F48963EB580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_declarations_in_begin_end_block13764	= { FOLLOW_declarations_in_begin_end_block13764_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_begin_end_block13766  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_begin_end_block13766_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_begin_end_block13766	= { FOLLOW_compound_statement_list_in_begin_end_block13766_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_begin_end_block13769  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_begin_end_block13769_bits[]	= { ANTLR3_UINT64_LIT(0xF800000000000002), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFDFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_END_SYMBOL_in_begin_end_block13769	= { FOLLOW_END_SYMBOL_in_begin_end_block13769_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_begin_end_block13771  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_begin_end_block13771_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_begin_end_block13771	= { FOLLOW_label_identifier_in_begin_end_block13771_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOOP_SYMBOL_in_loop_block13781  */
static	ANTLR3_BITWORD FOLLOW_LOOP_SYMBOL_in_loop_block13781_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_LOOP_SYMBOL_in_loop_block13781	= { FOLLOW_LOOP_SYMBOL_in_loop_block13781_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_loop_block13784  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_loop_block13784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_loop_block13784	= { FOLLOW_compound_statement_list_in_loop_block13784_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_loop_block13786  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_loop_block13786_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_END_SYMBOL_in_loop_block13786	= { FOLLOW_END_SYMBOL_in_loop_block13786_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOOP_SYMBOL_in_loop_block13788  */
static	ANTLR3_BITWORD FOLLOW_LOOP_SYMBOL_in_loop_block13788_bits[]	= { ANTLR3_UINT64_LIT(0xF800000000000002), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFDFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_LOOP_SYMBOL_in_loop_block13788	= { FOLLOW_LOOP_SYMBOL_in_loop_block13788_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_loop_block13790  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_loop_block13790_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_loop_block13790	= { FOLLOW_label_identifier_in_loop_block13790_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13800  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13800_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13800	= { FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13800_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_repeat_until_block13803  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_repeat_until_block13803_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_compound_statement_list_in_repeat_until_block13803	= { FOLLOW_compound_statement_list_in_repeat_until_block13803_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13805  */
static	ANTLR3_BITWORD FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13805_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13805	= { FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13805_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_repeat_until_block13807  */
static	ANTLR3_BITWORD FOLLOW_expression_in_repeat_until_block13807_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_repeat_until_block13807	= { FOLLOW_expression_in_repeat_until_block13807_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_repeat_until_block13809  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_repeat_until_block13809_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_END_SYMBOL_in_repeat_until_block13809	= { FOLLOW_END_SYMBOL_in_repeat_until_block13809_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13811  */
static	ANTLR3_BITWORD FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13811_bits[]	= { ANTLR3_UINT64_LIT(0xF800000000000002), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFDFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13811	= { FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13811_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_repeat_until_block13813  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_repeat_until_block13813_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_repeat_until_block13813	= { FOLLOW_label_identifier_in_repeat_until_block13813_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHILE_SYMBOL_in_while_do_block13823  */
static	ANTLR3_BITWORD FOLLOW_WHILE_SYMBOL_in_while_do_block13823_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_WHILE_SYMBOL_in_while_do_block13823	= { FOLLOW_WHILE_SYMBOL_in_while_do_block13823_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_while_do_block13826  */
static	ANTLR3_BITWORD FOLLOW_expression_in_while_do_block13826_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_while_do_block13826	= { FOLLOW_expression_in_while_do_block13826_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DO_SYMBOL_in_while_do_block13828  */
static	ANTLR3_BITWORD FOLLOW_DO_SYMBOL_in_while_do_block13828_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_DO_SYMBOL_in_while_do_block13828	= { FOLLOW_DO_SYMBOL_in_while_do_block13828_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_while_do_block13830  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_while_do_block13830_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_while_do_block13830	= { FOLLOW_compound_statement_list_in_while_do_block13830_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_while_do_block13832  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_while_do_block13832_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_END_SYMBOL_in_while_do_block13832	= { FOLLOW_END_SYMBOL_in_while_do_block13832_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WHILE_SYMBOL_in_while_do_block13834  */
static	ANTLR3_BITWORD FOLLOW_WHILE_SYMBOL_in_while_do_block13834_bits[]	= { ANTLR3_UINT64_LIT(0xF800000000000002), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFDFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_WHILE_SYMBOL_in_while_do_block13834	= { FOLLOW_WHILE_SYMBOL_in_while_do_block13834_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_while_do_block13836  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_while_do_block13836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_while_do_block13836	= { FOLLOW_label_identifier_in_while_do_block13836_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECLARE_SYMBOL_in_declarations13861  */
static	ANTLR3_BITWORD FOLLOW_DECLARE_SYMBOL_in_declarations13861_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECLARE_SYMBOL_in_declarations13861	= { FOLLOW_DECLARE_SYMBOL_in_declarations13861_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_declarations13863  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_declarations13863_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0003000000003400), ANTLR3_UINT64_LIT(0x0004100003400001), ANTLR3_UINT64_LIT(0x800100C380000000), ANTLR3_UINT64_LIT(0x0001000000000001), ANTLR3_UINT64_LIT(0x0100000091000000), ANTLR3_UINT64_LIT(0x0000900200401800), ANTLR3_UINT64_LIT(0x0200000040000800), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x040000001C04C000), ANTLR3_UINT64_LIT(0x0200000004000000), ANTLR3_UINT64_LIT(0x0003800000000008), ANTLR3_UINT64_LIT(0x0000000000005000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_declarations13863	= { FOLLOW_identifier_in_declarations13863_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_declaration_in_declarations13866  */
static	ANTLR3_BITWORD FOLLOW_variable_declaration_in_declarations13866_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_declaration_in_declarations13866	= { FOLLOW_variable_declaration_in_declarations13866_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_declaration_in_declarations13870  */
static	ANTLR3_BITWORD FOLLOW_condition_declaration_in_declarations13870_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_declaration_in_declarations13870	= { FOLLOW_condition_declaration_in_declarations13870_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_cursor_declaration_in_declarations13877  */
static	ANTLR3_BITWORD FOLLOW_cursor_declaration_in_declarations13877_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_cursor_declaration_in_declarations13877	= { FOLLOW_cursor_declaration_in_declarations13877_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_declaration_in_declarations13880  */
static	ANTLR3_BITWORD FOLLOW_handler_declaration_in_declarations13880_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_declaration_in_declarations13880	= { FOLLOW_handler_declaration_in_declarations13880_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_variable_declaration13891  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_variable_declaration13891_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_variable_declaration13891	= { FOLLOW_COMMA_SYMBOL_in_variable_declaration13891_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_variable_declaration13893  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_variable_declaration13893_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0003000000003400), ANTLR3_UINT64_LIT(0x0004100003400001), ANTLR3_UINT64_LIT(0x800100C380000000), ANTLR3_UINT64_LIT(0x0001000000000001), ANTLR3_UINT64_LIT(0x0100000091000000), ANTLR3_UINT64_LIT(0x0000100200401800), ANTLR3_UINT64_LIT(0x0200000040000800), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x040000001C04C000), ANTLR3_UINT64_LIT(0x0200000004000000), ANTLR3_UINT64_LIT(0x0003800000000008), ANTLR3_UINT64_LIT(0x0000000000005000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_variable_declaration13893	= { FOLLOW_identifier_in_variable_declaration13893_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_variable_declaration13897  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_variable_declaration13897_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0004000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_variable_declaration13897	= { FOLLOW_data_type_in_variable_declaration13897_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_variable_declaration13900  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_variable_declaration13900_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_variable_declaration13900	= { FOLLOW_DEFAULT_SYMBOL_in_variable_declaration13900_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_variable_declaration13902  */
static	ANTLR3_BITWORD FOLLOW_expression_in_variable_declaration13902_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_variable_declaration13902	= { FOLLOW_expression_in_variable_declaration13902_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration13906  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration13906_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration13906	= { FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration13906_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONDITION_SYMBOL_in_condition_declaration13915  */
static	ANTLR3_BITWORD FOLLOW_CONDITION_SYMBOL_in_condition_declaration13915_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CONDITION_SYMBOL_in_condition_declaration13915	= { FOLLOW_CONDITION_SYMBOL_in_condition_declaration13915_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_condition_declaration13917  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_condition_declaration13917_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_condition_declaration13917	= { FOLLOW_FOR_SYMBOL_in_condition_declaration13917_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sp_condition_in_condition_declaration13919  */
static	ANTLR3_BITWORD FOLLOW_sp_condition_in_condition_declaration13919_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_sp_condition_in_condition_declaration13919	= { FOLLOW_sp_condition_in_condition_declaration13919_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration13921  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration13921_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration13921	= { FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration13921_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_sp_condition13930  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_sp_condition13930_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_sp_condition13930	= { FOLLOW_ulong_number_in_sp_condition13930_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sqlstate_in_sp_condition13935  */
static	ANTLR3_BITWORD FOLLOW_sqlstate_in_sp_condition13935_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_sqlstate_in_sp_condition13935	= { FOLLOW_sqlstate_in_sp_condition13935_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLSTATE_SYMBOL_in_sqlstate13944  */
static	ANTLR3_BITWORD FOLLOW_SQLSTATE_SYMBOL_in_sqlstate13944_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLSTATE_SYMBOL_in_sqlstate13944	= { FOLLOW_SQLSTATE_SYMBOL_in_sqlstate13944_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_sqlstate13946  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_sqlstate13946_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_sqlstate13946	= { FOLLOW_VALUE_SYMBOL_in_sqlstate13946_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_sqlstate13949  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_sqlstate13949_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_sqlstate13949	= { FOLLOW_string_literal_in_sqlstate13949_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECLARE_SYMBOL_in_cursor_declaration13958  */
static	ANTLR3_BITWORD FOLLOW_DECLARE_SYMBOL_in_cursor_declaration13958_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECLARE_SYMBOL_in_cursor_declaration13958	= { FOLLOW_DECLARE_SYMBOL_in_cursor_declaration13958_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_declaration13960  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_declaration13960_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_in_cursor_declaration13960	= { FOLLOW_identifier_in_cursor_declaration13960_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURSOR_SYMBOL_in_cursor_declaration13962  */
static	ANTLR3_BITWORD FOLLOW_CURSOR_SYMBOL_in_cursor_declaration13962_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CURSOR_SYMBOL_in_cursor_declaration13962	= { FOLLOW_CURSOR_SYMBOL_in_cursor_declaration13962_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_cursor_declaration13964  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_cursor_declaration13964_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_cursor_declaration13964	= { FOLLOW_FOR_SYMBOL_in_cursor_declaration13964_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_statement_in_cursor_declaration13966  */
static	ANTLR3_BITWORD FOLLOW_select_statement_in_cursor_declaration13966_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_select_statement_in_cursor_declaration13966	= { FOLLOW_select_statement_in_cursor_declaration13966_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration13968  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration13968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration13968	= { FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration13968_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECLARE_SYMBOL_in_handler_declaration13977  */
static	ANTLR3_BITWORD FOLLOW_DECLARE_SYMBOL_in_handler_declaration13977_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DECLARE_SYMBOL_in_handler_declaration13977	= { FOLLOW_DECLARE_SYMBOL_in_handler_declaration13977_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_handler_declaration13979  */
static	ANTLR3_BITWORD FOLLOW_set_in_handler_declaration13979_bits[]	= { ANTLR3_UINT64_LIT(0x0000000002000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_handler_declaration13979	= { FOLLOW_set_in_handler_declaration13979_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HANDLER_SYMBOL_in_handler_declaration13991  */
static	ANTLR3_BITWORD FOLLOW_HANDLER_SYMBOL_in_handler_declaration13991_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_HANDLER_SYMBOL_in_handler_declaration13991	= { FOLLOW_HANDLER_SYMBOL_in_handler_declaration13991_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOR_SYMBOL_in_handler_declaration13995  */
static	ANTLR3_BITWORD FOLLOW_FOR_SYMBOL_in_handler_declaration13995_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0100000020000200), ANTLR3_UINT64_LIT(0x0000002000021000), ANTLR3_UINT64_LIT(0x0008000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x08000000000001C0) };
static  ANTLR3_BITSET_LIST FOLLOW_FOR_SYMBOL_in_handler_declaration13995	= { FOLLOW_FOR_SYMBOL_in_handler_declaration13995_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_condition_in_handler_declaration13997  */
static	ANTLR3_BITWORD FOLLOW_handler_condition_in_handler_declaration13997_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020100494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_condition_in_handler_declaration13997	= { FOLLOW_handler_condition_in_handler_declaration13997_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_handler_declaration14000  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_handler_declaration14000_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0100000020000200), ANTLR3_UINT64_LIT(0x0000002000021000), ANTLR3_UINT64_LIT(0x0008000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x08000000000001C0) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_handler_declaration14000	= { FOLLOW_COMMA_SYMBOL_in_handler_declaration14000_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_handler_condition_in_handler_declaration14002  */
static	ANTLR3_BITWORD FOLLOW_handler_condition_in_handler_declaration14002_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020100494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_handler_condition_in_handler_declaration14002	= { FOLLOW_handler_condition_in_handler_declaration14002_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_in_handler_declaration14006  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_in_handler_declaration14006_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_compound_statement_in_handler_declaration14006	= { FOLLOW_compound_statement_in_handler_declaration14006_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration14008  */
static	ANTLR3_BITWORD FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration14008_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration14008	= { FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration14008_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sp_condition_in_handler_condition14017  */
static	ANTLR3_BITWORD FOLLOW_sp_condition_in_handler_condition14017_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_sp_condition_in_handler_condition14017	= { FOLLOW_sp_condition_in_handler_condition14017_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_handler_condition14022  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_handler_condition14022_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_handler_condition14022	= { FOLLOW_identifier_in_handler_condition14022_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14027  */
static	ANTLR3_BITWORD FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14027_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14027	= { FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14027_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_handler_condition14032  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_handler_condition14032_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_handler_condition14032	= { FOLLOW_NOT_SYMBOL_in_handler_condition14032_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FOUND_SYMBOL_in_handler_condition14034  */
static	ANTLR3_BITWORD FOLLOW_FOUND_SYMBOL_in_handler_condition14034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_FOUND_SYMBOL_in_handler_condition14034	= { FOLLOW_FOUND_SYMBOL_in_handler_condition14034_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14039  */
static	ANTLR3_BITWORD FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14039_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14039	= { FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14039_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_statement14049  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_statement14049_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000008048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_statement14049	= { FOLLOW_CASE_SYMBOL_in_case_statement14049_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_case_statement14052  */
static	ANTLR3_BITWORD FOLLOW_expression_in_case_statement14052_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_case_statement14052	= { FOLLOW_expression_in_case_statement14052_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_when_expression_in_case_statement14056  */
static	ANTLR3_BITWORD FOLLOW_when_expression_in_case_statement14056_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_when_expression_in_case_statement14056	= { FOLLOW_when_expression_in_case_statement14056_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_statement_in_case_statement14058  */
static	ANTLR3_BITWORD FOLLOW_then_statement_in_case_statement14058_bits[]	= { 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(0x0000000800000000), 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_then_statement_in_case_statement14058	= { FOLLOW_then_statement_in_case_statement14058_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_else_statement_in_case_statement14062  */
static	ANTLR3_BITWORD FOLLOW_else_statement_in_case_statement14062_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_else_statement_in_case_statement14062	= { FOLLOW_else_statement_in_case_statement14062_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_case_statement14065  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_case_statement14065_bits[]	= { ANTLR3_UINT64_LIT(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_END_SYMBOL_in_case_statement14065	= { FOLLOW_END_SYMBOL_in_case_statement14065_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASE_SYMBOL_in_case_statement14067  */
static	ANTLR3_BITWORD FOLLOW_CASE_SYMBOL_in_case_statement14067_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CASE_SYMBOL_in_case_statement14067	= { FOLLOW_CASE_SYMBOL_in_case_statement14067_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THEN_SYMBOL_in_then_statement14076  */
static	ANTLR3_BITWORD FOLLOW_THEN_SYMBOL_in_then_statement14076_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_THEN_SYMBOL_in_then_statement14076	= { FOLLOW_THEN_SYMBOL_in_then_statement14076_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_then_statement14079  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_then_statement14079_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_then_statement14079	= { FOLLOW_compound_statement_list_in_then_statement14079_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_else_statement14088  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_else_statement14088_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_else_statement14088	= { FOLLOW_ELSE_SYMBOL_in_else_statement14088_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_else_statement14091  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_else_statement14091_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_else_statement14091	= { FOLLOW_compound_statement_list_in_else_statement14091_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_statement14100  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_statement14100_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_if_statement14100	= { FOLLOW_IF_SYMBOL_in_if_statement14100_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_body_in_if_statement14103  */
static	ANTLR3_BITWORD FOLLOW_if_body_in_if_statement14103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000080000) };
static  ANTLR3_BITSET_LIST FOLLOW_if_body_in_if_statement14103	= { FOLLOW_if_body_in_if_statement14103_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_END_SYMBOL_in_if_statement14105  */
static	ANTLR3_BITWORD FOLLOW_END_SYMBOL_in_if_statement14105_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_END_SYMBOL_in_if_statement14105	= { FOLLOW_END_SYMBOL_in_if_statement14105_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_statement14107  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_statement14107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_if_statement14107	= { FOLLOW_IF_SYMBOL_in_if_statement14107_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_if_body14116  */
static	ANTLR3_BITWORD FOLLOW_expression_in_if_body14116_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_expression_in_if_body14116	= { FOLLOW_expression_in_if_body14116_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_then_statement_in_if_body14118  */
static	ANTLR3_BITWORD FOLLOW_then_statement_in_if_body14118_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(0x0000000C00000000) };
static  ANTLR3_BITSET_LIST FOLLOW_then_statement_in_if_body14118	= { FOLLOW_then_statement_in_if_body14118_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSEIF_SYMBOL_in_if_body14121  */
static	ANTLR3_BITWORD FOLLOW_ELSEIF_SYMBOL_in_if_body14121_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSEIF_SYMBOL_in_if_body14121	= { FOLLOW_ELSEIF_SYMBOL_in_if_body14121_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_if_body_in_if_body14123  */
static	ANTLR3_BITWORD FOLLOW_if_body_in_if_body14123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_if_body_in_if_body14123	= { FOLLOW_if_body_in_if_body14123_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ELSE_SYMBOL_in_if_body14127  */
static	ANTLR3_BITWORD FOLLOW_ELSE_SYMBOL_in_if_body14127_bits[]	= { ANTLR3_UINT64_LIT(0xFCB81F489636B580), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x11FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0020000494000100), ANTLR3_UINT64_LIT(0x00100000A0070000), ANTLR3_UINT64_LIT(0x0120200010060030), ANTLR3_UINT64_LIT(0x0000000000080088), ANTLR3_UINT64_LIT(0x62020035E0200005), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000000002000002A) };
static  ANTLR3_BITSET_LIST FOLLOW_ELSE_SYMBOL_in_if_body14127	= { FOLLOW_ELSE_SYMBOL_in_if_body14127_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_compound_statement_list_in_if_body14129  */
static	ANTLR3_BITWORD FOLLOW_compound_statement_list_in_if_body14129_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_compound_statement_list_in_if_body14129	= { FOLLOW_compound_statement_list_in_if_body14129_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ITERATE_SYMBOL_in_iterate_statement14140  */
static	ANTLR3_BITWORD FOLLOW_ITERATE_SYMBOL_in_iterate_statement14140_bits[]	= { ANTLR3_UINT64_LIT(0xF800000000000000), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFDFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_ITERATE_SYMBOL_in_iterate_statement14140	= { FOLLOW_ITERATE_SYMBOL_in_iterate_statement14140_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_iterate_statement14142  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_iterate_statement14142_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_iterate_statement14142	= { FOLLOW_label_identifier_in_iterate_statement14142_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LEAVE_SYMBOL_in_leave_statement14151  */
static	ANTLR3_BITWORD FOLLOW_LEAVE_SYMBOL_in_leave_statement14151_bits[]	= { ANTLR3_UINT64_LIT(0xF800000000000000), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFDFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_LEAVE_SYMBOL_in_leave_statement14151	= { FOLLOW_LEAVE_SYMBOL_in_leave_statement14151_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_label_identifier_in_leave_statement14153  */
static	ANTLR3_BITWORD FOLLOW_label_identifier_in_leave_statement14153_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_label_identifier_in_leave_statement14153	= { FOLLOW_label_identifier_in_leave_statement14153_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURN_SYMBOL_in_return_statement14162  */
static	ANTLR3_BITWORD FOLLOW_RETURN_SYMBOL_in_return_statement14162_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURN_SYMBOL_in_return_statement14162	= { FOLLOW_RETURN_SYMBOL_in_return_statement14162_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_return_statement14164  */
static	ANTLR3_BITWORD FOLLOW_expression_in_return_statement14164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_return_statement14164	= { FOLLOW_expression_in_return_statement14164_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GET_SYMBOL_in_get_diagnostics14173  */
static	ANTLR3_BITWORD FOLLOW_GET_SYMBOL_in_get_diagnostics14173_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_GET_SYMBOL_in_get_diagnostics14173	= { FOLLOW_GET_SYMBOL_in_get_diagnostics14173_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14180  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14180_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14180	= { FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14180_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STACKED_SYMBOL_in_get_diagnostics14188  */
static	ANTLR3_BITWORD FOLLOW_STACKED_SYMBOL_in_get_diagnostics14188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0080000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_STACKED_SYMBOL_in_get_diagnostics14188	= { FOLLOW_STACKED_SYMBOL_in_get_diagnostics14188_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14194  */
static	ANTLR3_BITWORD FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14194_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000800000000170), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14194	= { FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14194_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_information_item_in_get_diagnostics14201  */
static	ANTLR3_BITWORD FOLLOW_statement_information_item_in_get_diagnostics14201_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_information_item_in_get_diagnostics14201	= { FOLLOW_statement_information_item_in_get_diagnostics14201_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_get_diagnostics14204  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_get_diagnostics14204_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000170), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_get_diagnostics14204	= { FOLLOW_COMMA_SYMBOL_in_get_diagnostics14204_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_statement_information_item_in_get_diagnostics14206  */
static	ANTLR3_BITWORD FOLLOW_statement_information_item_in_get_diagnostics14206_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_statement_information_item_in_get_diagnostics14206	= { FOLLOW_statement_information_item_in_get_diagnostics14206_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14214  */
static	ANTLR3_BITWORD FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14214_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000002170), ANTLR3_UINT64_LIT(0x0108000020000200), ANTLR3_UINT64_LIT(0x0000002000021000), ANTLR3_UINT64_LIT(0x0140100000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2900000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14214	= { FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14214_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_allowed_expression_in_get_diagnostics14216  */
static	ANTLR3_BITWORD FOLLOW_signal_allowed_expression_in_get_diagnostics14216_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000170), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_allowed_expression_in_get_diagnostics14216	= { FOLLOW_signal_allowed_expression_in_get_diagnostics14216_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_information_item_in_get_diagnostics14218  */
static	ANTLR3_BITWORD FOLLOW_condition_information_item_in_get_diagnostics14218_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_information_item_in_get_diagnostics14218	= { FOLLOW_condition_information_item_in_get_diagnostics14218_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_get_diagnostics14221  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_get_diagnostics14221_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000170), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_get_diagnostics14221	= { FOLLOW_COMMA_SYMBOL_in_get_diagnostics14221_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_condition_information_item_in_get_diagnostics14223  */
static	ANTLR3_BITWORD FOLLOW_condition_information_item_in_get_diagnostics14223_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_condition_information_item_in_get_diagnostics14223	= { FOLLOW_condition_information_item_in_get_diagnostics14223_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_signal_allowed_expression14238  */
static	ANTLR3_BITWORD FOLLOW_literal_in_signal_allowed_expression14238_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_signal_allowed_expression14238	= { FOLLOW_literal_in_signal_allowed_expression14238_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_signal_allowed_expression14243  */
static	ANTLR3_BITWORD FOLLOW_variable_in_signal_allowed_expression14243_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_variable_in_signal_allowed_expression14243	= { FOLLOW_variable_in_signal_allowed_expression14243_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_signal_allowed_expression14248  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_signal_allowed_expression14248_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_signal_allowed_expression14248	= { FOLLOW_qualified_identifier_in_signal_allowed_expression14248_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_statement_information_item14258  */
static	ANTLR3_BITWORD FOLLOW_variable_in_statement_information_item14258_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_variable_in_statement_information_item14258	= { FOLLOW_variable_in_statement_information_item14258_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_statement_information_item14262  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_statement_information_item14262_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_statement_information_item14262	= { FOLLOW_identifier_in_statement_information_item14262_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_statement_information_item14265  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_statement_information_item14265_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000800000000000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_statement_information_item14265	= { FOLLOW_EQUAL_OPERATOR_in_statement_information_item14265_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_statement_information_item14267  */
static	ANTLR3_BITWORD FOLLOW_set_in_statement_information_item14267_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_statement_information_item14267	= { FOLLOW_set_in_statement_information_item14267_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_variable_in_condition_information_item14283  */
static	ANTLR3_BITWORD FOLLOW_variable_in_condition_information_item14283_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_variable_in_condition_information_item14283	= { FOLLOW_variable_in_condition_information_item14283_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_condition_information_item14287  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_condition_information_item14287_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_condition_information_item14287	= { FOLLOW_identifier_in_condition_information_item14287_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_condition_information_item14290  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_condition_information_item14290_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000020E004410000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800800000), ANTLR3_UINT64_LIT(0x0000400800000000), ANTLR3_UINT64_LIT(0x0000000000040200) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_condition_information_item14290	= { FOLLOW_EQUAL_OPERATOR_in_condition_information_item14290_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_name_in_condition_information_item14293  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_name_in_condition_information_item14293_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_name_in_condition_information_item14293	= { FOLLOW_signal_information_item_name_in_condition_information_item14293_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14297  */
static	ANTLR3_BITWORD FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14297_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14297	= { FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14297_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SIGNAL_SYMBOL_in_signal_statement14371  */
static	ANTLR3_BITWORD FOLLOW_SIGNAL_SYMBOL_in_signal_statement14371_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_SIGNAL_SYMBOL_in_signal_statement14371	= { FOLLOW_SIGNAL_SYMBOL_in_signal_statement14371_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_signal_statement14374  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_signal_statement14374_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(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_signal_statement14374	= { FOLLOW_identifier_in_signal_statement14374_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_sqlstate_in_signal_statement14378  */
static	ANTLR3_BITWORD FOLLOW_sqlstate_in_signal_statement14378_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(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_sqlstate_in_signal_statement14378	= { FOLLOW_sqlstate_in_signal_statement14378_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_signal_statement14382  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_signal_statement14382_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000020E004410000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800800000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000040200) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_signal_statement14382	= { FOLLOW_SET_SYMBOL_in_signal_statement14382_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_signal_statement14384  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_signal_statement14384_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_signal_statement14384	= { FOLLOW_signal_information_item_in_signal_statement14384_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_signal_statement14387  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_signal_statement14387_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000020E004410000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800800000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000040200) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_signal_statement14387	= { FOLLOW_COMMA_SYMBOL_in_signal_statement14387_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_signal_statement14389  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_signal_statement14389_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_signal_statement14389	= { FOLLOW_signal_information_item_in_signal_statement14389_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14402  */
static	ANTLR3_BITWORD FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14402_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(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000080) };
static  ANTLR3_BITSET_LIST FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14402	= { FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14402_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14405  */
static	ANTLR3_BITWORD FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14405_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14405	= { FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14405_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_resignal_statement14407  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_resignal_statement14407_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_resignal_statement14407	= { FOLLOW_VALUE_SYMBOL_in_resignal_statement14407_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_resignal_statement14410  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_resignal_statement14410_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(0x0200000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_resignal_statement14410	= { FOLLOW_text_or_identifier_in_resignal_statement14410_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_resignal_statement14417  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_resignal_statement14417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000020E004410000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800800000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000040200) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_resignal_statement14417	= { FOLLOW_SET_SYMBOL_in_resignal_statement14417_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_resignal_statement14419  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_resignal_statement14419_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_resignal_statement14419	= { FOLLOW_signal_information_item_in_resignal_statement14419_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_resignal_statement14422  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_resignal_statement14422_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x000020E004410000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000800800000), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0000000000040200) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_resignal_statement14422	= { FOLLOW_COMMA_SYMBOL_in_resignal_statement14422_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_in_resignal_statement14424  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_in_resignal_statement14424_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_information_item_in_resignal_statement14424	= { FOLLOW_signal_information_item_in_resignal_statement14424_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_information_item_name_in_signal_information_item14437  */
static	ANTLR3_BITWORD FOLLOW_signal_information_item_name_in_signal_information_item14437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_signal_information_item_name_in_signal_information_item14437	= { FOLLOW_signal_information_item_name_in_signal_information_item14437_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_signal_information_item14439  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_signal_information_item14439_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000002170), ANTLR3_UINT64_LIT(0x0108000020000200), ANTLR3_UINT64_LIT(0x0000002000021000), ANTLR3_UINT64_LIT(0x0140100000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2900000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_signal_information_item14439	= { FOLLOW_EQUAL_OPERATOR_in_signal_information_item14439_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signal_allowed_expression_in_signal_information_item14441  */
static	ANTLR3_BITWORD FOLLOW_signal_allowed_expression_in_signal_information_item14441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signal_allowed_expression_in_signal_information_item14441	= { FOLLOW_signal_allowed_expression_in_signal_information_item14441_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_SYMBOL_in_cursor_close14450  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_SYMBOL_in_cursor_close14450_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_SYMBOL_in_cursor_close14450	= { FOLLOW_CLOSE_SYMBOL_in_cursor_close14450_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_close14452  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_close14452_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_close14452	= { FOLLOW_identifier_in_cursor_close14452_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FETCH_SYMBOL_in_cursor_fetch14461  */
static	ANTLR3_BITWORD FOLLOW_FETCH_SYMBOL_in_cursor_fetch14461_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_FETCH_SYMBOL_in_cursor_fetch14461	= { FOLLOW_FETCH_SYMBOL_in_cursor_fetch14461_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_fetch14463  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_fetch14463_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_cursor_fetch14463	= { FOLLOW_identifier_in_cursor_fetch14463_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INTO_SYMBOL_in_cursor_fetch14465  */
static	ANTLR3_BITWORD FOLLOW_INTO_SYMBOL_in_cursor_fetch14465_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_INTO_SYMBOL_in_cursor_fetch14465	= { FOLLOW_INTO_SYMBOL_in_cursor_fetch14465_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_cursor_fetch14467  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_cursor_fetch14467_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_in_cursor_fetch14467	= { FOLLOW_identifier_list_in_cursor_fetch14467_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_SYMBOL_in_cursor_open14476  */
static	ANTLR3_BITWORD FOLLOW_OPEN_SYMBOL_in_cursor_open14476_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_SYMBOL_in_cursor_open14476	= { FOLLOW_OPEN_SYMBOL_in_cursor_open14476_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_cursor_open14478  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_cursor_open14478_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_cursor_open14478	= { FOLLOW_identifier_in_cursor_open14478_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SYMBOL_in_schedule14490  */
static	ANTLR3_BITWORD FOLLOW_AT_SYMBOL_in_schedule14490_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SYMBOL_in_schedule14490	= { FOLLOW_AT_SYMBOL_in_schedule14490_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule14492  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule14492_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule14492	= { FOLLOW_expression_in_schedule14492_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EVERY_SYMBOL_in_schedule14497  */
static	ANTLR3_BITWORD FOLLOW_EVERY_SYMBOL_in_schedule14497_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_EVERY_SYMBOL_in_schedule14497	= { FOLLOW_EVERY_SYMBOL_in_schedule14497_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_interval_in_schedule14499  */
static	ANTLR3_BITWORD FOLLOW_interval_in_schedule14499_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_interval_in_schedule14499	= { FOLLOW_interval_in_schedule14499_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STARTS_SYMBOL_in_schedule14502  */
static	ANTLR3_BITWORD FOLLOW_STARTS_SYMBOL_in_schedule14502_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_STARTS_SYMBOL_in_schedule14502	= { FOLLOW_STARTS_SYMBOL_in_schedule14502_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule14504  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule14504_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule14504	= { FOLLOW_expression_in_schedule14504_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENDS_SYMBOL_in_schedule14509  */
static	ANTLR3_BITWORD FOLLOW_ENDS_SYMBOL_in_schedule14509_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_ENDS_SYMBOL_in_schedule14509	= { FOLLOW_ENDS_SYMBOL_in_schedule14509_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_schedule14511  */
static	ANTLR3_BITWORD FOLLOW_expression_in_schedule14511_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_schedule14511	= { FOLLOW_expression_in_schedule14511_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_database_option14522  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_database_option14522_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_database_option14522	= { FOLLOW_DEFAULT_SYMBOL_in_database_option14522_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_database_option14532  */
static	ANTLR3_BITWORD FOLLOW_charset_in_database_option14532_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000008020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_database_option14532	= { FOLLOW_charset_in_database_option14532_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_database_option14534  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_database_option14534_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_database_option14534	= { FOLLOW_EQUAL_OPERATOR_in_database_option14534_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_database_option14537  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_database_option14537_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_database_option14537	= { FOLLOW_charset_name_or_default_in_database_option14537_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_database_option14544  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_database_option14544_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_database_option14544	= { FOLLOW_COLLATE_SYMBOL_in_database_option14544_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_database_option14546  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_database_option14546_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_database_option14546	= { FOLLOW_EQUAL_OPERATOR_in_database_option14546_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_database_option14549  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_database_option14549_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_database_option14549	= { FOLLOW_collation_name_or_default_in_database_option14549_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_spec_in_column_definition14562  */
static	ANTLR3_BITWORD FOLLOW_field_spec_in_column_definition14562_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(0x0000000400000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_spec_in_column_definition14562	= { FOLLOW_field_spec_in_column_definition14562_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_definition_in_column_definition14565  */
static	ANTLR3_BITWORD FOLLOW_reference_definition_in_column_definition14565_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_definition_in_column_definition14565	= { FOLLOW_reference_definition_in_column_definition14565_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHECK_SYMBOL_in_column_definition14570  */
static	ANTLR3_BITWORD FOLLOW_CHECK_SYMBOL_in_column_definition14570_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_CHECK_SYMBOL_in_column_definition14570	= { FOLLOW_CHECK_SYMBOL_in_column_definition14570_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14572  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14572_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14572	= { FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14572_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_column_definition14574  */
static	ANTLR3_BITWORD FOLLOW_expression_in_column_definition14574_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_column_definition14574	= { FOLLOW_expression_in_column_definition14574_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14576  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14576_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14576	= { FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14576_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_spec14588  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_spec14588_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0003000000003400), ANTLR3_UINT64_LIT(0x0004100003400001), ANTLR3_UINT64_LIT(0x800100C380000000), ANTLR3_UINT64_LIT(0x0001000000000001), ANTLR3_UINT64_LIT(0x0100000091000000), ANTLR3_UINT64_LIT(0x0000000200401800), ANTLR3_UINT64_LIT(0x0200000040000800), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x040000001C04C000), ANTLR3_UINT64_LIT(0x0200000004000000), ANTLR3_UINT64_LIT(0x0003800000000008), ANTLR3_UINT64_LIT(0x0000000000005000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_spec14588	= { FOLLOW_column_ref_in_field_spec14588_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_def_in_field_spec14590  */
static	ANTLR3_BITWORD FOLLOW_field_def_in_field_spec14590_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_def_in_field_spec14590	= { FOLLOW_field_def_in_field_spec14590_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_field_def14599  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_field_def14599_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000008000020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000002000000008), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0010000000000008), ANTLR3_UINT64_LIT(0x4148000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_field_def14599	= { FOLLOW_data_type_in_field_def14599_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_def_tail_in_field_def14601  */
static	ANTLR3_BITWORD FOLLOW_field_def_tail_in_field_def14601_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_def_tail_in_field_def14601	= { FOLLOW_field_def_tail_in_field_def14601_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_attribute_in_field_def_tail14621  */
static	ANTLR3_BITWORD FOLLOW_attribute_in_field_def_tail14621_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000008000020), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), ANTLR3_UINT64_LIT(0x0000000000000080), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x4148000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_attribute_in_field_def_tail14621	= { FOLLOW_attribute_in_field_def_tail14621_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_field_def_tail14630  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_field_def_tail14630_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_field_def_tail14630	= { FOLLOW_COLLATE_SYMBOL_in_field_def_tail14630_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_in_field_def_tail14632  */
static	ANTLR3_BITWORD FOLLOW_collation_name_in_field_def_tail14632_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_in_field_def_tail14632	= { FOLLOW_collation_name_in_field_def_tail14632_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_GENERATED_SYMBOL_in_field_def_tail14637  */
static	ANTLR3_BITWORD FOLLOW_GENERATED_SYMBOL_in_field_def_tail14637_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000040) };
static  ANTLR3_BITSET_LIST FOLLOW_GENERATED_SYMBOL_in_field_def_tail14637	= { FOLLOW_GENERATED_SYMBOL_in_field_def_tail14637_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALWAYS_SYMBOL_in_field_def_tail14639  */
static	ANTLR3_BITWORD FOLLOW_ALWAYS_SYMBOL_in_field_def_tail14639_bits[]	= { ANTLR3_UINT64_LIT(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_ALWAYS_SYMBOL_in_field_def_tail14639	= { FOLLOW_ALWAYS_SYMBOL_in_field_def_tail14639_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_field_def_tail14643  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_field_def_tail14643_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_AS_SYMBOL_in_field_def_tail14643	= { FOLLOW_AS_SYMBOL_in_field_def_tail14643_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14647  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14647_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14647	= { FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14647_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_field_def_tail14649  */
static	ANTLR3_BITWORD FOLLOW_expression_in_field_def_tail14649_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_field_def_tail14649	= { FOLLOW_expression_in_field_def_tail14649_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14651  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14651_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0109000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000010000000), ANTLR3_UINT64_LIT(0x0000000004000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14651	= { FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14651_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_gcol_attribute_in_field_def_tail14662  */
static	ANTLR3_BITWORD FOLLOW_gcol_attribute_in_field_def_tail14662_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0109000000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_gcol_attribute_in_field_def_tail14662	= { FOLLOW_gcol_attribute_in_field_def_tail14662_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOT_SYMBOL_in_attribute14672  */
static	ANTLR3_BITWORD FOLLOW_NOT_SYMBOL_in_attribute14672_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0140000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NOT_SYMBOL_in_attribute14672	= { FOLLOW_NOT_SYMBOL_in_attribute14672_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_attribute14675  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_attribute14675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_attribute14675	= { FOLLOW_null_literal_in_attribute14675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_attribute14680  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_attribute14680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0002000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000090000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0108000020000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0150100080010000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x2900000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_attribute14680	= { FOLLOW_DEFAULT_SYMBOL_in_attribute14680_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_signed_literal_in_attribute14683  */
static	ANTLR3_BITWORD FOLLOW_signed_literal_in_attribute14683_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_signed_literal_in_attribute14683	= { FOLLOW_signed_literal_in_attribute14683_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOW_SYMBOL_in_attribute14687  */
static	ANTLR3_BITWORD FOLLOW_NOW_SYMBOL_in_attribute14687_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_NOW_SYMBOL_in_attribute14687	= { FOLLOW_NOW_SYMBOL_in_attribute14687_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_attribute14689  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_attribute14689_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_attribute14689	= { FOLLOW_time_function_parameters_in_attribute14689_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_attribute14696  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_attribute14696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ON_SYMBOL_in_attribute14696	= { FOLLOW_ON_SYMBOL_in_attribute14696_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_attribute14698  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_attribute14698_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_attribute14698	= { FOLLOW_UPDATE_SYMBOL_in_attribute14698_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NOW_SYMBOL_in_attribute14700  */
static	ANTLR3_BITWORD FOLLOW_NOW_SYMBOL_in_attribute14700_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_NOW_SYMBOL_in_attribute14700	= { FOLLOW_NOW_SYMBOL_in_attribute14700_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_time_function_parameters_in_attribute14702  */
static	ANTLR3_BITWORD FOLLOW_time_function_parameters_in_attribute14702_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_time_function_parameters_in_attribute14702	= { FOLLOW_time_function_parameters_in_attribute14702_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14708  */
static	ANTLR3_BITWORD FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14708_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14708	= { FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14708_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERIAL_SYMBOL_in_attribute14713  */
static	ANTLR3_BITWORD FOLLOW_SERIAL_SYMBOL_in_attribute14713_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_SERIAL_SYMBOL_in_attribute14713	= { FOLLOW_SERIAL_SYMBOL_in_attribute14713_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_attribute14715  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_attribute14715_bits[]	= { 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_DEFAULT_SYMBOL_in_attribute14715	= { FOLLOW_DEFAULT_SYMBOL_in_attribute14715_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUE_SYMBOL_in_attribute14717  */
static	ANTLR3_BITWORD FOLLOW_VALUE_SYMBOL_in_attribute14717_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VALUE_SYMBOL_in_attribute14717	= { FOLLOW_VALUE_SYMBOL_in_attribute14717_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_attribute14724  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_attribute14724_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_attribute14724	= { FOLLOW_UNIQUE_SYMBOL_in_attribute14724_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_attribute14729  */
static	ANTLR3_BITWORD FOLLOW_set_in_attribute14729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_attribute14729	= { FOLLOW_set_in_attribute14729_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_attribute14737  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_attribute14737_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_attribute14737	= { FOLLOW_KEY_SYMBOL_in_attribute14737_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_attribute14742  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_attribute14742_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_attribute14742	= { FOLLOW_KEY_SYMBOL_in_attribute14742_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_attribute14747  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_attribute14747_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_attribute14747	= { FOLLOW_COMMENT_SYMBOL_in_attribute14747_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_attribute14749  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_attribute14749_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_attribute14749	= { FOLLOW_string_literal_in_attribute14749_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_attribute14754  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_attribute14754_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_attribute14754	= { FOLLOW_COLLATE_SYMBOL_in_attribute14754_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_in_attribute14756  */
static	ANTLR3_BITWORD FOLLOW_collation_name_in_attribute14756_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_in_attribute14756	= { FOLLOW_collation_name_in_attribute14756_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14761  */
static	ANTLR3_BITWORD FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14761_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000000000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14761	= { FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14761_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_attribute14763  */
static	ANTLR3_BITWORD FOLLOW_set_in_attribute14763_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_attribute14763	= { FOLLOW_set_in_attribute14763_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_attribute14778  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_attribute14778_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_attribute14778	= { FOLLOW_STORAGE_SYMBOL_in_attribute14778_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_attribute14780  */
static	ANTLR3_BITWORD FOLLOW_set_in_attribute14780_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_attribute14780	= { FOLLOW_set_in_attribute14780_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14800  */
static	ANTLR3_BITWORD FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14800_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(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14800	= { FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14800_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_gcol_attribute14815  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_gcol_attribute14815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_gcol_attribute14815	= { FOLLOW_KEY_SYMBOL_in_gcol_attribute14815_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14823  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14823_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14823	= { FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14823_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_gcol_attribute14825  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_gcol_attribute14825_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_gcol_attribute14825	= { FOLLOW_text_string_in_gcol_attribute14825_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not_rule_in_gcol_attribute14830  */
static	ANTLR3_BITWORD FOLLOW_not_rule_in_gcol_attribute14830_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_not_rule_in_gcol_attribute14830	= { FOLLOW_not_rule_in_gcol_attribute14830_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NULL_SYMBOL_in_gcol_attribute14833  */
static	ANTLR3_BITWORD FOLLOW_NULL_SYMBOL_in_gcol_attribute14833_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NULL_SYMBOL_in_gcol_attribute14833	= { FOLLOW_NULL_SYMBOL_in_gcol_attribute14833_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14838  */
static	ANTLR3_BITWORD FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14838_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14838	= { FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14838_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_gcol_attribute14841  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_gcol_attribute14841_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_SYMBOL_in_gcol_attribute14841	= { FOLLOW_KEY_SYMBOL_in_gcol_attribute14841_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REFERENCES_SYMBOL_in_reference_definition14853  */
static	ANTLR3_BITWORD FOLLOW_REFERENCES_SYMBOL_in_reference_definition14853_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_REFERENCES_SYMBOL_in_reference_definition14853	= { FOLLOW_REFERENCES_SYMBOL_in_reference_definition14853_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_reference_definition14856  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_reference_definition14856_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(0x4000000000800000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_reference_definition14856	= { FOLLOW_table_ref_in_reference_definition14856_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_columns_in_reference_definition14858  */
static	ANTLR3_BITWORD FOLLOW_index_columns_in_reference_definition14858_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(0x4000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_columns_in_reference_definition14858	= { FOLLOW_index_columns_in_reference_definition14858_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MATCH_SYMBOL_in_reference_definition14870  */
static	ANTLR3_BITWORD FOLLOW_MATCH_SYMBOL_in_reference_definition14870_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0080000000000000), ANTLR3_UINT64_LIT(0x0008000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MATCH_SYMBOL_in_reference_definition14870	= { FOLLOW_MATCH_SYMBOL_in_reference_definition14870_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_reference_definition14872  */
static	ANTLR3_BITWORD FOLLOW_set_in_reference_definition14872_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(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_reference_definition14872	= { FOLLOW_set_in_reference_definition14872_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition14893  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition14893_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ON_SYMBOL_in_reference_definition14893	= { FOLLOW_ON_SYMBOL_in_reference_definition14893_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_reference_definition14895  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_reference_definition14895_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_reference_definition14895	= { FOLLOW_DELETE_SYMBOL_in_reference_definition14895_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition14897  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition14897_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(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition14897	= { FOLLOW_reference_option_in_reference_definition14897_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition14900  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition14900_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ON_SYMBOL_in_reference_definition14900	= { FOLLOW_ON_SYMBOL_in_reference_definition14900_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_reference_definition14902  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_reference_definition14902_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_reference_definition14902	= { FOLLOW_UPDATE_SYMBOL_in_reference_definition14902_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition14904  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition14904_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition14904	= { FOLLOW_reference_option_in_reference_definition14904_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition14913  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition14913_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ON_SYMBOL_in_reference_definition14913	= { FOLLOW_ON_SYMBOL_in_reference_definition14913_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UPDATE_SYMBOL_in_reference_definition14915  */
static	ANTLR3_BITWORD FOLLOW_UPDATE_SYMBOL_in_reference_definition14915_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_UPDATE_SYMBOL_in_reference_definition14915	= { FOLLOW_UPDATE_SYMBOL_in_reference_definition14915_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition14917  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition14917_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(0x4000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition14917	= { FOLLOW_reference_option_in_reference_definition14917_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ON_SYMBOL_in_reference_definition14920  */
static	ANTLR3_BITWORD FOLLOW_ON_SYMBOL_in_reference_definition14920_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ON_SYMBOL_in_reference_definition14920	= { FOLLOW_ON_SYMBOL_in_reference_definition14920_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELETE_SYMBOL_in_reference_definition14922  */
static	ANTLR3_BITWORD FOLLOW_DELETE_SYMBOL_in_reference_definition14922_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELETE_SYMBOL_in_reference_definition14922	= { FOLLOW_DELETE_SYMBOL_in_reference_definition14922_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_reference_option_in_reference_definition14924  */
static	ANTLR3_BITWORD FOLLOW_reference_option_in_reference_definition14924_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_reference_option_in_reference_definition14924	= { FOLLOW_reference_option_in_reference_definition14924_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14940  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14940_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14940	= { FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14940_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_column_in_index_columns14942  */
static	ANTLR3_BITWORD FOLLOW_index_column_in_index_columns14942_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_column_in_index_columns14942	= { FOLLOW_index_column_in_index_columns14942_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_index_columns14945  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_index_columns14945_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_index_columns14945	= { FOLLOW_COMMA_SYMBOL_in_index_columns14945_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_column_in_index_columns14947  */
static	ANTLR3_BITWORD FOLLOW_index_column_in_index_columns14947_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_index_column_in_index_columns14947	= { FOLLOW_index_column_in_index_columns14947_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14951  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14951_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14951	= { FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14951_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_column14960  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_column14960_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(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000040000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_column14960	= { FOLLOW_identifier_in_index_column14960_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_index_column14962  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_index_column14962_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(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000040000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_index_column14962	= { FOLLOW_field_length_in_index_column14962_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_direction_in_index_column14965  */
static	ANTLR3_BITWORD FOLLOW_direction_in_index_column14965_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_direction_in_index_column14965	= { FOLLOW_direction_in_index_column14965_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_index_type14975  */
static	ANTLR3_BITWORD FOLLOW_set_in_index_type14975_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_index_type14975	= { FOLLOW_set_in_index_type14975_bits, 5	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_index_type14983  */
static	ANTLR3_BITWORD FOLLOW_set_in_index_type14983_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_index_type14983	= { FOLLOW_set_in_index_type14983_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_index_type_in_normal_index_option15002  */
static	ANTLR3_BITWORD FOLLOW_index_type_in_normal_index_option15002_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_index_type_in_normal_index_option15002	= { FOLLOW_index_type_in_normal_index_option15002_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_key_option_in_normal_index_option15007  */
static	ANTLR3_BITWORD FOLLOW_all_key_option_in_normal_index_option15007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_key_option_in_normal_index_option15007	= { FOLLOW_all_key_option_in_normal_index_option15007_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_fulltext_index_option15016  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_fulltext_index_option15016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000400000000) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_fulltext_index_option15016	= { FOLLOW_WITH_SYMBOL_in_fulltext_index_option15016_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15018  */
static	ANTLR3_BITWORD FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15018_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15018	= { FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15018_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_fulltext_index_option15020  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_fulltext_index_option15020_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_fulltext_index_option15020	= { FOLLOW_identifier_in_fulltext_index_option15020_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_key_option_in_fulltext_index_option15025  */
static	ANTLR3_BITWORD FOLLOW_all_key_option_in_fulltext_index_option15025_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_key_option_in_fulltext_index_option15025	= { FOLLOW_all_key_option_in_fulltext_index_option15025_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_all_key_option_in_spatial_index_option15034  */
static	ANTLR3_BITWORD FOLLOW_all_key_option_in_spatial_index_option15034_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_all_key_option_in_spatial_index_option15034	= { FOLLOW_all_key_option_in_spatial_index_option15034_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15043  */
static	ANTLR3_BITWORD FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15043_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15043	= { FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15043_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_all_key_option15045  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_all_key_option15045_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_all_key_option15045	= { FOLLOW_EQUAL_OPERATOR_in_all_key_option15045_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_all_key_option15048  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_all_key_option15048_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_all_key_option15048	= { FOLLOW_ulong_number_in_all_key_option15048_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_all_key_option15055  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_all_key_option15055_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_all_key_option15055	= { FOLLOW_COMMENT_SYMBOL_in_all_key_option15055_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_all_key_option15057  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_all_key_option15057_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_all_key_option15057	= { FOLLOW_string_literal_in_all_key_option15057_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_RESTRICT_SYMBOL_in_reference_option15066  */
static	ANTLR3_BITWORD FOLLOW_RESTRICT_SYMBOL_in_reference_option15066_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_RESTRICT_SYMBOL_in_reference_option15066	= { FOLLOW_RESTRICT_SYMBOL_in_reference_option15066_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CASCADE_SYMBOL_in_reference_option15070  */
static	ANTLR3_BITWORD FOLLOW_CASCADE_SYMBOL_in_reference_option15070_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CASCADE_SYMBOL_in_reference_option15070	= { FOLLOW_CASCADE_SYMBOL_in_reference_option15070_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_reference_option15074  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_reference_option15074_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0140000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SET_SYMBOL_in_reference_option15074	= { FOLLOW_SET_SYMBOL_in_reference_option15074_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_reference_option15076  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_reference_option15076_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_reference_option15076	= { FOLLOW_null_literal_in_reference_option15076_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_SYMBOL_in_reference_option15080  */
static	ANTLR3_BITWORD FOLLOW_NO_SYMBOL_in_reference_option15080_bits[]	= { ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_SYMBOL_in_reference_option15080	= { FOLLOW_NO_SYMBOL_in_reference_option15080_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ACTION_SYMBOL_in_reference_option15082  */
static	ANTLR3_BITWORD FOLLOW_ACTION_SYMBOL_in_reference_option15082_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ACTION_SYMBOL_in_reference_option15082	= { FOLLOW_ACTION_SYMBOL_in_reference_option15082_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_elements_in_data_type15091  */
static	ANTLR3_BITWORD FOLLOW_data_type_elements_in_data_type15091_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_elements_in_data_type15091	= { FOLLOW_data_type_elements_in_data_type15091_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_elements_in_data_type_definition15109  */
static	ANTLR3_BITWORD FOLLOW_data_type_elements_in_data_type_definition15109_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_elements_in_data_type_definition15109	= { FOLLOW_data_type_elements_in_data_type_definition15109_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EOF_in_data_type_definition15111  */
static	ANTLR3_BITWORD FOLLOW_EOF_in_data_type_definition15111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EOF_in_data_type_definition15111	= { FOLLOW_EOF_in_data_type_definition15111_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_integer_type_in_data_type_elements15120  */
static	ANTLR3_BITWORD FOLLOW_integer_type_in_data_type_elements15120_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_integer_type_in_data_type_elements15120	= { FOLLOW_integer_type_in_data_type_elements15120_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15122  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15122_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15122	= { FOLLOW_field_length_in_data_type_elements15122_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15125  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15125_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15125	= { FOLLOW_field_options_in_data_type_elements15125_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_literal_in_data_type_elements15132  */
static	ANTLR3_BITWORD FOLLOW_real_literal_in_data_type_elements15132_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_real_literal_in_data_type_elements15132	= { FOLLOW_real_literal_in_data_type_elements15132_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_precision_in_data_type_elements15134  */
static	ANTLR3_BITWORD FOLLOW_precision_in_data_type_elements15134_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_precision_in_data_type_elements15134	= { FOLLOW_precision_in_data_type_elements15134_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15137  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15137_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15137	= { FOLLOW_field_options_in_data_type_elements15137_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FLOAT_SYMBOL_in_data_type_elements15143  */
static	ANTLR3_BITWORD FOLLOW_FLOAT_SYMBOL_in_data_type_elements15143_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_FLOAT_SYMBOL_in_data_type_elements15143	= { FOLLOW_FLOAT_SYMBOL_in_data_type_elements15143_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type_elements15145  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type_elements15145_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type_elements15145	= { FOLLOW_float_options_in_data_type_elements15145_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15148  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15148_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15148	= { FOLLOW_field_options_in_data_type_elements15148_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIT_SYMBOL_in_data_type_elements15156  */
static	ANTLR3_BITWORD FOLLOW_BIT_SYMBOL_in_data_type_elements15156_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_BIT_SYMBOL_in_data_type_elements15156	= { FOLLOW_BIT_SYMBOL_in_data_type_elements15156_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15158  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15158_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15158	= { FOLLOW_field_length_in_data_type_elements15158_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOL_SYMBOL_in_data_type_elements15164  */
static	ANTLR3_BITWORD FOLLOW_BOOL_SYMBOL_in_data_type_elements15164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BOOL_SYMBOL_in_data_type_elements15164	= { FOLLOW_BOOL_SYMBOL_in_data_type_elements15164_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15169  */
static	ANTLR3_BITWORD FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15169	= { FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15169_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_data_type_elements15176  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_data_type_elements15176_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_data_type_elements15176	= { FOLLOW_CHAR_SYMBOL_in_data_type_elements15176_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15178  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15178_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15178	= { FOLLOW_field_length_in_data_type_elements15178_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15181  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15181_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15181	= { FOLLOW_string_binary_in_data_type_elements15181_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_nchar_literal_in_data_type_elements15187  */
static	ANTLR3_BITWORD FOLLOW_nchar_literal_in_data_type_elements15187_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(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_nchar_literal_in_data_type_elements15187	= { FOLLOW_nchar_literal_in_data_type_elements15187_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15189  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15189_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15189	= { FOLLOW_field_length_in_data_type_elements15189_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type_elements15192  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type_elements15192_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type_elements15192	= { FOLLOW_BINARY_SYMBOL_in_data_type_elements15192_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type_elements15198  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type_elements15198_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type_elements15198	= { FOLLOW_BINARY_SYMBOL_in_data_type_elements15198_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15200  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15200_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15200	= { FOLLOW_field_length_in_data_type_elements15200_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_varchar_literal_in_data_type_elements15206  */
static	ANTLR3_BITWORD FOLLOW_varchar_literal_in_data_type_elements15206_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_varchar_literal_in_data_type_elements15206	= { FOLLOW_varchar_literal_in_data_type_elements15206_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15208  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15208_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15208	= { FOLLOW_field_length_in_data_type_elements15208_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15210  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15210_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15210	= { FOLLOW_string_binary_in_data_type_elements15210_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_nvarchar_literal_in_data_type_elements15216  */
static	ANTLR3_BITWORD FOLLOW_nvarchar_literal_in_data_type_elements15216_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_nvarchar_literal_in_data_type_elements15216	= { FOLLOW_nvarchar_literal_in_data_type_elements15216_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15218  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15218_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15218	= { FOLLOW_field_length_in_data_type_elements15218_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_data_type_elements15220  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_data_type_elements15220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_data_type_elements15220	= { FOLLOW_BINARY_SYMBOL_in_data_type_elements15220_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15227  */
static	ANTLR3_BITWORD FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15227_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_VARBINARY_SYMBOL_in_data_type_elements15227	= { FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15227_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15229  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15229_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15229	= { FOLLOW_field_length_in_data_type_elements15229_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_YEAR_SYMBOL_in_data_type_elements15235  */
static	ANTLR3_BITWORD FOLLOW_YEAR_SYMBOL_in_data_type_elements15235_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_YEAR_SYMBOL_in_data_type_elements15235	= { FOLLOW_YEAR_SYMBOL_in_data_type_elements15235_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15237  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15237_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15237	= { FOLLOW_field_length_in_data_type_elements15237_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15240  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15240_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15240	= { FOLLOW_field_options_in_data_type_elements15240_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_data_type_elements15246  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_data_type_elements15246_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_data_type_elements15246	= { FOLLOW_DATE_SYMBOL_in_data_type_elements15246_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_data_type_elements15251  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_data_type_elements15251_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_data_type_elements15251	= { FOLLOW_TIME_SYMBOL_in_data_type_elements15251_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type_elements15253  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type_elements15253_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type_elements15253	= { FOLLOW_type_datetime_precision_in_data_type_elements15253_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15259  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15259_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15259	= { FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15259_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type_elements15261  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type_elements15261_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type_elements15261	= { FOLLOW_type_datetime_precision_in_data_type_elements15261_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATETIME_SYMBOL_in_data_type_elements15267  */
static	ANTLR3_BITWORD FOLLOW_DATETIME_SYMBOL_in_data_type_elements15267_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_DATETIME_SYMBOL_in_data_type_elements15267	= { FOLLOW_DATETIME_SYMBOL_in_data_type_elements15267_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_type_datetime_precision_in_data_type_elements15269  */
static	ANTLR3_BITWORD FOLLOW_type_datetime_precision_in_data_type_elements15269_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_type_datetime_precision_in_data_type_elements15269	= { FOLLOW_type_datetime_precision_in_data_type_elements15269_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15276  */
static	ANTLR3_BITWORD FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15276	= { FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15276_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BLOB_SYMBOL_in_data_type_elements15281  */
static	ANTLR3_BITWORD FOLLOW_BLOB_SYMBOL_in_data_type_elements15281_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_BLOB_SYMBOL_in_data_type_elements15281	= { FOLLOW_BLOB_SYMBOL_in_data_type_elements15281_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15283  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15283_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15283	= { FOLLOW_field_length_in_data_type_elements15283_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15289  */
static	ANTLR3_BITWORD FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15289_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15289	= { FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15289_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15294  */
static	ANTLR3_BITWORD FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15294_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15294	= { FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15294_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONG_SYMBOL_in_data_type_elements15299  */
static	ANTLR3_BITWORD FOLLOW_LONG_SYMBOL_in_data_type_elements15299_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_LONG_SYMBOL_in_data_type_elements15299	= { FOLLOW_LONG_SYMBOL_in_data_type_elements15299_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15301  */
static	ANTLR3_BITWORD FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15301_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15301	= { FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15301_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONG_SYMBOL_in_data_type_elements15306  */
static	ANTLR3_BITWORD FOLLOW_LONG_SYMBOL_in_data_type_elements15306_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_LONG_SYMBOL_in_data_type_elements15306	= { FOLLOW_LONG_SYMBOL_in_data_type_elements15306_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_varchar_literal_in_data_type_elements15308  */
static	ANTLR3_BITWORD FOLLOW_varchar_literal_in_data_type_elements15308_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_varchar_literal_in_data_type_elements15308	= { FOLLOW_varchar_literal_in_data_type_elements15308_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15311  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15311_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15311	= { FOLLOW_string_binary_in_data_type_elements15311_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15318  */
static	ANTLR3_BITWORD FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15318_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15318	= { FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15318_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15320  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15320_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15320	= { FOLLOW_string_binary_in_data_type_elements15320_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TEXT_SYMBOL_in_data_type_elements15326  */
static	ANTLR3_BITWORD FOLLOW_TEXT_SYMBOL_in_data_type_elements15326_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_TEXT_SYMBOL_in_data_type_elements15326	= { FOLLOW_TEXT_SYMBOL_in_data_type_elements15326_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_length_in_data_type_elements15328  */
static	ANTLR3_BITWORD FOLLOW_field_length_in_data_type_elements15328_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_length_in_data_type_elements15328	= { FOLLOW_field_length_in_data_type_elements15328_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15331  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15331_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15331	= { FOLLOW_string_binary_in_data_type_elements15331_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15337  */
static	ANTLR3_BITWORD FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15337_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15337	= { FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15337_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15339  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15339_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15339	= { FOLLOW_string_binary_in_data_type_elements15339_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LONGTEXT_SYMBOL_in_data_type_elements15345  */
static	ANTLR3_BITWORD FOLLOW_LONGTEXT_SYMBOL_in_data_type_elements15345_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_LONGTEXT_SYMBOL_in_data_type_elements15345	= { FOLLOW_LONGTEXT_SYMBOL_in_data_type_elements15345_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15347  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15347_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15347	= { FOLLOW_string_binary_in_data_type_elements15347_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15355  */
static	ANTLR3_BITWORD FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15355_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15355	= { FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15355_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type_elements15357  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type_elements15357_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type_elements15357	= { FOLLOW_float_options_in_data_type_elements15357_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15360  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15360_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15360	= { FOLLOW_field_options_in_data_type_elements15360_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15366  */
static	ANTLR3_BITWORD FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15366_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15366	= { FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15366_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type_elements15368  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type_elements15368_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type_elements15368	= { FOLLOW_float_options_in_data_type_elements15368_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15371  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15371	= { FOLLOW_field_options_in_data_type_elements15371_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_FIXED_SYMBOL_in_data_type_elements15377  */
static	ANTLR3_BITWORD FOLLOW_FIXED_SYMBOL_in_data_type_elements15377_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_FIXED_SYMBOL_in_data_type_elements15377	= { FOLLOW_FIXED_SYMBOL_in_data_type_elements15377_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_float_options_in_data_type_elements15379  */
static	ANTLR3_BITWORD FOLLOW_float_options_in_data_type_elements15379_bits[]	= { ANTLR3_UINT64_LIT(0x0000800000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000000004) };
static  ANTLR3_BITSET_LIST FOLLOW_float_options_in_data_type_elements15379	= { FOLLOW_float_options_in_data_type_elements15379_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_options_in_data_type_elements15382  */
static	ANTLR3_BITWORD FOLLOW_field_options_in_data_type_elements15382_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_field_options_in_data_type_elements15382	= { FOLLOW_field_options_in_data_type_elements15382_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENUM_SYMBOL_in_data_type_elements15390  */
static	ANTLR3_BITWORD FOLLOW_ENUM_SYMBOL_in_data_type_elements15390_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_ENUM_SYMBOL_in_data_type_elements15390	= { FOLLOW_ENUM_SYMBOL_in_data_type_elements15390_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_list_in_data_type_elements15392  */
static	ANTLR3_BITWORD FOLLOW_string_list_in_data_type_elements15392_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_list_in_data_type_elements15392	= { FOLLOW_string_list_in_data_type_elements15392_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15394  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15394_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15394	= { FOLLOW_string_binary_in_data_type_elements15394_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SET_SYMBOL_in_data_type_elements15400  */
static	ANTLR3_BITWORD FOLLOW_SET_SYMBOL_in_data_type_elements15400_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_SET_SYMBOL_in_data_type_elements15400	= { FOLLOW_SET_SYMBOL_in_data_type_elements15400_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_list_in_data_type_elements15402  */
static	ANTLR3_BITWORD FOLLOW_string_list_in_data_type_elements15402_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000A22), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000200001000) };
static  ANTLR3_BITSET_LIST FOLLOW_string_list_in_data_type_elements15402	= { FOLLOW_string_list_in_data_type_elements15402_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_binary_in_data_type_elements15404  */
static	ANTLR3_BITWORD FOLLOW_string_binary_in_data_type_elements15404_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_binary_in_data_type_elements15404	= { FOLLOW_string_binary_in_data_type_elements15404_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SERIAL_SYMBOL_in_data_type_elements15410  */
static	ANTLR3_BITWORD FOLLOW_SERIAL_SYMBOL_in_data_type_elements15410_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SERIAL_SYMBOL_in_data_type_elements15410	= { FOLLOW_SERIAL_SYMBOL_in_data_type_elements15410_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_JSON_SYMBOL_in_data_type_elements15417  */
static	ANTLR3_BITWORD FOLLOW_JSON_SYMBOL_in_data_type_elements15417_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_JSON_SYMBOL_in_data_type_elements15417	= { FOLLOW_JSON_SYMBOL_in_data_type_elements15417_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_spatial_type_in_data_type_elements15422  */
static	ANTLR3_BITWORD FOLLOW_spatial_type_in_data_type_elements15422_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_spatial_type_in_data_type_elements15422	= { FOLLOW_spatial_type_in_data_type_elements15422_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_field_length15431  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_field_length15431_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_field_length15431	= { FOLLOW_OPEN_PAR_SYMBOL_in_field_length15431_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulonglong_number_in_field_length15434  */
static	ANTLR3_BITWORD FOLLOW_real_ulonglong_number_in_field_length15434_bits[]	= { ANTLR3_UINT64_LIT(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_real_ulonglong_number_in_field_length15434	= { FOLLOW_real_ulonglong_number_in_field_length15434_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DECIMAL_NUMBER_in_field_length15438  */
static	ANTLR3_BITWORD FOLLOW_DECIMAL_NUMBER_in_field_length15438_bits[]	= { ANTLR3_UINT64_LIT(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_DECIMAL_NUMBER_in_field_length15438	= { FOLLOW_DECIMAL_NUMBER_in_field_length15438_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15441  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15441	= { FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15441_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ascii_in_string_binary15470  */
static	ANTLR3_BITWORD FOLLOW_ascii_in_string_binary15470_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ascii_in_string_binary15470	= { FOLLOW_ascii_in_string_binary15470_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_unicode_in_string_binary15475  */
static	ANTLR3_BITWORD FOLLOW_unicode_in_string_binary15475_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_unicode_in_string_binary15475	= { FOLLOW_unicode_in_string_binary15475_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BYTE_SYMBOL_in_string_binary15480  */
static	ANTLR3_BITWORD FOLLOW_BYTE_SYMBOL_in_string_binary15480_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BYTE_SYMBOL_in_string_binary15480	= { FOLLOW_BYTE_SYMBOL_in_string_binary15480_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_string_binary15485  */
static	ANTLR3_BITWORD FOLLOW_charset_in_string_binary15485_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_string_binary15485	= { FOLLOW_charset_in_string_binary15485_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_string_binary15487  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_string_binary15487_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_string_binary15487	= { FOLLOW_charset_name_in_string_binary15487_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_string_binary15489  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_string_binary15489_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_string_binary15489	= { FOLLOW_BINARY_SYMBOL_in_string_binary15489_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_string_binary15495  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_string_binary15495_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000802), 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_BINARY_SYMBOL_in_string_binary15495	= { FOLLOW_BINARY_SYMBOL_in_string_binary15495_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_string_binary15498  */
static	ANTLR3_BITWORD FOLLOW_charset_in_string_binary15498_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_string_binary15498	= { FOLLOW_charset_in_string_binary15498_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_string_binary15500  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_string_binary15500_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_string_binary15500	= { FOLLOW_charset_name_in_string_binary15500_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_ascii15511  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_ascii15511_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_ascii15511	= { FOLLOW_ASCII_SYMBOL_in_ascii15511_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_ascii15513  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_ascii15513_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_ascii15513	= { FOLLOW_BINARY_SYMBOL_in_ascii15513_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_ascii15521  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_ascii15521_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000020) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_ascii15521	= { FOLLOW_BINARY_SYMBOL_in_ascii15521_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ASCII_SYMBOL_in_ascii15523  */
static	ANTLR3_BITWORD FOLLOW_ASCII_SYMBOL_in_ascii15523_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ASCII_SYMBOL_in_ascii15523	= { FOLLOW_ASCII_SYMBOL_in_ascii15523_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_unicode15532  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_unicode15532_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(0x0000000000001000) };
static  ANTLR3_BITSET_LIST FOLLOW_UNICODE_SYMBOL_in_unicode15532	= { FOLLOW_UNICODE_SYMBOL_in_unicode15532_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_unicode15534  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_unicode15534_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_unicode15534	= { FOLLOW_BINARY_SYMBOL_in_unicode15534_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_unicode15542  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_unicode15542_bits[]	= { ANTLR3_UINT64_LIT(0x0040000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_unicode15542	= { FOLLOW_BINARY_SYMBOL_in_unicode15542_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNICODE_SYMBOL_in_unicode15544  */
static	ANTLR3_BITWORD FOLLOW_UNICODE_SYMBOL_in_unicode15544_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNICODE_SYMBOL_in_unicode15544	= { FOLLOW_UNICODE_SYMBOL_in_unicode15544_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision15555  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision15555_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_type_datetime_precision15555	= { FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision15555_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_type_datetime_precision15557  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_type_datetime_precision15557_bits[]	= { ANTLR3_UINT64_LIT(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_INT_NUMBER_in_type_datetime_precision15557	= { FOLLOW_INT_NUMBER_in_type_datetime_precision15557_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15559  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15559_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15559	= { FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15559_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_charset_name15568  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_charset_name15568_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_charset_name15568	= { FOLLOW_text_or_identifier_in_charset_name15568_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_charset_name15573  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_charset_name15573_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_charset_name15573	= { FOLLOW_BINARY_SYMBOL_in_charset_name15573_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_in_charset_name_or_default15582  */
static	ANTLR3_BITWORD FOLLOW_charset_name_in_charset_name_or_default15582_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_in_charset_name_or_default15582	= { FOLLOW_charset_name_in_charset_name_or_default15582_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15587  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15587_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15587	= { FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15587_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_collation_name15596  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_collation_name15596_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_collation_name15596	= { FOLLOW_text_or_identifier_in_collation_name15596_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_collation_name_or_default15605  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_collation_name_or_default15605_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_collation_name_or_default15605	= { FOLLOW_text_or_identifier_in_collation_name_or_default15605_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15610  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15610_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15610	= { FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15610_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_alter_table_options15663  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_alter_table_options15663_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000005802), ANTLR3_UINT64_LIT(0x0020400A000000A0), ANTLR3_UINT64_LIT(0x0100280000000002), ANTLR3_UINT64_LIT(0x0420000008000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x00000002003000B8), ANTLR3_UINT64_LIT(0x0000002200000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_alter_table_options15663	= { FOLLOW_create_table_option_in_alter_table_options15663_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_create_table_options15673  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_create_table_options15673_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000005802), ANTLR3_UINT64_LIT(0x0020400A000000A0), ANTLR3_UINT64_LIT(0x0100280000000002), ANTLR3_UINT64_LIT(0x0420000008000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x00000002003000B8), ANTLR3_UINT64_LIT(0x0000102200000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_create_table_options15673	= { FOLLOW_create_table_option_in_create_table_options15673_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_create_table_options15676  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_create_table_options15676_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000005800), ANTLR3_UINT64_LIT(0x0020400A000000A0), ANTLR3_UINT64_LIT(0x0100280000000002), ANTLR3_UINT64_LIT(0x0420000008000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x00000002003000B8), ANTLR3_UINT64_LIT(0x0000002200000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_create_table_options15676	= { FOLLOW_COMMA_SYMBOL_in_create_table_options15676_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_create_table_option_in_create_table_options15679  */
static	ANTLR3_BITWORD FOLLOW_create_table_option_in_create_table_options15679_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000005802), ANTLR3_UINT64_LIT(0x0020400A000000A0), ANTLR3_UINT64_LIT(0x0100280000000002), ANTLR3_UINT64_LIT(0x0420000008000000), ANTLR3_UINT64_LIT(0x0000040000000000), ANTLR3_UINT64_LIT(0x00000002003000B8), ANTLR3_UINT64_LIT(0x0000102200000000), ANTLR3_UINT64_LIT(0x0000000000004000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x8000000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_create_table_option_in_create_table_options15679	= { FOLLOW_create_table_option_in_create_table_options15679_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_create_table_option15692  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_create_table_option15692_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_create_table_option15692	= { FOLLOW_ENGINE_SYMBOL_in_create_table_option15692_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TYPE_SYMBOL_in_create_table_option15698  */
static	ANTLR3_BITWORD FOLLOW_TYPE_SYMBOL_in_create_table_option15698_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TYPE_SYMBOL_in_create_table_option15698	= { FOLLOW_TYPE_SYMBOL_in_create_table_option15698_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15701  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15701_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15701	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15701_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_create_table_option15704  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_create_table_option15704_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_create_table_option15704	= { FOLLOW_engine_ref_in_create_table_option15704_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15709  */
static	ANTLR3_BITWORD FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15709_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000000200), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15709	= { FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15709_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15711  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15711_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15711	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15711_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_create_table_option15714  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_create_table_option15714_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_create_table_option15714	= { FOLLOW_ulonglong_number_in_create_table_option15714_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15719  */
static	ANTLR3_BITWORD FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15719_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000000200), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15719	= { FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15719_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15721  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15721_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15721	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15721_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_create_table_option15724  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_create_table_option15724_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_create_table_option15724	= { FOLLOW_ulonglong_number_in_create_table_option15724_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15729  */
static	ANTLR3_BITWORD FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15729_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15729	= { FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15729_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15731  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15731_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15731	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15731_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15734  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15734_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15734	= { FOLLOW_ulong_number_in_create_table_option15734_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_create_table_option15739  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_create_table_option15739_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_create_table_option15739	= { FOLLOW_PASSWORD_SYMBOL_in_create_table_option15739_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15741  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15741_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15741	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15741_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option15744  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option15744_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option15744	= { FOLLOW_text_string_in_create_table_option15744_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_create_table_option15749  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_create_table_option15749_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_create_table_option15749	= { FOLLOW_COMMENT_SYMBOL_in_create_table_option15749_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15751  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15751_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15751	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15751_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option15754  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option15754_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option15754	= { FOLLOW_text_string_in_create_table_option15754_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15759  */
static	ANTLR3_BITWORD FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15759_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15759	= { FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15759_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15761  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15761_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15761	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15761_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option15764  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option15764_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option15764	= { FOLLOW_text_string_in_create_table_option15764_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15769  */
static	ANTLR3_BITWORD FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15769_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000000200), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15769	= { FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15769_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15771  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15771_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000000000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15771	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15771_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulonglong_number_in_create_table_option15774  */
static	ANTLR3_BITWORD FOLLOW_ulonglong_number_in_create_table_option15774_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulonglong_number_in_create_table_option15774	= { FOLLOW_ulonglong_number_in_create_table_option15774_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15779  */
static	ANTLR3_BITWORD FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15779_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000004200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15779	= { FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15779_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15781  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15781_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000004200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15781	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15781_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15785  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15785_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15785	= { FOLLOW_ulong_number_in_create_table_option15785_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_create_table_option15789  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_create_table_option15789_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_create_table_option15789	= { FOLLOW_DEFAULT_SYMBOL_in_create_table_option15789_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option15797  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option15797_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000004200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option15797	= { FOLLOW_set_in_create_table_option15797_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15811  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15811_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000004200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15811	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15811_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15815  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15815_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15815	= { FOLLOW_ulong_number_in_create_table_option15815_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_create_table_option15819  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_create_table_option15819_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_create_table_option15819	= { FOLLOW_DEFAULT_SYMBOL_in_create_table_option15819_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option15825  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option15825_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option15825	= { FOLLOW_set_in_create_table_option15825_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15833  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15833_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15833	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15833_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15836  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15836_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15836	= { FOLLOW_ulong_number_in_create_table_option15836_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15841  */
static	ANTLR3_BITWORD FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15841_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15841	= { FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15841_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15843  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15843_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15843	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15843_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option15846  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option15846_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option15846	= { FOLLOW_ulong_number_in_create_table_option15846_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15851  */
static	ANTLR3_BITWORD FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15851_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000140000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15851	= { FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15851_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15853  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15853_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x4000000140000000), ANTLR3_UINT64_LIT(0x0000000000400000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15853	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15853_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option15856  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option15856_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option15856	= { FOLLOW_set_in_create_table_option15856_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNION_SYMBOL_in_create_table_option15883  */
static	ANTLR3_BITWORD FOLLOW_UNION_SYMBOL_in_create_table_option15883_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_UNION_SYMBOL_in_create_table_option15883	= { FOLLOW_UNION_SYMBOL_in_create_table_option15883_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15886  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15886_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_EQUAL_OPERATOR_in_create_table_option15886	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15886_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15889  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15889_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15889	= { FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15889_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_list_in_create_table_option15891  */
static	ANTLR3_BITWORD FOLLOW_table_ref_list_in_create_table_option15891_bits[]	= { ANTLR3_UINT64_LIT(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_table_ref_list_in_create_table_option15891	= { FOLLOW_table_ref_list_in_create_table_option15891_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15893  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15893_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15893	= { FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15893_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_create_table_option15898  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_create_table_option15898_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000800), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002200000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_create_table_option15898	= { FOLLOW_DEFAULT_SYMBOL_in_create_table_option15898_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLLATE_SYMBOL_in_create_table_option15908  */
static	ANTLR3_BITWORD FOLLOW_COLLATE_SYMBOL_in_create_table_option15908_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COLLATE_SYMBOL_in_create_table_option15908	= { FOLLOW_COLLATE_SYMBOL_in_create_table_option15908_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15910  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15910_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15910	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15910_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_collation_name_or_default_in_create_table_option15913  */
static	ANTLR3_BITWORD FOLLOW_collation_name_or_default_in_create_table_option15913_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_collation_name_or_default_in_create_table_option15913	= { FOLLOW_collation_name_or_default_in_create_table_option15913_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_create_table_option15920  */
static	ANTLR3_BITWORD FOLLOW_charset_in_create_table_option15920_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000008020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_create_table_option15920	= { FOLLOW_charset_in_create_table_option15920_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15922  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15922_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15922	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15922_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_name_or_default_in_create_table_option15925  */
static	ANTLR3_BITWORD FOLLOW_charset_name_or_default_in_create_table_option15925_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_name_or_default_in_create_table_option15925	= { FOLLOW_charset_name_or_default_in_create_table_option15925_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15935  */
static	ANTLR3_BITWORD FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15935_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000200000), 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_INSERT_METHOD_SYMBOL_in_create_table_option15935	= { FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15935_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15937  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15937_bits[]	= { ANTLR3_UINT64_LIT(0x0000000040000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000400000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15937	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15937_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option15940  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option15940_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option15940	= { FOLLOW_set_in_create_table_option15940_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATA_SYMBOL_in_create_table_option15955  */
static	ANTLR3_BITWORD FOLLOW_DATA_SYMBOL_in_create_table_option15955_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DATA_SYMBOL_in_create_table_option15955	= { FOLLOW_DATA_SYMBOL_in_create_table_option15955_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15957  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15957_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15957	= { FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15957_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15959  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15959_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15959	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15959_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option15962  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option15962_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option15962	= { FOLLOW_text_string_in_create_table_option15962_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INDEX_SYMBOL_in_create_table_option15967  */
static	ANTLR3_BITWORD FOLLOW_INDEX_SYMBOL_in_create_table_option15967_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INDEX_SYMBOL_in_create_table_option15967	= { FOLLOW_INDEX_SYMBOL_in_create_table_option15967_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15969  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15969_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15969	= { FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15969_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15971  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15971_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15971	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15971_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option15974  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option15974_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option15974	= { FOLLOW_text_string_in_create_table_option15974_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_create_table_option15979  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_create_table_option15979_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_create_table_option15979	= { FOLLOW_TABLESPACE_SYMBOL_in_create_table_option15979_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option15984  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option15984_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option15984	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option15984_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_create_table_option15993  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_create_table_option15993_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_create_table_option15993	= { FOLLOW_identifier_in_create_table_option15993_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_create_table_option15998  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_create_table_option15998_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200000) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_create_table_option15998	= { FOLLOW_STORAGE_SYMBOL_in_create_table_option15998_bits, 4	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_create_table_option16000  */
static	ANTLR3_BITWORD FOLLOW_set_in_create_table_option16000_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_create_table_option16000	= { FOLLOW_set_in_create_table_option16000_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CONNECTION_SYMBOL_in_create_table_option16011  */
static	ANTLR3_BITWORD FOLLOW_CONNECTION_SYMBOL_in_create_table_option16011_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000008000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CONNECTION_SYMBOL_in_create_table_option16011	= { FOLLOW_CONNECTION_SYMBOL_in_create_table_option16011_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option16013  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option16013_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option16013	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option16013_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_create_table_option16016  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_create_table_option16016_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_create_table_option16016	= { FOLLOW_text_string_in_create_table_option16016_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16021  */
static	ANTLR3_BITWORD FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16021_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100008000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16021	= { FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16021_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_create_table_option16023  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_create_table_option16023_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_create_table_option16023	= { FOLLOW_EQUAL_OPERATOR_in_create_table_option16023_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_create_table_option16026  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_create_table_option16026_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_create_table_option16026	= { FOLLOW_ulong_number_in_create_table_option16026_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partitioning16038  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partitioning16038_bits[]	= { ANTLR3_UINT64_LIT(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_PARTITION_SYMBOL_in_partitioning16038	= { FOLLOW_PARTITION_SYMBOL_in_partitioning16038_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_partitioning16041  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_partitioning16041_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0008000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000400000) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_partitioning16041	= { FOLLOW_BY_SYMBOL_in_partitioning16041_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning16048  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning16048_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning16048	= { FOLLOW_LINEAR_SYMBOL_in_partitioning16048_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HASH_SYMBOL_in_partitioning16051  */
static	ANTLR3_BITWORD FOLLOW_HASH_SYMBOL_in_partitioning16051_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_HASH_SYMBOL_in_partitioning16051	= { FOLLOW_HASH_SYMBOL_in_partitioning16051_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16053  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16053_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16053	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16053_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partitioning16055  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partitioning16055_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_partitioning16055	= { FOLLOW_expression_in_partitioning16055_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16057  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16057_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), 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_CLOSE_PAR_SYMBOL_in_partitioning16057	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16057_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning16063  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning16063_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning16063	= { FOLLOW_LINEAR_SYMBOL_in_partitioning16063_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_partitioning16066  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_partitioning16066_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_KEY_SYMBOL_in_partitioning16066	= { FOLLOW_KEY_SYMBOL_in_partitioning16066_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_key_algorithm_in_partitioning16068  */
static	ANTLR3_BITWORD FOLLOW_partition_key_algorithm_in_partitioning16068_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_partition_key_algorithm_in_partitioning16068	= { FOLLOW_partition_key_algorithm_in_partitioning16068_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning16071  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning16071_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), 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_identifier_list_with_parentheses_in_partitioning16071	= { FOLLOW_identifier_list_with_parentheses_in_partitioning16071_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_partitioning16077  */
static	ANTLR3_BITWORD FOLLOW_set_in_partitioning16077_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_partitioning16077	= { FOLLOW_set_in_partitioning16077_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16095  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16095_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16095	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16095_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partitioning16097  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partitioning16097_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_partitioning16097	= { FOLLOW_expression_in_partitioning16097_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16099  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16099_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), 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_CLOSE_PAR_SYMBOL_in_partitioning16099	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16099_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_partitioning16109  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_partitioning16109_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_COLUMNS_SYMBOL_in_partitioning16109	= { FOLLOW_COLUMNS_SYMBOL_in_partitioning16109_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning16111  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning16111_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0200000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), 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_identifier_list_with_parentheses_in_partitioning16111	= { FOLLOW_identifier_list_with_parentheses_in_partitioning16111_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITIONS_SYMBOL_in_partitioning16123  */
static	ANTLR3_BITWORD FOLLOW_PARTITIONS_SYMBOL_in_partitioning16123_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITIONS_SYMBOL_in_partitioning16123	= { FOLLOW_PARTITIONS_SYMBOL_in_partitioning16123_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partitioning16125  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partitioning16125_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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partitioning16125	= { FOLLOW_real_ulong_number_in_partitioning16125_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITION_SYMBOL_in_partitioning16134  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITION_SYMBOL_in_partitioning16134_bits[]	= { ANTLR3_UINT64_LIT(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_SUBPARTITION_SYMBOL_in_partitioning16134	= { FOLLOW_SUBPARTITION_SYMBOL_in_partitioning16134_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_partitioning16136  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_partitioning16136_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_partitioning16136	= { FOLLOW_BY_SYMBOL_in_partitioning16136_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINEAR_SYMBOL_in_partitioning16138  */
static	ANTLR3_BITWORD FOLLOW_LINEAR_SYMBOL_in_partitioning16138_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0010000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_LINEAR_SYMBOL_in_partitioning16138	= { FOLLOW_LINEAR_SYMBOL_in_partitioning16138_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HASH_SYMBOL_in_partitioning16155  */
static	ANTLR3_BITWORD FOLLOW_HASH_SYMBOL_in_partitioning16155_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_HASH_SYMBOL_in_partitioning16155	= { FOLLOW_HASH_SYMBOL_in_partitioning16155_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16157  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16157_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8151108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16157	= { FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16157_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bitwise_or_expression_in_partitioning16159  */
static	ANTLR3_BITWORD FOLLOW_bitwise_or_expression_in_partitioning16159_bits[]	= { ANTLR3_UINT64_LIT(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_bitwise_or_expression_in_partitioning16159	= { FOLLOW_bitwise_or_expression_in_partitioning16159_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16161  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16161_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16161	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16161_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_KEY_SYMBOL_in_partitioning16169  */
static	ANTLR3_BITWORD FOLLOW_KEY_SYMBOL_in_partitioning16169_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_KEY_SYMBOL_in_partitioning16169	= { FOLLOW_KEY_SYMBOL_in_partitioning16169_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_key_algorithm_in_partitioning16171  */
static	ANTLR3_BITWORD FOLLOW_partition_key_algorithm_in_partitioning16171_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_partition_key_algorithm_in_partitioning16171	= { FOLLOW_partition_key_algorithm_in_partitioning16171_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_partitioning16174  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_partitioning16174_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_partitioning16174	= { FOLLOW_identifier_list_with_parentheses_in_partitioning16174_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16185  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16185_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16185	= { FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16185_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partitioning16187  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partitioning16187_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partitioning16187	= { FOLLOW_real_ulong_number_in_partitioning16187_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definitions_in_partitioning16207  */
static	ANTLR3_BITWORD FOLLOW_partition_definitions_in_partitioning16207_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definitions_in_partitioning16207	= { FOLLOW_partition_definitions_in_partitioning16207_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALGORITHM_SYMBOL_in_partition_key_algorithm16220  */
static	ANTLR3_BITWORD FOLLOW_ALGORITHM_SYMBOL_in_partition_key_algorithm16220_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_ALGORITHM_SYMBOL_in_partition_key_algorithm16220	= { FOLLOW_ALGORITHM_SYMBOL_in_partition_key_algorithm16220_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16222  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16222_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16222	= { FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16222_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partition_key_algorithm16224  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partition_key_algorithm16224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partition_key_algorithm16224	= { FOLLOW_real_ulong_number_in_partition_key_algorithm16224_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16233  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16233_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16233	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16233_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_partition_definitions16235  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_partition_definitions16235_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definition_in_partition_definitions16235	= { FOLLOW_partition_definition_in_partition_definitions16235_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_definitions16238  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_definitions16238_bits[]	= { ANTLR3_UINT64_LIT(0x0000000800000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_partition_definitions16238	= { FOLLOW_COMMA_SYMBOL_in_partition_definitions16238_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_definition_in_partition_definitions16240  */
static	ANTLR3_BITWORD FOLLOW_partition_definition_in_partition_definitions16240_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_definition_in_partition_definitions16240	= { FOLLOW_partition_definition_in_partition_definitions16240_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16244  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16244_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16244	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16244_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_partition_definition16253  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_partition_definition16253_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_PARTITION_SYMBOL_in_partition_definition16253	= { FOLLOW_PARTITION_SYMBOL_in_partition_definition16253_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_definition16255  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_partition_definition16255_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0100000000000002), ANTLR3_UINT64_LIT(0x0000200008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000800) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_definition16255	= { FOLLOW_identifier_in_partition_definition16255_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VALUES_SYMBOL_in_partition_definition16262  */
static	ANTLR3_BITWORD FOLLOW_VALUES_SYMBOL_in_partition_definition16262_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0001000000000000), 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_VALUES_SYMBOL_in_partition_definition16262	= { FOLLOW_VALUES_SYMBOL_in_partition_definition16262_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LESS_SYMBOL_in_partition_definition16271  */
static	ANTLR3_BITWORD FOLLOW_LESS_SYMBOL_in_partition_definition16271_bits[]	= { 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_LESS_SYMBOL_in_partition_definition16271	= { FOLLOW_LESS_SYMBOL_in_partition_definition16271_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_THAN_SYMBOL_in_partition_definition16273  */
static	ANTLR3_BITWORD FOLLOW_THAN_SYMBOL_in_partition_definition16273_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_THAN_SYMBOL_in_partition_definition16273	= { FOLLOW_THAN_SYMBOL_in_partition_definition16273_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_value_list_in_partition_definition16276  */
static	ANTLR3_BITWORD FOLLOW_partition_value_list_in_partition_definition16276_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0100000000000002), ANTLR3_UINT64_LIT(0x0000200008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_value_list_in_partition_definition16276	= { FOLLOW_partition_value_list_in_partition_definition16276_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16280  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16280_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0100000000000002), ANTLR3_UINT64_LIT(0x0000200008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16280	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16280_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IN_SYMBOL_in_partition_definition16288  */
static	ANTLR3_BITWORD FOLLOW_IN_SYMBOL_in_partition_definition16288_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_IN_SYMBOL_in_partition_definition16288	= { FOLLOW_IN_SYMBOL_in_partition_definition16288_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_value_list_in_partition_definition16290  */
static	ANTLR3_BITWORD FOLLOW_partition_value_list_in_partition_definition16290_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0100000000000002), ANTLR3_UINT64_LIT(0x0000200008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_value_list_in_partition_definition16290	= { FOLLOW_partition_value_list_in_partition_definition16290_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_option_in_partition_definition16302  */
static	ANTLR3_BITWORD FOLLOW_partition_option_in_partition_definition16302_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0100000000000002), ANTLR3_UINT64_LIT(0x0000200008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_option_in_partition_definition16302	= { FOLLOW_partition_option_in_partition_definition16302_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition16308  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition16308_bits[]	= { 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_OPEN_PAR_SYMBOL_in_partition_definition16308	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition16308_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subpartition_definition_in_partition_definition16310  */
static	ANTLR3_BITWORD FOLLOW_subpartition_definition_in_partition_definition16310_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_subpartition_definition_in_partition_definition16310	= { FOLLOW_subpartition_definition_in_partition_definition16310_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_definition16313  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_definition16313_bits[]	= { 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_COMMA_SYMBOL_in_partition_definition16313	= { FOLLOW_COMMA_SYMBOL_in_partition_definition16313_bits, 6	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_subpartition_definition_in_partition_definition16315  */
static	ANTLR3_BITWORD FOLLOW_subpartition_definition_in_partition_definition16315_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_subpartition_definition_in_partition_definition16315	= { FOLLOW_subpartition_definition_in_partition_definition16315_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16319  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16319_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16319	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16319_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TABLESPACE_SYMBOL_in_partition_option16330  */
static	ANTLR3_BITWORD FOLLOW_TABLESPACE_SYMBOL_in_partition_option16330_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_TABLESPACE_SYMBOL_in_partition_option16330	= { FOLLOW_TABLESPACE_SYMBOL_in_partition_option16330_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16332  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16332_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16332	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16332_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_partition_option16335  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_partition_option16335_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_partition_option16335	= { FOLLOW_identifier_in_partition_option16335_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_STORAGE_SYMBOL_in_partition_option16340  */
static	ANTLR3_BITWORD FOLLOW_STORAGE_SYMBOL_in_partition_option16340_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_STORAGE_SYMBOL_in_partition_option16340	= { FOLLOW_STORAGE_SYMBOL_in_partition_option16340_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENGINE_SYMBOL_in_partition_option16343  */
static	ANTLR3_BITWORD FOLLOW_ENGINE_SYMBOL_in_partition_option16343_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ENGINE_SYMBOL_in_partition_option16343	= { FOLLOW_ENGINE_SYMBOL_in_partition_option16343_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16345  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16345_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16345	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16345_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_engine_ref_in_partition_option16348  */
static	ANTLR3_BITWORD FOLLOW_engine_ref_in_partition_option16348_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_engine_ref_in_partition_option16348	= { FOLLOW_engine_ref_in_partition_option16348_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NODEGROUP_SYMBOL_in_partition_option16353  */
static	ANTLR3_BITWORD FOLLOW_NODEGROUP_SYMBOL_in_partition_option16353_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_NODEGROUP_SYMBOL_in_partition_option16353	= { FOLLOW_NODEGROUP_SYMBOL_in_partition_option16353_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16355  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16355_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16355	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16355_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partition_option16358  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partition_option16358_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partition_option16358	= { FOLLOW_real_ulong_number_in_partition_option16358_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_partition_option16363  */
static	ANTLR3_BITWORD FOLLOW_set_in_partition_option16363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_partition_option16363	= { FOLLOW_set_in_partition_option16363_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16371  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16371_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16371	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16371_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulong_number_in_partition_option16374  */
static	ANTLR3_BITWORD FOLLOW_real_ulong_number_in_partition_option16374_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulong_number_in_partition_option16374	= { FOLLOW_real_ulong_number_in_partition_option16374_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_partition_option16379  */
static	ANTLR3_BITWORD FOLLOW_set_in_partition_option16379_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_partition_option16379	= { FOLLOW_set_in_partition_option16379_bits, 2	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DIRECTORY_SYMBOL_in_partition_option16387  */
static	ANTLR3_BITWORD FOLLOW_DIRECTORY_SYMBOL_in_partition_option16387_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DIRECTORY_SYMBOL_in_partition_option16387	= { FOLLOW_DIRECTORY_SYMBOL_in_partition_option16387_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16389  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16389_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16389	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16389_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_partition_option16392  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_partition_option16392_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_partition_option16392	= { FOLLOW_string_literal_in_partition_option16392_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMENT_SYMBOL_in_partition_option16397  */
static	ANTLR3_BITWORD FOLLOW_COMMENT_SYMBOL_in_partition_option16397_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000008020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMENT_SYMBOL_in_partition_option16397	= { FOLLOW_COMMENT_SYMBOL_in_partition_option16397_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_partition_option16399  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_partition_option16399_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000100000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x2000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_partition_option16399	= { FOLLOW_EQUAL_OPERATOR_in_partition_option16399_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_partition_option16402  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_partition_option16402_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_partition_option16402	= { FOLLOW_string_literal_in_partition_option16402_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16411  */
static	ANTLR3_BITWORD FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16411_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16411	= { FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16411_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_subpartition_definition16413  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_subpartition_definition16413_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0100000000000002), ANTLR3_UINT64_LIT(0x0000200008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_subpartition_definition16413	= { FOLLOW_identifier_in_subpartition_definition16413_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_partition_option_in_subpartition_definition16416  */
static	ANTLR3_BITWORD FOLLOW_partition_option_in_subpartition_definition16416_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000004002), ANTLR3_UINT64_LIT(0x0000400000000000), ANTLR3_UINT64_LIT(0x0100000000000002), ANTLR3_UINT64_LIT(0x0000200008000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000200080), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_partition_option_in_subpartition_definition16416	= { FOLLOW_partition_option_in_subpartition_definition16416_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16427  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16427_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108483811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16427	= { FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16427_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partition_value_list16430  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partition_value_list16430_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partition_value_list16430	= { FOLLOW_expression_in_partition_value_list16430_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16434  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16434_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16434	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16434_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_partition_value_list16438  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_partition_value_list16438_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108483811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_partition_value_list16438	= { FOLLOW_COMMA_SYMBOL_in_partition_value_list16438_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_partition_value_list16441  */
static	ANTLR3_BITWORD FOLLOW_expression_in_partition_value_list16441_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_partition_value_list16441	= { FOLLOW_expression_in_partition_value_list16441_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16445  */
static	ANTLR3_BITWORD FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16445_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16445	= { FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16445_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16450  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16450_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16450	= { FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16450_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFINER_SYMBOL_in_definer_clause16459  */
static	ANTLR3_BITWORD FOLLOW_DEFINER_SYMBOL_in_definer_clause16459_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_DEFINER_SYMBOL_in_definer_clause16459	= { FOLLOW_DEFINER_SYMBOL_in_definer_clause16459_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_definer_clause16462  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_definer_clause16462_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_definer_clause16462	= { FOLLOW_EQUAL_OPERATOR_in_definer_clause16462_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_definer_clause16464  */
static	ANTLR3_BITWORD FOLLOW_user_in_definer_clause16464_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_definer_clause16464	= { FOLLOW_user_in_definer_clause16464_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_exists16473  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_exists16473_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_IF_SYMBOL_in_if_exists16473	= { FOLLOW_IF_SYMBOL_in_if_exists16473_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_if_exists16475  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_if_exists16475_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_if_exists16475	= { FOLLOW_EXISTS_SYMBOL_in_if_exists16475_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IF_SYMBOL_in_if_not_exists16484  */
static	ANTLR3_BITWORD FOLLOW_IF_SYMBOL_in_if_not_exists16484_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0009000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_IF_SYMBOL_in_if_not_exists16484	= { FOLLOW_IF_SYMBOL_in_if_not_exists16484_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_not_rule_in_if_not_exists16486  */
static	ANTLR3_BITWORD FOLLOW_not_rule_in_if_not_exists16486_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_not_rule_in_if_not_exists16486	= { FOLLOW_not_rule_in_if_not_exists16486_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EXISTS_SYMBOL_in_if_not_exists16488  */
static	ANTLR3_BITWORD FOLLOW_EXISTS_SYMBOL_in_if_not_exists16488_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_EXISTS_SYMBOL_in_if_not_exists16488	= { FOLLOW_EXISTS_SYMBOL_in_if_not_exists16488_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_function_parameter_in_procedure_parameter16510  */
static	ANTLR3_BITWORD FOLLOW_function_parameter_in_procedure_parameter16510_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_function_parameter_in_procedure_parameter16510	= { FOLLOW_function_parameter_in_procedure_parameter16510_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_function_parameter16519  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_function_parameter16519_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0003000000003400), ANTLR3_UINT64_LIT(0x0004100003400001), ANTLR3_UINT64_LIT(0x800100C380000000), ANTLR3_UINT64_LIT(0x0001000000000001), ANTLR3_UINT64_LIT(0x0100000091000000), ANTLR3_UINT64_LIT(0x0000000200401800), ANTLR3_UINT64_LIT(0x0200000040000800), ANTLR3_UINT64_LIT(0x0000004000000000), ANTLR3_UINT64_LIT(0x040000001C04C000), ANTLR3_UINT64_LIT(0x0200000004000000), ANTLR3_UINT64_LIT(0x0003800000000008), ANTLR3_UINT64_LIT(0x0000000000005000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_function_parameter16519	= { FOLLOW_identifier_in_function_parameter16519_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_data_type_in_function_parameter16521  */
static	ANTLR3_BITWORD FOLLOW_data_type_in_function_parameter16521_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_data_type_in_function_parameter16521	= { FOLLOW_data_type_in_function_parameter16521_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16530  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16530_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16530	= { FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16530_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_schema_identifier_pair16532  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_schema_identifier_pair16532_bits[]	= { ANTLR3_UINT64_LIT(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_schema_ref_in_schema_identifier_pair16532	= { FOLLOW_schema_ref_in_schema_identifier_pair16532_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16534  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16534_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16534	= { FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16534_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_schema_ref_in_schema_identifier_pair16536  */
static	ANTLR3_BITWORD FOLLOW_schema_ref_in_schema_identifier_pair16536_bits[]	= { ANTLR3_UINT64_LIT(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_schema_ref_in_schema_identifier_pair16536	= { FOLLOW_schema_ref_in_schema_identifier_pair16536_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16538  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16538_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16538	= { FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16538_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_ref_in_view_identifier_list16547  */
static	ANTLR3_BITWORD FOLLOW_view_ref_in_view_identifier_list16547_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_view_ref_in_view_identifier_list16547	= { FOLLOW_view_ref_in_view_identifier_list16547_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_view_identifier_list16550  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_view_identifier_list16550_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_view_identifier_list16550	= { FOLLOW_COMMA_SYMBOL_in_view_identifier_list16550_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_view_ref_in_view_identifier_list16552  */
static	ANTLR3_BITWORD FOLLOW_view_ref_in_view_identifier_list16552_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_view_ref_in_view_identifier_list16552	= { FOLLOW_view_ref_in_view_identifier_list16552_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_name_list16570  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_name_list16570_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_name_list16570	= { FOLLOW_column_ref_in_field_name_list16570_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_field_name_list16573  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_field_name_list16573_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_field_name_list16573	= { FOLLOW_COMMA_SYMBOL_in_field_name_list16573_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_field_name_list16575  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_field_name_list16575_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_in_field_name_list16575	= { FOLLOW_column_ref_in_field_name_list16575_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16586  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16586_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16586	= { FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16586_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16589  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16589_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16589	= { FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16589_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16591  */
static	ANTLR3_BITWORD FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16591_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16591	= { FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16591_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_in_column_assignment_with_default16619  */
static	ANTLR3_BITWORD FOLLOW_column_ref_in_column_assignment_with_default16619_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_column_ref_in_column_assignment_with_default16619	= { FOLLOW_column_ref_in_column_assignment_with_default16619_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16621  */
static	ANTLR3_BITWORD FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16621_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400420A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16621	= { FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16621_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_column_assignment_with_default16624  */
static	ANTLR3_BITWORD FOLLOW_expression_in_column_assignment_with_default16624_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_expression_in_column_assignment_with_default16624	= { FOLLOW_expression_in_column_assignment_with_default16624_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16628  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16628_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16628	= { FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16628_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_charset_in_charset_clause16638  */
static	ANTLR3_BITWORD FOLLOW_charset_in_charset_clause16638_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000001100), ANTLR3_UINT64_LIT(0x0000000020004000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_charset_in_charset_clause16638	= { FOLLOW_charset_in_charset_clause16638_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_charset_clause16641  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_charset_clause16641_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_charset_clause16641	= { FOLLOW_text_or_identifier_in_charset_clause16641_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DEFAULT_SYMBOL_in_charset_clause16645  */
static	ANTLR3_BITWORD FOLLOW_DEFAULT_SYMBOL_in_charset_clause16645_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DEFAULT_SYMBOL_in_charset_clause16645	= { FOLLOW_DEFAULT_SYMBOL_in_charset_clause16645_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BINARY_SYMBOL_in_charset_clause16649  */
static	ANTLR3_BITWORD FOLLOW_BINARY_SYMBOL_in_charset_clause16649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BINARY_SYMBOL_in_charset_clause16649	= { FOLLOW_BINARY_SYMBOL_in_charset_clause16649_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COLUMNS_SYMBOL_in_fields_clause16659  */
static	ANTLR3_BITWORD FOLLOW_COLUMNS_SYMBOL_in_fields_clause16659_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000011000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_COLUMNS_SYMBOL_in_fields_clause16659	= { FOLLOW_COLUMNS_SYMBOL_in_fields_clause16659_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_field_term_in_fields_clause16661  */
static	ANTLR3_BITWORD FOLLOW_field_term_in_fields_clause16661_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(0x0000011000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000008), ANTLR3_UINT64_LIT(0x0000200000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_field_term_in_fields_clause16661	= { FOLLOW_field_term_in_fields_clause16661_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TERMINATED_SYMBOL_in_field_term16671  */
static	ANTLR3_BITWORD FOLLOW_TERMINATED_SYMBOL_in_field_term16671_bits[]	= { ANTLR3_UINT64_LIT(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_TERMINATED_SYMBOL_in_field_term16671	= { FOLLOW_TERMINATED_SYMBOL_in_field_term16671_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term16673  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term16673_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term16673	= { FOLLOW_BY_SYMBOL_in_field_term16673_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_field_term16675  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_field_term16675_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_field_term16675	= { FOLLOW_text_string_in_field_term16675_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPTIONALLY_SYMBOL_in_field_term16680  */
static	ANTLR3_BITWORD FOLLOW_OPTIONALLY_SYMBOL_in_field_term16680_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPTIONALLY_SYMBOL_in_field_term16680	= { FOLLOW_OPTIONALLY_SYMBOL_in_field_term16680_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ENCLOSED_SYMBOL_in_field_term16683  */
static	ANTLR3_BITWORD FOLLOW_ENCLOSED_SYMBOL_in_field_term16683_bits[]	= { ANTLR3_UINT64_LIT(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_ENCLOSED_SYMBOL_in_field_term16683	= { FOLLOW_ENCLOSED_SYMBOL_in_field_term16683_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term16685  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term16685_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term16685	= { FOLLOW_BY_SYMBOL_in_field_term16685_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_field_term16687  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_field_term16687_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_field_term16687	= { FOLLOW_text_string_in_field_term16687_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ESCAPED_SYMBOL_in_field_term16692  */
static	ANTLR3_BITWORD FOLLOW_ESCAPED_SYMBOL_in_field_term16692_bits[]	= { ANTLR3_UINT64_LIT(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_ESCAPED_SYMBOL_in_field_term16692	= { FOLLOW_ESCAPED_SYMBOL_in_field_term16692_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_field_term16694  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_field_term16694_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_field_term16694	= { FOLLOW_BY_SYMBOL_in_field_term16694_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_field_term16696  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_field_term16696_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_field_term16696	= { FOLLOW_text_string_in_field_term16696_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LINES_SYMBOL_in_lines_clause16705  */
static	ANTLR3_BITWORD FOLLOW_LINES_SYMBOL_in_lines_clause16705_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000200000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_LINES_SYMBOL_in_lines_clause16705	= { FOLLOW_LINES_SYMBOL_in_lines_clause16705_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_line_term_in_lines_clause16707  */
static	ANTLR3_BITWORD FOLLOW_line_term_in_lines_clause16707_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(0x0000200000800000) };
static  ANTLR3_BITSET_LIST FOLLOW_line_term_in_lines_clause16707	= { FOLLOW_line_term_in_lines_clause16707_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_line_term16717  */
static	ANTLR3_BITWORD FOLLOW_set_in_line_term16717_bits[]	= { ANTLR3_UINT64_LIT(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_set_in_line_term16717	= { FOLLOW_set_in_line_term16717_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_line_term16725  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_line_term16725_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_line_term16725	= { FOLLOW_BY_SYMBOL_in_line_term16725_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_line_term16727  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_line_term16727_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_line_term16727	= { FOLLOW_text_string_in_line_term16727_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_user_list16736  */
static	ANTLR3_BITWORD FOLLOW_user_in_user_list16736_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_user_list16736	= { FOLLOW_user_in_user_list16736_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_user_list16739  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_user_list16739_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_user_list16739	= { FOLLOW_COMMA_SYMBOL_in_user_list16739_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_user_list16741  */
static	ANTLR3_BITWORD FOLLOW_user_in_user_list16741_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_user_list16741	= { FOLLOW_user_in_user_list16741_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_list16752  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_list16752_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_user_in_grant_list16752	= { FOLLOW_grant_user_in_grant_list16752_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_grant_list16755  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_grant_list16755_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0200000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_grant_list16755	= { FOLLOW_COMMA_SYMBOL_in_grant_list16755_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_grant_user_in_grant_list16757  */
static	ANTLR3_BITWORD FOLLOW_grant_user_in_grant_list16757_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_grant_user_in_grant_list16757	= { FOLLOW_grant_user_in_grant_list16757_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_user_in_grant_user16768  */
static	ANTLR3_BITWORD FOLLOW_user_in_grant_user16768_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000100000000) };
static  ANTLR3_BITSET_LIST FOLLOW_user_in_grant_user16768	= { FOLLOW_user_in_grant_user16768_bits, 3	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16775  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16775_bits[]	= { ANTLR3_UINT64_LIT(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), 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_IDENTIFIED_SYMBOL_in_grant_user16775	= { FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16775_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_grant_user16784  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_grant_user16784_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0400000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000002000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_grant_user16784	= { FOLLOW_BY_SYMBOL_in_grant_user16784_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PASSWORD_SYMBOL_in_grant_user16786  */
static	ANTLR3_BITWORD FOLLOW_PASSWORD_SYMBOL_in_grant_user16786_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PASSWORD_SYMBOL_in_grant_user16786	= { FOLLOW_PASSWORD_SYMBOL_in_grant_user16786_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_grant_user16789  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_grant_user16789_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_grant_user16789	= { FOLLOW_text_string_in_grant_user16789_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_WITH_SYMBOL_in_grant_user16798  */
static	ANTLR3_BITWORD FOLLOW_WITH_SYMBOL_in_grant_user16798_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_WITH_SYMBOL_in_grant_user16798	= { FOLLOW_WITH_SYMBOL_in_grant_user16798_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_grant_user16800  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_grant_user16800_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(0x0000000002000008) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_grant_user16800	= { FOLLOW_text_or_identifier_in_grant_user16800_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AS_SYMBOL_in_grant_user16809  */
static	ANTLR3_BITWORD FOLLOW_AS_SYMBOL_in_grant_user16809_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AS_SYMBOL_in_grant_user16809	= { FOLLOW_AS_SYMBOL_in_grant_user16809_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BY_SYMBOL_in_grant_user16815  */
static	ANTLR3_BITWORD FOLLOW_BY_SYMBOL_in_grant_user16815_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BY_SYMBOL_in_grant_user16815	= { FOLLOW_BY_SYMBOL_in_grant_user16815_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_grant_user16818  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_grant_user16818_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_grant_user16818	= { FOLLOW_text_string_in_grant_user16818_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_user16837  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_user16837_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(0x0000000000000060) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_user16837	= { FOLLOW_text_or_identifier_in_user16837_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_SIGN_SYMBOL_in_user16840  */
static	ANTLR3_BITWORD FOLLOW_AT_SIGN_SYMBOL_in_user16840_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_SIGN_SYMBOL_in_user16840	= { FOLLOW_AT_SIGN_SYMBOL_in_user16840_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_user16842  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_user16842_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_user16842	= { FOLLOW_text_or_identifier_in_user16842_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_AT_TEXT_SUFFIX_in_user16846  */
static	ANTLR3_BITWORD FOLLOW_AT_TEXT_SUFFIX_in_user16846_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_AT_TEXT_SUFFIX_in_user16846	= { FOLLOW_AT_TEXT_SUFFIX_in_user16846_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CURRENT_USER_SYMBOL_in_user16853  */
static	ANTLR3_BITWORD FOLLOW_CURRENT_USER_SYMBOL_in_user16853_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(0x0000000000000001) };
static  ANTLR3_BITSET_LIST FOLLOW_CURRENT_USER_SYMBOL_in_user16853	= { FOLLOW_CURRENT_USER_SYMBOL_in_user16853_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_parentheses_in_user16855  */
static	ANTLR3_BITWORD FOLLOW_parentheses_in_user16855_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_parentheses_in_user16855	= { FOLLOW_parentheses_in_user16855_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIKE_SYMBOL_in_like_clause16865  */
static	ANTLR3_BITWORD FOLLOW_LIKE_SYMBOL_in_like_clause16865_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LIKE_SYMBOL_in_like_clause16865	= { FOLLOW_LIKE_SYMBOL_in_like_clause16865_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_like_clause16867  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_like_clause16867_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_like_clause16867	= { FOLLOW_text_string_in_like_clause16867_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_like_clause_in_like_or_where16876  */
static	ANTLR3_BITWORD FOLLOW_like_clause_in_like_or_where16876_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_like_clause_in_like_or_where16876	= { FOLLOW_like_clause_in_like_or_where16876_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_where_clause_in_like_or_where16880  */
static	ANTLR3_BITWORD FOLLOW_where_clause_in_like_or_where16880_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_where_clause_in_like_or_where16880	= { FOLLOW_where_clause_in_like_or_where16880_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_online_option16891  */
static	ANTLR3_BITWORD FOLLOW_set_in_online_option16891_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_online_option16891	= { FOLLOW_set_in_online_option16891_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16910  */
static	ANTLR3_BITWORD FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16910_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16910	= { FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16910_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16916  */
static	ANTLR3_BITWORD FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16916_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16916	= { FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16916_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PARTITION_SYMBOL_in_use_partition16929  */
static	ANTLR3_BITWORD FOLLOW_PARTITION_SYMBOL_in_use_partition16929_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_PARTITION_SYMBOL_in_use_partition16929	= { FOLLOW_PARTITION_SYMBOL_in_use_partition16929_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_with_parentheses_in_use_partition16931  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_with_parentheses_in_use_partition16931_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_list_with_parentheses_in_use_partition16931	= { FOLLOW_identifier_list_with_parentheses_in_use_partition16931_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_column_name16948  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_column_name16948_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_column_name16948	= { FOLLOW_identifier_in_column_name16948_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_variants_in_column_ref16965  */
static	ANTLR3_BITWORD FOLLOW_column_ref_variants_in_column_ref16965_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_variants_in_column_ref16965	= { FOLLOW_column_ref_variants_in_column_ref16965_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_column_ref_variants16983  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_column_ref_variants16983_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_column_ref_variants16983	= { FOLLOW_DOT_SYMBOL_in_column_ref_variants16983_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_column_ref_variants16985  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_column_ref_variants16985_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_column_ref_variants16985	= { FOLLOW_identifier_in_column_ref_variants16985_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_column_ref_variants16990  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_column_ref_variants16990_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_qualified_identifier_in_column_ref_variants16990	= { FOLLOW_qualified_identifier_in_column_ref_variants16990_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_column_ref_variants17005  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_column_ref_variants17005_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_column_ref_variants17005	= { FOLLOW_DOT_SYMBOL_in_column_ref_variants17005_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_column_ref_variants17007  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_column_ref_variants17007_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_column_ref_variants17007	= { FOLLOW_identifier_in_column_ref_variants17007_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_variants_in_column_internal_ref17018  */
static	ANTLR3_BITWORD FOLLOW_column_ref_variants_in_column_internal_ref17018_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_variants_in_column_internal_ref17018	= { FOLLOW_column_ref_variants_in_column_internal_ref17018_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17035  */
static	ANTLR3_BITWORD FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17035_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17035	= { FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17035_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_column_ref_with_wildcard217054  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_column_ref_with_wildcard217054_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_qualified_identifier_in_column_ref_with_wildcard217054	= { FOLLOW_qualified_identifier_in_column_ref_with_wildcard217054_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217057  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217057_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000), ANTLR3_UINT64_LIT(0x0000020000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217057	= { FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217057_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_column_ref_with_wildcard217060  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_column_ref_with_wildcard217060_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_column_ref_with_wildcard217060	= { FOLLOW_identifier_in_column_ref_with_wildcard217060_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217064  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217064_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217064	= { FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217064_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_name17076  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_name17076_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_name17076	= { FOLLOW_identifier_in_index_name17076_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_index_ref17093  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_index_ref17093_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_index_ref17093	= { FOLLOW_identifier_in_index_ref17093_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_table_wild17110  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_table_wild17110_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_qualified_identifier_in_table_wild17110	= { FOLLOW_qualified_identifier_in_table_wild17110_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_wild17112  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_wild17112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_DOT_SYMBOL_in_table_wild17112	= { FOLLOW_DOT_SYMBOL_in_table_wild17112_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_table_wild17114  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_table_wild17114_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_table_wild17114	= { FOLLOW_MULT_OPERATOR_in_table_wild17114_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_schema_name17130  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_schema_name17130_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_schema_name17130	= { FOLLOW_identifier_in_schema_name17130_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_schema_ref17147  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_schema_ref17147_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_schema_ref17147	= { FOLLOW_identifier_in_schema_ref17147_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_procedure_name17164  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_procedure_name17164_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_procedure_name17164	= { FOLLOW_qualified_identifier_in_procedure_name17164_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_procedure_ref17181  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_procedure_ref17181_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_procedure_ref17181	= { FOLLOW_qualified_identifier_in_procedure_ref17181_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_function_name17198  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_function_name17198_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_function_name17198	= { FOLLOW_qualified_identifier_in_function_name17198_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_function_ref17215  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_function_ref17215_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_function_ref17215	= { FOLLOW_qualified_identifier_in_function_ref17215_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_trigger_name17232  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_trigger_name17232_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_trigger_name17232	= { FOLLOW_qualified_identifier_in_trigger_name17232_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_trigger_ref17249  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_trigger_ref17249_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_trigger_ref17249	= { FOLLOW_qualified_identifier_in_trigger_ref17249_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_variants_in_view_name17266  */
static	ANTLR3_BITWORD FOLLOW_table_name_variants_in_view_name17266_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_variants_in_view_name17266	= { FOLLOW_table_name_variants_in_view_name17266_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_view_ref17283  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_view_ref17283_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_view_ref17283	= { FOLLOW_qualified_identifier_in_view_ref17283_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_tablespace_name17300  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_tablespace_name17300_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_tablespace_name17300	= { FOLLOW_identifier_in_tablespace_name17300_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_tablespace_ref17317  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_tablespace_ref17317_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_tablespace_ref17317	= { FOLLOW_identifier_in_tablespace_ref17317_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_logfile_group_name17334  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_logfile_group_name17334_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_logfile_group_name17334	= { FOLLOW_identifier_in_logfile_group_name17334_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_logfile_group_ref17351  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_logfile_group_ref17351_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_logfile_group_ref17351	= { FOLLOW_identifier_in_logfile_group_ref17351_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_event_name17368  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_event_name17368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_event_name17368	= { FOLLOW_qualified_identifier_in_event_name17368_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_event_ref17385  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_event_ref17385_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_event_ref17385	= { FOLLOW_qualified_identifier_in_event_ref17385_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_udf_name17403  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_udf_name17403_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_udf_name17403	= { FOLLOW_identifier_in_udf_name17403_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_server_name17420  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_server_name17420_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_server_name17420	= { FOLLOW_text_or_identifier_in_server_name17420_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_server_ref17437  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_server_ref17437_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_server_ref17437	= { FOLLOW_text_or_identifier_in_server_ref17437_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_or_identifier_in_engine_ref17454  */
static	ANTLR3_BITWORD FOLLOW_text_or_identifier_in_engine_ref17454_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_or_identifier_in_engine_ref17454	= { FOLLOW_text_or_identifier_in_engine_ref17454_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_variants_in_table_name17471  */
static	ANTLR3_BITWORD FOLLOW_table_name_variants_in_table_name17471_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_variants_in_table_name17471	= { FOLLOW_table_name_variants_in_table_name17471_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_filter_table_ref17489  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_filter_table_ref17489_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_identifier_in_filter_table_ref17489	= { FOLLOW_identifier_in_filter_table_ref17489_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_filter_table_ref17491  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_filter_table_ref17491_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_filter_table_ref17491	= { FOLLOW_DOT_SYMBOL_in_filter_table_ref17491_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_filter_table_ref17493  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_filter_table_ref17493_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_filter_table_ref17493	= { FOLLOW_identifier_in_filter_table_ref17493_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_table_ref_with_wildcard17514  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_table_ref_with_wildcard17514_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_qualified_identifier_in_table_ref_with_wildcard17514	= { FOLLOW_qualified_identifier_in_table_ref_with_wildcard17514_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17517  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17517_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), 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_DOT_SYMBOL_in_table_ref_with_wildcard17517	= { FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17517_bits, 10	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17519  */
static	ANTLR3_BITWORD FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17519_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17519	= { FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17519_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_name_variants_in_table_ref17545  */
static	ANTLR3_BITWORD FOLLOW_table_name_variants_in_table_ref17545_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_table_name_variants_in_table_ref17545	= { FOLLOW_table_name_variants_in_table_ref17545_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_ref_no_db17562  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_ref_no_db17562_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_ref_no_db17562	= { FOLLOW_identifier_in_table_ref_no_db17562_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_qualified_identifier_in_table_name_variants17579  */
static	ANTLR3_BITWORD FOLLOW_qualified_identifier_in_table_name_variants17579_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_qualified_identifier_in_table_name_variants17579	= { FOLLOW_qualified_identifier_in_table_name_variants17579_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_table_name_variants17584  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_table_name_variants17584_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_table_name_variants17584	= { FOLLOW_DOT_SYMBOL_in_table_name_variants17584_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_table_name_variants17586  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_table_name_variants17586_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_table_name_variants17586	= { FOLLOW_identifier_in_table_name_variants17586_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_table_ref_list17595  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_table_ref_list17595_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_table_ref_list17595	= { FOLLOW_table_ref_in_table_ref_list17595_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_table_ref_list17598  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_table_ref_list17598_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000024000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_table_ref_list17598	= { FOLLOW_COMMA_SYMBOL_in_table_ref_list17598_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_in_table_ref_list17600  */
static	ANTLR3_BITWORD FOLLOW_table_ref_in_table_ref_list17600_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_in_table_ref_list17600	= { FOLLOW_table_ref_in_table_ref_list17600_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17618  */
static	ANTLR3_BITWORD FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17618_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17618	= { FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17618_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17621  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17621_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17621	= { FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17621_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17623  */
static	ANTLR3_BITWORD FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17623_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17623	= { FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17623_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_IDENTIFIER_in_pure_identifier17637  */
static	ANTLR3_BITWORD FOLLOW_IDENTIFIER_in_pure_identifier17637_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_IDENTIFIER_in_pure_identifier17637	= { FOLLOW_IDENTIFIER_in_pure_identifier17637_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17642  */
static	ANTLR3_BITWORD FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17642_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17642	= { FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17642_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17649  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17649_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17649	= { FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17649_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_identifier17659  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_identifier17659_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_identifier17659	= { FOLLOW_pure_identifier_in_identifier17659_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_in_identifier17664  */
static	ANTLR3_BITWORD FOLLOW_keyword_in_identifier17664_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_in_identifier17664	= { FOLLOW_keyword_in_identifier17664_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_identifier_list17673  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_identifier_list17673_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_identifier_list17673	= { FOLLOW_identifier_in_identifier_list17673_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_identifier_list17689  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_identifier_list17689_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_identifier_list17689	= { FOLLOW_COMMA_SYMBOL_in_identifier_list17689_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_identifier_list17691  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_identifier_list17691_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(0x0000100000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_identifier_list17691	= { FOLLOW_identifier_in_identifier_list17691_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17702  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17702_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17702	= { FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17702_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_list_in_identifier_list_with_parentheses17704  */
static	ANTLR3_BITWORD FOLLOW_identifier_list_in_identifier_list_with_parentheses17704_bits[]	= { ANTLR3_UINT64_LIT(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_identifier_list_in_identifier_list_with_parentheses17704	= { FOLLOW_identifier_list_in_identifier_list_with_parentheses17704_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17706  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17706_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17706	= { FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17706_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_qualified_identifier17715  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_qualified_identifier17715_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_identifier_in_qualified_identifier17715	= { FOLLOW_identifier_in_qualified_identifier17715_bits, 8	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOT_SYMBOL_in_qualified_identifier17731  */
static	ANTLR3_BITWORD FOLLOW_DOT_SYMBOL_in_qualified_identifier17731_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x0000000000000100), ANTLR3_UINT64_LIT(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000020000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOT_SYMBOL_in_qualified_identifier17731	= { FOLLOW_DOT_SYMBOL_in_qualified_identifier17731_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_qualified_identifier17733  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_qualified_identifier17733_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_qualified_identifier17733	= { FOLLOW_identifier_in_qualified_identifier17733_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_string_list17850  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_string_list17850_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_string_list17850	= { FOLLOW_OPEN_PAR_SYMBOL_in_string_list17850_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_string_list17852  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_string_list17852_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_string_list17852	= { FOLLOW_text_string_in_string_list17852_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_string_list17855  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_string_list17855_bits[]	= { ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000001000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_string_list17855	= { FOLLOW_COMMA_SYMBOL_in_string_list17855_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_string_list17857  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_string_list17857_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_string_list17857	= { FOLLOW_text_string_in_string_list17857_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17861  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17861_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17861	= { FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17861_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_text_string_in_text_string_no_linebreak17891  */
static	ANTLR3_BITWORD FOLLOW_text_string_in_text_string_no_linebreak17891_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_text_string_in_text_string_no_linebreak17891	= { FOLLOW_text_string_in_text_string_no_linebreak17891_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_literal_in_literal17908  */
static	ANTLR3_BITWORD FOLLOW_string_literal_in_literal17908_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_literal_in_literal17908	= { FOLLOW_string_literal_in_literal17908_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_num_literal_in_literal17913  */
static	ANTLR3_BITWORD FOLLOW_num_literal_in_literal17913_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_num_literal_in_literal17913	= { FOLLOW_num_literal_in_literal17913_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_temporal_literal_in_literal17925  */
static	ANTLR3_BITWORD FOLLOW_temporal_literal_in_literal17925_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_temporal_literal_in_literal17925	= { FOLLOW_temporal_literal_in_literal17925_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_null_literal_in_literal17930  */
static	ANTLR3_BITWORD FOLLOW_null_literal_in_literal17930_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_null_literal_in_literal17930	= { FOLLOW_null_literal_in_literal17930_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_bool_literal_in_literal17935  */
static	ANTLR3_BITWORD FOLLOW_bool_literal_in_literal17935_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_bool_literal_in_literal17935	= { FOLLOW_bool_literal_in_literal17935_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_literal17940  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_literal17940_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_UNDERSCORE_CHARSET_in_literal17940	= { FOLLOW_UNDERSCORE_CHARSET_in_literal17940_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_HEX_NUMBER_in_literal17943  */
static	ANTLR3_BITWORD FOLLOW_HEX_NUMBER_in_literal17943_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_HEX_NUMBER_in_literal17943	= { FOLLOW_HEX_NUMBER_in_literal17943_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_literal17950  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_literal17950_bits[]	= { ANTLR3_UINT64_LIT(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_UNDERSCORE_CHARSET_in_literal17950	= { FOLLOW_UNDERSCORE_CHARSET_in_literal17950_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_BIN_NUMBER_in_literal17953  */
static	ANTLR3_BITWORD FOLLOW_BIN_NUMBER_in_literal17953_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_BIN_NUMBER_in_literal17953	= { FOLLOW_BIN_NUMBER_in_literal17953_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_literal_in_signed_literal17963  */
static	ANTLR3_BITWORD FOLLOW_literal_in_signed_literal17963_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_literal_in_signed_literal17963	= { FOLLOW_literal_in_signed_literal17963_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_OPERATOR_in_signed_literal17968  */
static	ANTLR3_BITWORD FOLLOW_PLUS_OPERATOR_in_signed_literal17968_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_PLUS_OPERATOR_in_signed_literal17968	= { FOLLOW_PLUS_OPERATOR_in_signed_literal17968_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_signed_literal17970  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_signed_literal17970_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_signed_literal17970	= { FOLLOW_ulong_number_in_signed_literal17970_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_OPERATOR_in_signed_literal17975  */
static	ANTLR3_BITWORD FOLLOW_MINUS_OPERATOR_in_signed_literal17975_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0100000000000200), ANTLR3_UINT64_LIT(0x0000002000001000), ANTLR3_UINT64_LIT(0x0000000000010000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0800000000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_MINUS_OPERATOR_in_signed_literal17975	= { FOLLOW_MINUS_OPERATOR_in_signed_literal17975_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_ulong_number_in_signed_literal17977  */
static	ANTLR3_BITWORD FOLLOW_ulong_number_in_signed_literal17977_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_ulong_number_in_signed_literal17977	= { FOLLOW_ulong_number_in_signed_literal17977_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_string_in_string_literal17988  */
static	ANTLR3_BITWORD FOLLOW_string_in_string_literal17988_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_string_in_string_literal17988	= { FOLLOW_string_in_string_literal17988_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_TEXT_in_string18005  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_TEXT_in_string18005_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_TEXT_in_string18005	= { FOLLOW_NCHAR_TEXT_in_string18005_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNDERSCORE_CHARSET_in_string18010  */
static	ANTLR3_BITWORD FOLLOW_UNDERSCORE_CHARSET_in_string18010_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_UNDERSCORE_CHARSET_in_string18010	= { FOLLOW_UNDERSCORE_CHARSET_in_string18010_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_string18027  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_string18027_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(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_string18027	= { FOLLOW_SINGLE_QUOTED_TEXT_in_string18027_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_QUOTED_TEXT_in_string18034  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_QUOTED_TEXT_in_string18034_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(0x0000000020000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_QUOTED_TEXT_in_string18034	= { FOLLOW_DOUBLE_QUOTED_TEXT_in_string18034_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DATE_SYMBOL_in_temporal_literal18103  */
static	ANTLR3_BITWORD FOLLOW_DATE_SYMBOL_in_temporal_literal18103_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_DATE_SYMBOL_in_temporal_literal18103	= { FOLLOW_DATE_SYMBOL_in_temporal_literal18103_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18105  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18105_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18105	= { FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18105_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIME_SYMBOL_in_temporal_literal18110  */
static	ANTLR3_BITWORD FOLLOW_TIME_SYMBOL_in_temporal_literal18110_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TIME_SYMBOL_in_temporal_literal18110	= { FOLLOW_TIME_SYMBOL_in_temporal_literal18110_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18112  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18112_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18112	= { FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18112_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18117  */
static	ANTLR3_BITWORD FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18117_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18117	= { FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18117_bits, 12	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18119  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18119_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18119	= { FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18119_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_REAL_SYMBOL_in_real_literal18159  */
static	ANTLR3_BITWORD FOLLOW_REAL_SYMBOL_in_real_literal18159_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_REAL_SYMBOL_in_real_literal18159	= { FOLLOW_REAL_SYMBOL_in_real_literal18159_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_DOUBLE_SYMBOL_in_real_literal18163  */
static	ANTLR3_BITWORD FOLLOW_DOUBLE_SYMBOL_in_real_literal18163_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(0x0000000000008000) };
static  ANTLR3_BITSET_LIST FOLLOW_DOUBLE_SYMBOL_in_real_literal18163	= { FOLLOW_DOUBLE_SYMBOL_in_real_literal18163_bits, 11	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRECISION_SYMBOL_in_real_literal18165  */
static	ANTLR3_BITWORD FOLLOW_PRECISION_SYMBOL_in_real_literal18165_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_PRECISION_SYMBOL_in_real_literal18165	= { FOLLOW_PRECISION_SYMBOL_in_real_literal18165_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_float_options18177  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_float_options18177_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_float_options18177	= { FOLLOW_OPEN_PAR_SYMBOL_in_float_options18177_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_float_options18179  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_float_options18179_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000101000000000) };
static  ANTLR3_BITSET_LIST FOLLOW_INT_NUMBER_in_float_options18179	= { FOLLOW_INT_NUMBER_in_float_options18179_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_float_options18182  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_float_options18182_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_float_options18182	= { FOLLOW_COMMA_SYMBOL_in_float_options18182_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_float_options18184  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_float_options18184_bits[]	= { ANTLR3_UINT64_LIT(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_INT_NUMBER_in_float_options18184	= { FOLLOW_INT_NUMBER_in_float_options18184_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18188  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18188_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18188	= { FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18188_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_precision18197  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_precision18197_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_OPEN_PAR_SYMBOL_in_precision18197	= { FOLLOW_OPEN_PAR_SYMBOL_in_precision18197_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_precision18199  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_precision18199_bits[]	= { ANTLR3_UINT64_LIT(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_INT_NUMBER_in_precision18199	= { FOLLOW_INT_NUMBER_in_precision18199_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_precision18201  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_precision18201_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_COMMA_SYMBOL_in_precision18201	= { FOLLOW_COMMA_SYMBOL_in_precision18201_bits, 9	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_NUMBER_in_precision18203  */
static	ANTLR3_BITWORD FOLLOW_INT_NUMBER_in_precision18203_bits[]	= { ANTLR3_UINT64_LIT(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_INT_NUMBER_in_precision18203	= { FOLLOW_INT_NUMBER_in_precision18203_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_precision18205  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_precision18205_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_precision18205	= { FOLLOW_CLOSE_PAR_SYMBOL_in_precision18205_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_nchar_literal18214  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_nchar_literal18214_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_SYMBOL_in_nchar_literal18214	= { FOLLOW_NCHAR_SYMBOL_in_nchar_literal18214_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nchar_literal18221  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nchar_literal18221_bits[]	= { ANTLR3_UINT64_LIT(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_NATIONAL_SYMBOL_in_nchar_literal18221	= { FOLLOW_NATIONAL_SYMBOL_in_nchar_literal18221_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_nchar_literal18223  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_nchar_literal18223_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CHAR_SYMBOL_in_nchar_literal18223	= { FOLLOW_CHAR_SYMBOL_in_nchar_literal18223_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_varchar_literal18233  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_varchar_literal18233_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHAR_SYMBOL_in_varchar_literal18233	= { FOLLOW_CHAR_SYMBOL_in_varchar_literal18233_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_varchar_literal18235  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_varchar_literal18235_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_varchar_literal18235	= { FOLLOW_VARYING_SYMBOL_in_varchar_literal18235_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18240  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18240_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18240	= { FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18240_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18249  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18249_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18249	= { FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18249_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18251  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18251_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18251	= { FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18251_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18256  */
static	ANTLR3_BITWORD FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18256_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18256	= { FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18256_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18261  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18261_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000004000) };
static  ANTLR3_BITSET_LIST FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18261	= { FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18261_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18263  */
static	ANTLR3_BITWORD FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18263_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18263	= { FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18263_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18268  */
static	ANTLR3_BITWORD FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18268_bits[]	= { ANTLR3_UINT64_LIT(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_NATIONAL_SYMBOL_in_nvarchar_literal18268	= { FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18268_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CHAR_SYMBOL_in_nvarchar_literal18270  */
static	ANTLR3_BITWORD FOLLOW_CHAR_SYMBOL_in_nvarchar_literal18270_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_CHAR_SYMBOL_in_nvarchar_literal18270	= { FOLLOW_CHAR_SYMBOL_in_nvarchar_literal18270_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18272  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18272_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18272	= { FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18272_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18277  */
static	ANTLR3_BITWORD FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18277_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(0x0000000000000000), ANTLR3_UINT64_LIT(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_NCHAR_SYMBOL_in_nvarchar_literal18277	= { FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18277_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18279  */
static	ANTLR3_BITWORD FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18279_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18279	= { FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18279_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18288  */
static	ANTLR3_BITWORD FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18288_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18288	= { FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18288_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_identifier_in_text_or_identifier18293  */
static	ANTLR3_BITWORD FOLLOW_identifier_in_text_or_identifier18293_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_identifier_in_text_or_identifier18293	= { FOLLOW_identifier_in_text_or_identifier18293_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_real_ulonglong_number_in_size_number18304  */
static	ANTLR3_BITWORD FOLLOW_real_ulonglong_number_in_size_number18304_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_real_ulonglong_number_in_size_number18304	= { FOLLOW_real_ulonglong_number_in_size_number18304_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_pure_identifier_in_size_number18309  */
static	ANTLR3_BITWORD FOLLOW_pure_identifier_in_size_number18309_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_pure_identifier_in_size_number18309	= { FOLLOW_pure_identifier_in_size_number18309_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_parentheses18319  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_parentheses18319_bits[]	= { ANTLR3_UINT64_LIT(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_parentheses18319	= { FOLLOW_OPEN_PAR_SYMBOL_in_parentheses18319_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18321  */
static	ANTLR3_BITWORD FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18321_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18321	= { FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18321_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_keyword_sp_in_keyword18363  */
static	ANTLR3_BITWORD FOLLOW_keyword_sp_in_keyword18363_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_keyword_sp_in_keyword18363	= { FOLLOW_keyword_sp_in_keyword18363_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_keyword18368  */
static	ANTLR3_BITWORD FOLLOW_set_in_keyword18368_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_set_in_keyword18368	= { FOLLOW_set_in_keyword18368_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_OPEN_PAR_SYMBOL_in_synpred1_MySQL11103  */
static	ANTLR3_BITWORD FOLLOW_OPEN_PAR_SYMBOL_in_synpred1_MySQL11103_bits[]	= { ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFF0), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0xFFFFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x01FFFFFFFFFFFFFF), ANTLR3_UINT64_LIT(0x4A8C000230393170), ANTLR3_UINT64_LIT(0x010C20002400020A), ANTLR3_UINT64_LIT(0x0200002810061100), ANTLR3_UINT64_LIT(0x8159108482811000), ANTLR3_UINT64_LIT(0x0000004180003401), ANTLR3_UINT64_LIT(0x2980001A0A000002), ANTLR3_UINT64_LIT(0x0000000000048B80) };
static  ANTLR3_BITSET_LIST FOLLOW_OPEN_PAR_SYMBOL_in_synpred1_MySQL11103	= { FOLLOW_OPEN_PAR_SYMBOL_in_synpred1_MySQL11103_bits, 13	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_expression_in_synpred1_MySQL11105  */
static	ANTLR3_BITWORD FOLLOW_expression_in_synpred1_MySQL11105_bits[]	= { ANTLR3_UINT64_LIT(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_expression_in_synpred1_MySQL11105	= { FOLLOW_expression_in_synpred1_MySQL11105_bits, 7	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_COMMA_SYMBOL_in_synpred1_MySQL11107  */
static	ANTLR3_BITWORD FOLLOW_COMMA_SYMBOL_in_synpred1_MySQL11107_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_COMMA_SYMBOL_in_synpred1_MySQL11107	= { FOLLOW_COMMA_SYMBOL_in_synpred1_MySQL11107_bits, 1	};
/** Bitset defining follow set for error recovery in rule state: FOLLOW_stored_function_call_in_synpred2_MySQL11224  */
static	ANTLR3_BITWORD FOLLOW_stored_function_call_in_synpred2_MySQL11224_bits[]	= { ANTLR3_UINT64_LIT(0x0000000000000002) };
static  ANTLR3_BITSET_LIST FOLLOW_stored_function_call_in_synpred2_MySQL11224	= { FOLLOW_stored_function_call_in_synpred2_MySQL11224_bits, 1	};


/* ==============================================
 * Parsing rules
 */
/**
 * $ANTLR start query
 * MySQL.g:431: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:431:6: ( ( statement ( SEMICOLON_SYMBOL )? )? EOF )
        // MySQL.g:432:2: ( statement ( SEMICOLON_SYMBOL )? )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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

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

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

            	            switch (alt1)
            	            {
            	        	case 1:
            	        	    // MySQL.g:432:13: SEMICOLON_SYMBOL
            	        	    {
            	        	        SEMICOLON_SYMBOL2 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_query441);
            	        	        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_query446);
            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:435: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_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 | other_administrative_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_statement_return load_statement14;
    #undef	RETURN_TYPE_load_statement14
    #define	RETURN_TYPE_load_statement14 MySQLParser_load_statement_return

    MySQLParser_replace_statement_return replace_statement15;
    #undef	RETURN_TYPE_replace_statement15
    #define	RETURN_TYPE_replace_statement15 MySQLParser_replace_statement_return

    MySQLParser_select_statement_return select_statement16;
    #undef	RETURN_TYPE_select_statement16
    #define	RETURN_TYPE_select_statement16 MySQLParser_select_statement_return

    MySQLParser_update_statement_return update_statement17;
    #undef	RETURN_TYPE_update_statement17
    #define	RETURN_TYPE_update_statement17 MySQLParser_update_statement_return

    MySQLParser_partitioning_return partitioning18;
    #undef	RETURN_TYPE_partitioning18
    #define	RETURN_TYPE_partitioning18 MySQLParser_partitioning_return

    MySQLParser_transaction_or_locking_statement_return transaction_or_locking_statement19;
    #undef	RETURN_TYPE_transaction_or_locking_statement19
    #define	RETURN_TYPE_transaction_or_locking_statement19 MySQLParser_transaction_or_locking_statement_return

    MySQLParser_replication_statement_return replication_statement20;
    #undef	RETURN_TYPE_replication_statement20
    #define	RETURN_TYPE_replication_statement20 MySQLParser_replication_statement_return

    MySQLParser_prepared_statement_return prepared_statement21;
    #undef	RETURN_TYPE_prepared_statement21
    #define	RETURN_TYPE_prepared_statement21 MySQLParser_prepared_statement_return

    MySQLParser_account_management_statement_return account_management_statement22;
    #undef	RETURN_TYPE_account_management_statement22
    #define	RETURN_TYPE_account_management_statement22 MySQLParser_account_management_statement_return

    MySQLParser_table_administration_statement_return table_administration_statement23;
    #undef	RETURN_TYPE_table_administration_statement23
    #define	RETURN_TYPE_table_administration_statement23 MySQLParser_table_administration_statement_return

    MySQLParser_install_uninstall_statment_return install_uninstall_statment24;
    #undef	RETURN_TYPE_install_uninstall_statment24
    #define	RETURN_TYPE_install_uninstall_statment24 MySQLParser_install_uninstall_statment_return

    MySQLParser_set_statement_return set_statement25;
    #undef	RETURN_TYPE_set_statement25
    #define	RETURN_TYPE_set_statement25 MySQLParser_set_statement_return

    MySQLParser_show_statement_return show_statement26;
    #undef	RETURN_TYPE_show_statement26
    #define	RETURN_TYPE_show_statement26 MySQLParser_show_statement_return

    MySQLParser_other_administrative_statement_return other_administrative_statement27;
    #undef	RETURN_TYPE_other_administrative_statement27
    #define	RETURN_TYPE_other_administrative_statement27 MySQLParser_other_administrative_statement_return

    MySQLParser_utility_statement_return utility_statement28;
    #undef	RETURN_TYPE_utility_statement28
    #define	RETURN_TYPE_utility_statement28 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_statement14.tree = NULL;

    replace_statement15.tree = NULL;

    select_statement16.tree = NULL;

    update_statement17.tree = NULL;

    partitioning18.tree = NULL;

    transaction_or_locking_statement19.tree = NULL;

    replication_statement20.tree = NULL;

    prepared_statement21.tree = NULL;

    account_management_statement22.tree = NULL;

    table_administration_statement23.tree = NULL;

    install_uninstall_statment24.tree = NULL;

    set_statement25.tree = NULL;

    show_statement26.tree = NULL;

    other_administrative_statement27.tree = NULL;

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




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:435:10: ( alter_statement | create_statement | drop_statement | rename_table_statement | truncate_table_statement | call_statement | delete_statement | do_statement | handler_statement | insert_statement | load_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 | other_administrative_statement | utility_statement )

            ANTLR3_UINT32 alt3;

            alt3=25;

            {
                int LA3_0 = LA(1);
                if ( (LA3_0 == ALTER_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case USER_SYMBOL:
                    	{
                    		alt3=19;
                    	}
                        break;
                    case SERVER_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case DEFINER_SYMBOL:
                    case EVENT_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case VIEW_SYMBOL:
                    case DATABASE_SYMBOL:
                    case IGNORE_SYMBOL:
                    case OFFLINE_SYMBOL:
                    case ONLINE_SYMBOL:
                    case PROCEDURE_SYMBOL:
                    case SQL_SYMBOL:
                    case TABLE_SYMBOL:
                    	{
                    		alt3=1;
                    	}
                        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        = 1;


                        goto rulestatementEx;

                    }

                }
                else if ( (LA3_0 == CREATE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case USER_SYMBOL:
                    	{
                    		alt3=19;
                    	}
                        break;
                    case SERVER_SYMBOL:
                    case AGGREGATE_SYMBOL:
                    case ALGORITHM_SYMBOL:
                    case DEFINER_SYMBOL:
                    case EVENT_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case VIEW_SYMBOL:
                    case DATABASE_SYMBOL:
                    case FULLTEXT_SYMBOL:
                    case INDEX_SYMBOL:
                    case OFFLINE_SYMBOL:
                    case ONLINE_SYMBOL:
                    case OR_SYMBOL:
                    case PROCEDURE_SYMBOL:
                    case SPATIAL_SYMBOL:
                    case SQL_SYMBOL:
                    case TABLE_SYMBOL:
                    case TRIGGER_SYMBOL:
                    case UNIQUE_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=18;
                    	}
                        break;
                    case USER_SYMBOL:
                    	{
                    		alt3=19;
                    	}
                        break;
                    case SERVER_SYMBOL:
                    case EVENT_SYMBOL:
                    case LOGFILE_SYMBOL:
                    case TABLES_SYMBOL:
                    case TABLESPACE_SYMBOL:
                    case TEMPORARY_SYMBOL:
                    case FUNCTION_SYMBOL:
                    case VIEW_SYMBOL:
                    case DATABASE_SYMBOL:
                    case INDEX_SYMBOL:
                    case OFFLINE_SYMBOL:
                    case ONLINE_SYMBOL:
                    case PROCEDURE_SYMBOL:
                    case TABLE_SYMBOL:
                    case TRIGGER_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 TABLES_SYMBOL:
                    case TABLE_SYMBOL:
                    	{
                    		alt3=4;
                    	}
                        break;
                    case USER_SYMBOL:
                    	{
                    		alt3=19;
                    	}
                        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))
                {
                    switch ( LA(2) )
                    {
                    case INDEX_SYMBOL:
                    	{
                    		alt3=24;
                    	}
                        break;
                    case DATA_SYMBOL:
                    	{
                    		{
                    		    int LA3_110 = LA(3);
                    		    if ( (!( ((SERVER_VERSION < 50500)) )))
                    		    {
                    		        alt3=11;
                    		    }
                    		    else if ( ((SERVER_VERSION < 50500)))
                    		    {
                    		        alt3=17;
                    		    }
                    		    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 XML_SYMBOL:
                    	{
                    		alt3=11;
                    	}
                        break;
                    case TABLE_SYMBOL:
                    	{
                    		alt3=17;
                    	}
                        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        = 11;


                        goto rulestatementEx;

                    }

                }
                else if ( (LA3_0 == REPLACE_SYMBOL))
                {
                    alt3=12;
                }
                else if ( (LA3_0 == OPEN_PAR_SYMBOL || LA3_0 == SELECT_SYMBOL))
                {
                    alt3=13;
                }
                else if ( (LA3_0 == UPDATE_SYMBOL))
                {
                    alt3=14;
                }
                else if ( (LA3_0 == PARTITION_SYMBOL))
                {
                    alt3=15;
                }
                else if ( (LA3_0 == START_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case TRANSACTION_SYMBOL:
                    	{
                    		alt3=16;
                    	}
                        break;
                    case GROUP_REPLICATION_SYMBOL:
                    case SLAVE_SYMBOL:
                    	{
                    		alt3=17;
                    	}
                        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 >= ROLLBACK_SYMBOL) && (LA3_0 <= SAVEPOINT_SYMBOL)) || LA3_0 == XA_SYMBOL || LA3_0 == LOCK_SYMBOL || LA3_0 == RELEASE_SYMBOL || LA3_0 == UNLOCK_SYMBOL))
                {
                    alt3=16;
                }
                else if ( (LA3_0 == STOP_SYMBOL || LA3_0 == CHANGE_SYMBOL || LA3_0 == PURGE_SYMBOL))
                {
                    alt3=17;
                }
                else if ( (LA3_0 == DEALLOCATE_SYMBOL || LA3_0 == EXECUTE_SYMBOL || LA3_0 == PREPARE_SYMBOL))
                {
                    alt3=18;
                }
                else if ( (LA3_0 == GRANT_SYMBOL || LA3_0 == REVOKE_SYMBOL))
                {
                    alt3=19;
                }
                else if ( (LA3_0 == SET_SYMBOL))
                {
                    {
                        int LA3_34 = LA(2);
                        if ( (LA3_34 == PASSWORD_SYMBOL))
                        {
                            {
                                int LA3_116 = LA(3);
                                if ( (!( ((LA(1) == SET_SYMBOL && LA(2) != PASSWORD_SYMBOL)) )))
                                {
                                    alt3=19;
                                }
                                else if ( ((LA(1) == SET_SYMBOL && LA(2) != PASSWORD_SYMBOL)))
                                {
                                    alt3=22;
                                }
                                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        = 116;


                                    goto rulestatementEx;

                                }
                            }
                        }
                        else if ( (((LA3_34 >= ACCOUNT_SYMBOL) && (LA3_34 <= PARTITIONS_SYMBOL)) || ((LA3_34 >= PHASE_SYMBOL) && (LA3_34 <= YEAR_SYMBOL)) || ((LA3_34 >= AT_AT_SIGN_SYMBOL) && (LA3_34 <= AT_TEXT_SUFFIX)) || LA3_34 == BACK_TICK_QUOTED_ID || LA3_34 == CHAR_SYMBOL || LA3_34 == DEFAULT_SYMBOL || LA3_34 == DOUBLE_QUOTED_TEXT || LA3_34 == IDENTIFIER))
                        {
                            alt3=22;
                        }
                        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        = 34;


                            goto rulestatementEx;

                        }
                    }
                }
                else if ( (LA3_0 == BACKUP_SYMBOL || LA3_0 == CHECKSUM_SYMBOL || LA3_0 == REPAIR_SYMBOL || LA3_0 == RESTORE_SYMBOL || LA3_0 == ANALYZE_SYMBOL || LA3_0 == CHECK_SYMBOL || LA3_0 == OPTIMIZE_SYMBOL))
                {
                    alt3=20;
                }
                else if ( (LA3_0 == INSTALL_SYMBOL || LA3_0 == UNINSTALL_SYMBOL))
                {
                    alt3=21;
                }
                else if ( (LA3_0 == SHOW_SYMBOL))
                {
                    alt3=23;
                }
                else if ( (LA3_0 == CACHE_SYMBOL || LA3_0 == FLUSH_SYMBOL || LA3_0 == RESET_SYMBOL || LA3_0 == BINLOG_SYMBOL || LA3_0 == SHUTDOWN_SYMBOL || LA3_0 == KILL_SYMBOL))
                {
                    alt3=24;
                }
                else if ( (LA3_0 == HELP_SYMBOL || ((LA3_0 >= DESCRIBE_SYMBOL) && (LA3_0 <= DESC_SYMBOL)) || LA3_0 == USE_SYMBOL))
                {
                    alt3=25;
                }
                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:437:2: alter_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_alter_statement_in_statement457);
        	        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:438:4: create_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_create_statement_in_statement462);
        	        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:439:4: drop_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_drop_statement_in_statement467);
        	        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:440:4: rename_table_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_rename_table_statement_in_statement472);
        	        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:441:4: truncate_table_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_truncate_table_statement_in_statement477);
        	        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:444:4: call_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_call_statement_in_statement486);
        	        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:445:4: delete_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_delete_statement_in_statement491);
        	        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:446:4: do_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_do_statement_in_statement496);
        	        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:447:4: handler_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_handler_statement_in_statement501);
        	        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:448:4: insert_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_insert_statement_in_statement506);
        	        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:449:4: load_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_load_statement_in_statement511);
        	        load_statement14=load_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_replace_statement_in_statement516);
        	        replace_statement15=replace_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_select_statement_in_statement521);
        	        select_statement16=select_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_update_statement_in_statement526);
        	        update_statement17=update_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_partitioning_in_statement534);
        	        partitioning18=partitioning(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_transaction_or_locking_statement_in_statement544);
        	        transaction_or_locking_statement19=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_statement19.tree);

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


        	        FOLLOWPUSH(FOLLOW_replication_statement_in_statement551);
        	        replication_statement20=replication_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_prepared_statement_in_statement558);
        	        prepared_statement21=prepared_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_account_management_statement_in_statement567);
        	        account_management_statement22=account_management_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_table_administration_statement_in_statement572);
        	        table_administration_statement23=table_administration_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_install_uninstall_statment_in_statement577);
        	        install_uninstall_statment24=install_uninstall_statment(ctx);

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

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

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:468: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_statement584);
        	        set_statement25=set_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_show_statement_in_statement590);
        	        show_statement26=show_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_other_administrative_statement_in_statement595);
        	        other_administrative_statement27=other_administrative_statement(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_utility_statement_in_statement604);
        	        utility_statement28=utility_statement(ctx);

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

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, utility_statement28.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:478:1: alter_statement : ALTER_SYMBOL ^ ( alter_database | alter_log_file_group | FUNCTION_SYMBOL function_ref ( routine_alter_options )? | PROCEDURE_SYMBOL procedure_ref ( routine_alter_options )? | 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_SYMBOL29;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL32;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL35;
    MySQLParser_alter_database_return alter_database30;
    #undef	RETURN_TYPE_alter_database30
    #define	RETURN_TYPE_alter_database30 MySQLParser_alter_database_return

    MySQLParser_alter_log_file_group_return alter_log_file_group31;
    #undef	RETURN_TYPE_alter_log_file_group31
    #define	RETURN_TYPE_alter_log_file_group31 MySQLParser_alter_log_file_group_return

    MySQLParser_function_ref_return function_ref33;
    #undef	RETURN_TYPE_function_ref33
    #define	RETURN_TYPE_function_ref33 MySQLParser_function_ref_return

    MySQLParser_routine_alter_options_return routine_alter_options34;
    #undef	RETURN_TYPE_routine_alter_options34
    #define	RETURN_TYPE_routine_alter_options34 MySQLParser_routine_alter_options_return

    MySQLParser_procedure_ref_return procedure_ref36;
    #undef	RETURN_TYPE_procedure_ref36
    #define	RETURN_TYPE_procedure_ref36 MySQLParser_procedure_ref_return

    MySQLParser_routine_alter_options_return routine_alter_options37;
    #undef	RETURN_TYPE_routine_alter_options37
    #define	RETURN_TYPE_routine_alter_options37 MySQLParser_routine_alter_options_return

    MySQLParser_alter_server_return alter_server38;
    #undef	RETURN_TYPE_alter_server38
    #define	RETURN_TYPE_alter_server38 MySQLParser_alter_server_return

    MySQLParser_alter_table_return alter_table39;
    #undef	RETURN_TYPE_alter_table39
    #define	RETURN_TYPE_alter_table39 MySQLParser_alter_table_return

    MySQLParser_alter_tablespace_return alter_tablespace40;
    #undef	RETURN_TYPE_alter_tablespace40
    #define	RETURN_TYPE_alter_tablespace40 MySQLParser_alter_tablespace_return

    MySQLParser_alter_event_return alter_event41;
    #undef	RETURN_TYPE_alter_event41
    #define	RETURN_TYPE_alter_event41 MySQLParser_alter_event_return

    MySQLParser_alter_view_return alter_view42;
    #undef	RETURN_TYPE_alter_view42
    #define	RETURN_TYPE_alter_view42 MySQLParser_alter_view_return

    pANTLR3_BASE_TREE ALTER_SYMBOL29_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL32_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL35_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALTER_SYMBOL29       = NULL;
    FUNCTION_SYMBOL32       = NULL;
    PROCEDURE_SYMBOL35       = NULL;
    alter_database30.tree = NULL;

    alter_log_file_group31.tree = NULL;

    function_ref33.tree = NULL;

    routine_alter_options34.tree = NULL;

    procedure_ref36.tree = NULL;

    routine_alter_options37.tree = NULL;

    alter_server38.tree = NULL;

    alter_table39.tree = NULL;

    alter_tablespace40.tree = NULL;

    alter_event41.tree = NULL;

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


    ALTER_SYMBOL29_tree   = NULL;
    FUNCTION_SYMBOL32_tree   = NULL;
    PROCEDURE_SYMBOL35_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:478:16: ( ALTER_SYMBOL ^ ( alter_database | alter_log_file_group | FUNCTION_SYMBOL function_ref ( routine_alter_options )? | PROCEDURE_SYMBOL procedure_ref ( routine_alter_options )? | alter_server | alter_table | alter_tablespace |{...}? alter_event | alter_view ) )
        // MySQL.g:479:3: ALTER_SYMBOL ^ ( alter_database | alter_log_file_group | FUNCTION_SYMBOL function_ref ( routine_alter_options )? | PROCEDURE_SYMBOL procedure_ref ( routine_alter_options )? | alter_server | alter_table | alter_tablespace |{...}? alter_event | alter_view )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

            if ( BACKTRACKING==0 ) {
            ALTER_SYMBOL29_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL29))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ALTER_SYMBOL29_tree, root_0));
            }

            // MySQL.g:480:3: ( alter_database | alter_log_file_group | FUNCTION_SYMBOL function_ref ( routine_alter_options )? | PROCEDURE_SYMBOL procedure_ref ( routine_alter_options )? | alter_server | alter_table | alter_tablespace |{...}? alter_event | alter_view )
            {
                int alt6=9;
                switch ( LA(1) )
                {
                case DATABASE_SYMBOL:
                	{
                		alt6=1;
                	}
                    break;
                case LOGFILE_SYMBOL:
                	{
                		alt6=2;
                	}
                    break;
                case FUNCTION_SYMBOL:
                	{
                		alt6=3;
                	}
                    break;
                case PROCEDURE_SYMBOL:
                	{
                		alt6=4;
                	}
                    break;
                case SERVER_SYMBOL:
                	{
                		alt6=5;
                	}
                    break;
                case IGNORE_SYMBOL:
                case OFFLINE_SYMBOL:
                case ONLINE_SYMBOL:
                case TABLE_SYMBOL:
                	{
                		alt6=6;
                	}
                    break;
                case TABLESPACE_SYMBOL:
                	{
                		alt6=7;
                	}
                    break;
                case DEFINER_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case EQUAL_OPERATOR:
                			{
                				{
                				    int LA6_15 = LA(3);
                				    if ( ((SERVER_VERSION >= 50100)))
                				    {
                				        alt6=8;
                				    }
                				    else if ( (ANTLR3_TRUE))
                				    {
                				        alt6=9;
                				    }
                				    else
                				    {
                				        if (BACKTRACKING>0)
                				        {
                				            FAILEDFLAG = ANTLR3_TRUE;
                				            return retval;
                				        }


                				        CONSTRUCTEX();
                				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                				        EXCEPTION->message      = (void *)"";
                				        EXCEPTION->decisionNum  = 6;
                				        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  = 6;
                		    EXCEPTION->state        = 10;


                		    goto rulealter_statementEx;

                		}

                	}
                    break;
                case EVENT_SYMBOL:
                	{
                		alt6=8;
                	}
                    break;
                case ALGORITHM_SYMBOL:
                case VIEW_SYMBOL:
                case SQL_SYMBOL:
                	{
                		alt6=9;
                	}
                    break;

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

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


                    goto rulealter_statementEx;

                }

                switch (alt6)
                {
            	case 1:
            	    // MySQL.g:481:2: alter_database
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_database_in_alter_statement624);
            	        alter_database30=alter_database(ctx);

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

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:482:4: alter_log_file_group
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_log_file_group_in_alter_statement629);
            	        alter_log_file_group31=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_group31.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:483:4: FUNCTION_SYMBOL function_ref ( routine_alter_options )?
            	    {
            	        FUNCTION_SYMBOL32 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_alter_statement634);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_function_ref_in_alter_statement636);
            	        function_ref33=function_ref(ctx);

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

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

            	        // MySQL.g:483:33: ( routine_alter_options )?
            	        {
            	            int alt4=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMENT_SYMBOL:
            	                case CONTAINS_SYMBOL:
            	                case LANGUAGE_SYMBOL:
            	                case NO_SYMBOL:
            	                case DETERMINISTIC_SYMBOL:
            	                case MODIFIES_SYMBOL:
            	                case NOT_SYMBOL:
            	                case READS_SYMBOL:
            	                case SQL_SYMBOL:
            	                	{
            	                		alt4=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt4)
            	            {
            	        	case 1:
            	        	    // MySQL.g:483:33: routine_alter_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_routine_alter_options_in_alter_statement638);
            	        	        routine_alter_options34=routine_alter_options(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:484:4: PROCEDURE_SYMBOL procedure_ref ( routine_alter_options )?
            	    {
            	        PROCEDURE_SYMBOL35 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_alter_statement644);
            	        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_procedure_ref_in_alter_statement646);
            	        procedure_ref36=procedure_ref(ctx);

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

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

            	        // MySQL.g:484:35: ( routine_alter_options )?
            	        {
            	            int alt5=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMENT_SYMBOL:
            	                case CONTAINS_SYMBOL:
            	                case LANGUAGE_SYMBOL:
            	                case NO_SYMBOL:
            	                case DETERMINISTIC_SYMBOL:
            	                case MODIFIES_SYMBOL:
            	                case NOT_SYMBOL:
            	                case READS_SYMBOL:
            	                case SQL_SYMBOL:
            	                	{
            	                		alt5=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt5)
            	            {
            	        	case 1:
            	        	    // MySQL.g:484:35: routine_alter_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_routine_alter_options_in_alter_statement648);
            	        	        routine_alter_options37=routine_alter_options(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:485:4: alter_server
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_server_in_alter_statement654);
            	        alter_server38=alter_server(ctx);

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

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

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:486:4: alter_table
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_table_in_alter_statement659);
            	        alter_table39=alter_table(ctx);

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

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

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:487:4: alter_tablespace
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_tablespace_in_alter_statement664);
            	        alter_tablespace40=alter_tablespace(ctx);

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

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

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:488: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_statement671);
            	        alter_event41=alter_event(ctx);

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

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

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:489:4: alter_view
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_view_in_alter_statement676);
            	        alter_view42=alter_view(ctx);

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

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_view42.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:493:1: alter_database : DATABASE_SYMBOL schema_ref ( ( database_option )+ | 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_SYMBOL43;
    pANTLR3_COMMON_TOKEN    UPGRADE_SYMBOL46;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL47;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL48;
    pANTLR3_COMMON_TOKEN    NAME_SYMBOL49;
    MySQLParser_schema_ref_return schema_ref44;
    #undef	RETURN_TYPE_schema_ref44
    #define	RETURN_TYPE_schema_ref44 MySQLParser_schema_ref_return

    MySQLParser_database_option_return database_option45;
    #undef	RETURN_TYPE_database_option45
    #define	RETURN_TYPE_database_option45 MySQLParser_database_option_return

    pANTLR3_BASE_TREE DATABASE_SYMBOL43_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_SYMBOL43       = NULL;
    UPGRADE_SYMBOL46       = NULL;
    DATA_SYMBOL47       = NULL;
    DIRECTORY_SYMBOL48       = NULL;
    NAME_SYMBOL49       = NULL;
    schema_ref44.tree = NULL;

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


    DATABASE_SYMBOL43_tree   = NULL;
    UPGRADE_SYMBOL46_tree   = NULL;
    DATA_SYMBOL47_tree   = NULL;
    DIRECTORY_SYMBOL48_tree   = NULL;
    NAME_SYMBOL49_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:493:15: ( DATABASE_SYMBOL schema_ref ( ( database_option )+ | UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL ) )
        // MySQL.g:494:2: DATABASE_SYMBOL schema_ref ( ( database_option )+ | UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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

            FOLLOWPUSH(FOLLOW_schema_ref_in_alter_database691);
            schema_ref44=schema_ref(ctx);

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

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

            // MySQL.g:495:2: ( ( database_option )+ | UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL )
            {
                int alt8=2;
                switch ( LA(1) )
                {
                case CHARSET_SYMBOL:
                case CHAR_SYMBOL:
                case COLLATE_SYMBOL:
                case DEFAULT_SYMBOL:
                	{
                		alt8=1;
                	}
                    break;
                case UPGRADE_SYMBOL:
                	{
                		alt8=2;
                	}
                    break;

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

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


                    goto rulealter_databaseEx;

                }

                switch (alt8)
                {
            	case 1:
            	    // MySQL.g:496:4: ( database_option )+
            	    {
            	        // MySQL.g:496:4: ( database_option )+
            	        {
            	            int cnt7=0;

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

            	        	}

            	        	switch (alt7)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:496:4: database_option
            	        	        {
            	        	            FOLLOWPUSH(FOLLOW_database_option_in_alter_database699);
            	        	            database_option45=database_option(ctx);

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

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

            	        	        }
            	        	        break;

            	        	    default:

            	        		if ( cnt7 >= 1 )
            	        		{
            	        		    goto loop7;
            	        		}
            	        		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;
            	        	}
            	        	cnt7++;
            	            }
            	            loop7: ;	/* Jump to here if this rule does not match */
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:497:5: UPGRADE_SYMBOL DATA_SYMBOL DIRECTORY_SYMBOL NAME_SYMBOL
            	    {
            	        UPGRADE_SYMBOL46 = (pANTLR3_COMMON_TOKEN) MATCHT(UPGRADE_SYMBOL, &FOLLOW_UPGRADE_SYMBOL_in_alter_database706);
            	        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_database708);
            	        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_database710);
            	        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_database712);
            	        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:501:1: alter_event : ( definer_clause )? EVENT_SYMBOL event_ref ( 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_event_ref_return event_ref52;
    #undef	RETURN_TYPE_event_ref52
    #define	RETURN_TYPE_event_ref52 MySQLParser_event_ref_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;

    event_ref52.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:501:12: ( ( definer_clause )? EVENT_SYMBOL event_ref ( 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:502:2: ( definer_clause )? EVENT_SYMBOL event_ref ( 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:502:2: ( definer_clause )?
            {
                int alt9=2;
                switch ( LA(1) )
                {
                    case DEFINER_SYMBOL:
                    	{
                    		alt9=1;
                    	}
                        break;
                }

                switch (alt9)
                {
            	case 1:
            	    // MySQL.g:502:2: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_alter_event724);
            	        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_event729);
            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_event_ref_in_alter_event731);
            event_ref52=event_ref(ctx);

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

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

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

                    	}
                        break;
                }

                switch (alt10)
                {
            	case 1:
            	    // MySQL.g:504:4: ON_SYMBOL SCHEDULE_SYMBOL schedule
            	    {
            	        ON_SYMBOL53 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event736);
            	        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_event738);
            	        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_event740);
            	        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:505:3: ( ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL )?
            {
                int alt12=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		alt12=1;
                    	}
                        break;
                }

                switch (alt12)
                {
            	case 1:
            	    // MySQL.g:505:4: ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL
            	    {
            	        ON_SYMBOL56 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event747);
            	        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_event749);
            	        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:505:32: ( NOT_SYMBOL )?
            	        {
            	            int alt11=2;
            	            switch ( LA(1) )
            	            {
            	                case NOT_SYMBOL:
            	                	{
            	                		alt11=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt11)
            	            {
            	        	case 1:
            	        	    // MySQL.g:505:32: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL58 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_alter_event751);
            	        	        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_event754);
            	        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:506:3: ( RENAME_SYMBOL TO_SYMBOL identifier )?
            {
                int alt13=2;
                switch ( LA(1) )
                {
                    case RENAME_SYMBOL:
                    	{
                    		alt13=1;
                    	}
                        break;
                }

                switch (alt13)
                {
            	case 1:
            	    // MySQL.g:506:4: RENAME_SYMBOL TO_SYMBOL identifier
            	    {
            	        RENAME_SYMBOL60 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_alter_event761);
            	        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_event763);
            	        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_event765);
            	        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:507:3: ( ENABLE_SYMBOL | DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )? )?
            {
                int alt15=3;
                switch ( LA(1) )
                {
                    case ENABLE_SYMBOL:
                    	{
                    		alt15=1;
                    	}
                        break;
                    case DISABLE_SYMBOL:
                    	{
                    		alt15=2;
                    	}
                        break;
                }

                switch (alt15)
                {
            	case 1:
            	    // MySQL.g:507:4: ENABLE_SYMBOL
            	    {
            	        ENABLE_SYMBOL63 = (pANTLR3_COMMON_TOKEN) MATCHT(ENABLE_SYMBOL, &FOLLOW_ENABLE_SYMBOL_in_alter_event772);
            	        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:507:20: DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )?
            	    {
            	        DISABLE_SYMBOL64 = (pANTLR3_COMMON_TOKEN) MATCHT(DISABLE_SYMBOL, &FOLLOW_DISABLE_SYMBOL_in_alter_event776);
            	        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:507:35: ( ON_SYMBOL SLAVE_SYMBOL )?
            	        {
            	            int alt14=2;
            	            switch ( LA(1) )
            	            {
            	                case ON_SYMBOL:
            	                	{
            	                		alt14=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt14)
            	            {
            	        	case 1:
            	        	    // MySQL.g:507:36: ON_SYMBOL SLAVE_SYMBOL
            	        	    {
            	        	        ON_SYMBOL65 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_alter_event779);
            	        	        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_event781);
            	        	        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:508:3: ( COMMENT_SYMBOL string_literal )?
            {
                int alt16=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    	{
                    		alt16=1;
                    	}
                        break;
                }

                switch (alt16)
                {
            	case 1:
            	    // MySQL.g:508:4: COMMENT_SYMBOL string_literal
            	    {
            	        COMMENT_SYMBOL67 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_alter_event790);
            	        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_event792);
            	        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:509:3: ( DO_SYMBOL compound_statement )?
            {
                int alt17=2;
                switch ( LA(1) )
                {
                    case DO_SYMBOL:
                    	{
                    		alt17=1;
                    	}
                        break;
                }

                switch (alt17)
                {
            	case 1:
            	    // MySQL.g:509:4: DO_SYMBOL compound_statement
            	    {
            	        DO_SYMBOL69 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_alter_event799);
            	        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_event801);
            	        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:512:1: alter_log_file_group : LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number )? ( 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    WAIT_SYMBOL80;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL81;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR82;
    pANTLR3_COMMON_TOKEN    IDENTIFIER83;
    MySQLParser_logfile_group_ref_return logfile_group_ref73;
    #undef	RETURN_TYPE_logfile_group_ref73
    #define	RETURN_TYPE_logfile_group_ref73 MySQLParser_logfile_group_ref_return

    MySQLParser_string_literal_return string_literal76;
    #undef	RETURN_TYPE_string_literal76
    #define	RETURN_TYPE_string_literal76 MySQLParser_string_literal_return

    MySQLParser_size_number_return size_number79;
    #undef	RETURN_TYPE_size_number79
    #define	RETURN_TYPE_size_number79 MySQLParser_size_number_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 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;
    WAIT_SYMBOL80       = NULL;
    ENGINE_SYMBOL81       = NULL;
    EQUAL_OPERATOR82       = NULL;
    IDENTIFIER83       = NULL;
    logfile_group_ref73.tree = NULL;

    string_literal76.tree = NULL;

    size_number79.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;
    WAIT_SYMBOL80_tree   = NULL;
    ENGINE_SYMBOL81_tree   = NULL;
    EQUAL_OPERATOR82_tree   = NULL;
    IDENTIFIER83_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:512:21: ( LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number )? ( WAIT_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? IDENTIFIER )
        // MySQL.g:513:2: LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ADD_SYMBOL UNDOFILE_SYMBOL string_literal ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number )? ( 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_group812);
            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_group814);
            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_logfile_group_ref_in_alter_log_file_group816);
            logfile_group_ref73=logfile_group_ref(ctx);

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

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

            ADD_SYMBOL74 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_log_file_group818);
            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_group820);
            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_group822);
            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:514:3: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number )?
            {
                int alt19=2;
                switch ( LA(1) )
                {
                    case INITIAL_SIZE_SYMBOL:
                    	{
                    		alt19=1;
                    	}
                        break;
                }

                switch (alt19)
                {
            	case 1:
            	    // MySQL.g:514:4: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
            	    {
            	        INITIAL_SIZE_SYMBOL77 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_log_file_group827);
            	        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:514:24: ( EQUAL_OPERATOR )?
            	        {
            	            int alt18=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt18=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt18)
            	            {
            	        	case 1:
            	        	    // MySQL.g:514:24: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR78 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group829);
            	        	        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;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_size_number_in_alter_log_file_group832);
            	        size_number79=size_number(ctx);

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

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

            	    }
            	    break;

                }
            }

            // MySQL.g:514:54: ( WAIT_SYMBOL )?
            {
                int alt20=2;
                switch ( LA(1) )
                {
                    case WAIT_SYMBOL:
                    	{
                    		alt20=1;
                    	}
                        break;
                }

                switch (alt20)
                {
            	case 1:
            	    // MySQL.g:514:54: WAIT_SYMBOL
            	    {
            	        WAIT_SYMBOL80 = (pANTLR3_COMMON_TOKEN) MATCHT(WAIT_SYMBOL, &FOLLOW_WAIT_SYMBOL_in_alter_log_file_group836);
            	        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_group839);
            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:514:81: ( EQUAL_OPERATOR )?
            {
                int alt21=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt21=1;
                    	}
                        break;
                }

                switch (alt21)
                {
            	case 1:
            	    // MySQL.g:514:81: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR82 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_log_file_group841);
            	        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_group844);
            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_server
 * MySQL.g:517:1: alter_server : SERVER_SYMBOL server_ref server_options ;
 */
static MySQLParser_alter_server_return
alter_server(pMySQLParser ctx)
{
    MySQLParser_alter_server_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SERVER_SYMBOL84;
    MySQLParser_server_ref_return server_ref85;
    #undef	RETURN_TYPE_server_ref85
    #define	RETURN_TYPE_server_ref85 MySQLParser_server_ref_return

    MySQLParser_server_options_return server_options86;
    #undef	RETURN_TYPE_server_options86
    #define	RETURN_TYPE_server_options86 MySQLParser_server_options_return

    pANTLR3_BASE_TREE SERVER_SYMBOL84_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SERVER_SYMBOL84       = NULL;
    server_ref85.tree = NULL;

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


    SERVER_SYMBOL84_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:517:13: ( SERVER_SYMBOL server_ref server_options )
        // MySQL.g:518:2: SERVER_SYMBOL server_ref server_options
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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

            FOLLOWPUSH(FOLLOW_server_ref_in_alter_server855);
            server_ref85=server_ref(ctx);

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

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

            FOLLOWPUSH(FOLLOW_server_options_in_alter_server857);
            server_options86=server_options(ctx);

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

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_options86.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:521:1: alter_table : ( online_option )? ( IGNORE_SYMBOL )? TABLE_SYMBOL table_ref ( 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_SYMBOL88;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL89;
    MySQLParser_online_option_return online_option87;
    #undef	RETURN_TYPE_online_option87
    #define	RETURN_TYPE_online_option87 MySQLParser_online_option_return

    MySQLParser_table_ref_return table_ref90;
    #undef	RETURN_TYPE_table_ref90
    #define	RETURN_TYPE_table_ref90 MySQLParser_table_ref_return

    MySQLParser_alter_table_commands_return alter_table_commands91;
    #undef	RETURN_TYPE_alter_table_commands91
    #define	RETURN_TYPE_alter_table_commands91 MySQLParser_alter_table_commands_return

    pANTLR3_BASE_TREE IGNORE_SYMBOL88_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL89_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IGNORE_SYMBOL88       = NULL;
    TABLE_SYMBOL89       = NULL;
    online_option87.tree = NULL;

    table_ref90.tree = NULL;

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


    IGNORE_SYMBOL88_tree   = NULL;
    TABLE_SYMBOL89_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:521:12: ( ( online_option )? ( IGNORE_SYMBOL )? TABLE_SYMBOL table_ref ( alter_table_commands )? )
        // MySQL.g:522:2: ( online_option )? ( IGNORE_SYMBOL )? TABLE_SYMBOL table_ref ( alter_table_commands )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:522:2: ( online_option )?
            {
                int alt22=2;
                switch ( LA(1) )
                {
                    case OFFLINE_SYMBOL:
                    case ONLINE_SYMBOL:
                    	{
                    		alt22=1;
                    	}
                        break;
                }

                switch (alt22)
                {
            	case 1:
            	    // MySQL.g:522:2: online_option
            	    {
            	        FOLLOWPUSH(FOLLOW_online_option_in_alter_table866);
            	        online_option87=online_option(ctx);

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

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

            	    }
            	    break;

                }
            }

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

                switch (alt23)
                {
            	case 1:
            	    // MySQL.g:522:17: IGNORE_SYMBOL
            	    {
            	        IGNORE_SYMBOL88 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_alter_table869);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

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

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

            FOLLOWPUSH(FOLLOW_table_ref_in_alter_table874);
            table_ref90=table_ref(ctx);

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

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

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

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

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_table_commands91.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:525: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_SYMBOL92;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL93;
    pANTLR3_COMMON_TOKEN    IMPORT_SYMBOL94;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL95;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL97;
    MySQLParser_alter_table_list_item_return alter_table_list_item96;
    #undef	RETURN_TYPE_alter_table_list_item96
    #define	RETURN_TYPE_alter_table_list_item96 MySQLParser_alter_table_list_item_return

    MySQLParser_alter_table_list_item_return alter_table_list_item98;
    #undef	RETURN_TYPE_alter_table_list_item98
    #define	RETURN_TYPE_alter_table_list_item98 MySQLParser_alter_table_list_item_return

    MySQLParser_partitioning_return partitioning99;
    #undef	RETURN_TYPE_partitioning99
    #define	RETURN_TYPE_partitioning99 MySQLParser_partitioning_return

    MySQLParser_remove_partitioning_return remove_partitioning100;
    #undef	RETURN_TYPE_remove_partitioning100
    #define	RETURN_TYPE_remove_partitioning100 MySQLParser_remove_partitioning_return

    MySQLParser_remove_partitioning_return remove_partitioning101;
    #undef	RETURN_TYPE_remove_partitioning101
    #define	RETURN_TYPE_remove_partitioning101 MySQLParser_remove_partitioning_return

    MySQLParser_partitioning_return partitioning102;
    #undef	RETURN_TYPE_partitioning102
    #define	RETURN_TYPE_partitioning102 MySQLParser_partitioning_return

    MySQLParser_alter_partition_return alter_partition103;
    #undef	RETURN_TYPE_alter_partition103
    #define	RETURN_TYPE_alter_partition103 MySQLParser_alter_partition_return

    pANTLR3_BASE_TREE DISCARD_SYMBOL92_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL93_tree;
    pANTLR3_BASE_TREE IMPORT_SYMBOL94_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL95_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL97_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DISCARD_SYMBOL92       = NULL;
    TABLESPACE_SYMBOL93       = NULL;
    IMPORT_SYMBOL94       = NULL;
    TABLESPACE_SYMBOL95       = NULL;
    COMMA_SYMBOL97       = NULL;
    alter_table_list_item96.tree = NULL;

    alter_table_list_item98.tree = NULL;

    partitioning99.tree = NULL;

    remove_partitioning100.tree = NULL;

    remove_partitioning101.tree = NULL;

    partitioning102.tree = NULL;

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


    DISCARD_SYMBOL92_tree   = NULL;
    TABLESPACE_SYMBOL93_tree   = NULL;
    IMPORT_SYMBOL94_tree   = NULL;
    TABLESPACE_SYMBOL95_tree   = NULL;
    COMMA_SYMBOL97_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:525: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 alt28;

            alt28=6;

            {
                int LA28_0 = LA(1);
                if ( (LA28_0 == DISCARD_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case TABLESPACE_SYMBOL:
                    	{
                    		alt28=1;
                    	}
                        break;
                    case PARTITION_SYMBOL:
                    	{
                    		alt28=6;
                    	}
                        break;

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

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


                        goto rulealter_table_commandsEx;

                    }

                }
                else if ( (LA28_0 == IMPORT_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case TABLESPACE_SYMBOL:
                    	{
                    		alt28=2;
                    	}
                        break;
                    case PARTITION_SYMBOL:
                    	{
                    		alt28=6;
                    	}
                        break;

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

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


                        goto rulealter_table_commandsEx;

                    }

                }
                else if ( (((LA28_0 >= CHARSET_SYMBOL) && (LA28_0 <= CHECKSUM_SYMBOL)) || LA28_0 == COMMENT_SYMBOL || LA28_0 == UPGRADE_SYMBOL || LA28_0 == ALGORITHM_SYMBOL || LA28_0 == AUTO_INCREMENT_SYMBOL || LA28_0 == AVG_ROW_LENGTH_SYMBOL || LA28_0 == COMPRESSION_SYMBOL || LA28_0 == CONNECTION_SYMBOL || LA28_0 == DATA_SYMBOL || LA28_0 == DELAY_KEY_WRITE_SYMBOL || LA28_0 == DISABLE_SYMBOL || LA28_0 == ENGINE_SYMBOL || LA28_0 == ENABLE_SYMBOL || LA28_0 == INSERT_METHOD_SYMBOL || LA28_0 == KEY_BLOCK_SIZE_SYMBOL || LA28_0 == MAX_ROWS_SYMBOL || ((LA28_0 >= MIN_ROWS_SYMBOL) && (LA28_0 <= MODIFY_SYMBOL)) || LA28_0 == PACK_KEYS_SYMBOL || LA28_0 == PASSWORD_SYMBOL || LA28_0 == ROW_FORMAT_SYMBOL || ((LA28_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA28_0 <= STATS_SAMPLE_PAGES_SYMBOL)) || LA28_0 == STORAGE_SYMBOL || ((LA28_0 >= TABLE_CHECKSUM_SYMBOL) && (LA28_0 <= TABLESPACE_SYMBOL)) || LA28_0 == TYPE_SYMBOL || LA28_0 == ALTER_SYMBOL || LA28_0 == CHANGE_SYMBOL || LA28_0 == CHAR_SYMBOL || LA28_0 == COLLATE_SYMBOL || LA28_0 == CONVERT_SYMBOL || LA28_0 == DEFAULT_SYMBOL || LA28_0 == FORCE_SYMBOL || LA28_0 == INDEX_SYMBOL || LA28_0 == LOCK_SYMBOL || LA28_0 == ORDER_SYMBOL || LA28_0 == RENAME_SYMBOL || LA28_0 == UNION_SYMBOL))
                {
                    alt28=3;
                }
                else if ( (LA28_0 == ADD_SYMBOL))
                {
                    {
                        int LA28_29 = LA(2);
                        if ( (LA28_29 == PARTITION_SYMBOL))
                        {
                            {
                                int LA28_58 = LA(3);
                                if ( (!( (( (( ((SERVER_VERSION >= 50100)) && ((SERVER_VERSION >= 50100)) )) && ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) )) )))
                                {
                                    alt28=3;
                                }
                                else if ( (( (( ((SERVER_VERSION >= 50100)) && ((SERVER_VERSION >= 50100)) )) && ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) )))
                                {
                                    alt28=6;
                                }
                                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        = 58;


                                    goto rulealter_table_commandsEx;

                                }
                            }
                        }
                        else if ( (((LA28_29 >= ACCOUNT_SYMBOL) && (LA28_29 <= PARSER_SYMBOL)) || ((LA28_29 >= PORT_SYMBOL) && (LA28_29 <= YEAR_SYMBOL)) || LA28_29 == BACK_TICK_QUOTED_ID || LA28_29 == CHECK_SYMBOL || LA28_29 == COLUMN_SYMBOL || LA28_29 == CONSTRAINT_SYMBOL || LA28_29 == DOT_SYMBOL || LA28_29 == DOUBLE_QUOTED_TEXT || LA28_29 == FOREIGN_SYMBOL || LA28_29 == FULLTEXT_SYMBOL || LA28_29 == IDENTIFIER || LA28_29 == INDEX_SYMBOL || LA28_29 == KEY_SYMBOL || LA28_29 == OPEN_PAR_SYMBOL || LA28_29 == PRIMARY_SYMBOL || LA28_29 == SPATIAL_SYMBOL || LA28_29 == UNIQUE_SYMBOL))
                        {
                            alt28=3;
                        }
                        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        = 29;


                            goto rulealter_table_commandsEx;

                        }
                    }
                }
                else if ( (LA28_0 == DROP_SYMBOL))
                {
                    {
                        int LA28_33 = LA(2);
                        if ( (LA28_33 == PARTITION_SYMBOL))
                        {
                            {
                                int LA28_74 = LA(3);
                                if ( (!( ((SERVER_VERSION >= 50100)) )))
                                {
                                    alt28=3;
                                }
                                else if ( ((SERVER_VERSION >= 50100)))
                                {
                                    alt28=6;
                                }
                                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        = 74;


                                    goto rulealter_table_commandsEx;

                                }
                            }
                        }
                        else if ( (((LA28_33 >= ACCOUNT_SYMBOL) && (LA28_33 <= PARSER_SYMBOL)) || ((LA28_33 >= PORT_SYMBOL) && (LA28_33 <= YEAR_SYMBOL)) || LA28_33 == BACK_TICK_QUOTED_ID || LA28_33 == COLUMN_SYMBOL || LA28_33 == DOT_SYMBOL || LA28_33 == DOUBLE_QUOTED_TEXT || LA28_33 == FOREIGN_SYMBOL || LA28_33 == IDENTIFIER || LA28_33 == INDEX_SYMBOL || LA28_33 == KEY_SYMBOL || LA28_33 == PRIMARY_SYMBOL))
                        {
                            alt28=3;
                        }
                        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        = 33;


                            goto rulealter_table_commandsEx;

                        }
                    }
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA28_0 == REMOVE_SYMBOL))
                {
                    alt28=4;
                }
                else if ( (LA28_0 == PARTITION_SYMBOL))
                {
                    alt28=5;
                }
                else if ( (LA28_0 == REPAIR_SYMBOL || LA28_0 == TRUNCATE_SYMBOL || LA28_0 == ANALYZE_SYMBOL || LA28_0 == COALESCE_SYMBOL || LA28_0 == REBUILD_SYMBOL || LA28_0 == REORGANIZE_SYMBOL || LA28_0 == CHECK_SYMBOL || LA28_0 == EXCHANGE_SYMBOL || LA28_0 == OPTIMIZE_SYMBOL))
                {
                    alt28=6;
                }
                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:526:2: DISCARD_SYMBOL TABLESPACE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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

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

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

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


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

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

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

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

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:528: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_commands900);
        	        alter_table_list_item96=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_item96.tree);

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

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

        	            }

        	            switch (alt25)
        	            {
        	        	case 1:
        	        	    // MySQL.g:528:27: COMMA_SYMBOL alter_table_list_item
        	        	    {
        	        	        COMMA_SYMBOL97 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_table_commands903);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_commandsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_alter_table_list_item_in_alter_table_commands905);
        	        	        alter_table_list_item98=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_item98.tree);

        	        	    }
        	        	    break;

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


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


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


        	                    goto rulealter_table_commandsEx;

        	                }
        	            }
        	            switch (alt27)
        	            {
        	        	case 1:
        	        	    // MySQL.g:528:65: ( partitioning )?
        	        	    {
        	        	        // MySQL.g:528:65: ( partitioning )?
        	        	        {
        	        	            int alt26=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case PARTITION_SYMBOL:
        	        	                	{
        	        	                		alt26=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt26)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:528:65: partitioning
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_partitioning_in_alter_table_commands910);
        	        	        	        partitioning99=partitioning(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:528:81: remove_partitioning
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_remove_partitioning_in_alter_table_commands915);
        	        	        remove_partitioning100=remove_partitioning(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


        	        FOLLOWPUSH(FOLLOW_remove_partitioning_in_alter_table_commands921);
        	        remove_partitioning101=remove_partitioning(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_partitioning_in_alter_table_commands926);
        	        partitioning102=partitioning(ctx);

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

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

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:531: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_commands933);
        	        alter_partition103=alter_partition(ctx);

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

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_partition103.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:534:1: alter_table_list_item : alter_table_list_entry -> ^( ALTER_TABLE_ITEM_TOKEN alter_table_list_entry ) ;
 */
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;

    MySQLParser_alter_table_list_entry_return alter_table_list_entry104;
    #undef	RETURN_TYPE_alter_table_list_entry104
    #define	RETURN_TYPE_alter_table_list_entry104 MySQLParser_alter_table_list_entry_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_alter_table_list_entry;
    /* Initialize rule variables
     */

    root_0 = NULL;

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



    stream_alter_table_list_entry   = NULL;
    #define CREATE_stream_alter_table_list_entry  if (stream_alter_table_list_entry == NULL) {stream_alter_table_list_entry = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule alter_table_list_entry"); }

    retval.tree  = NULL;

    {
        // MySQL.g:534:22: ( alter_table_list_entry -> ^( ALTER_TABLE_ITEM_TOKEN alter_table_list_entry ) )
        // MySQL.g:535:2: alter_table_list_entry
        {
            FOLLOWPUSH(FOLLOW_alter_table_list_entry_in_alter_table_list_item942);
            alter_table_list_entry104=alter_table_list_entry(ctx);

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

            if ( BACKTRACKING==0 ) { CREATE_stream_alter_table_list_entry; stream_alter_table_list_entry->add(stream_alter_table_list_entry, alter_table_list_entry104.tree, NULL); }

            /* AST REWRITE
             * elements          : alter_table_list_entry
             * 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;
            	// 535:25: -> ^( ALTER_TABLE_ITEM_TOKEN alter_table_list_entry )
            	{
            	    // MySQL.g:535:28: ^( ALTER_TABLE_ITEM_TOKEN alter_table_list_entry )
            	    {
            	        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, ALTER_TABLE_ITEM_TOKEN, (pANTLR3_UINT8)"ALTER_TABLE_ITEM_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_alter_table_list_entry == NULL ? NULL : stream_alter_table_list_entry->nextTree(stream_alter_table_list_entry));

            	        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 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 (stream_alter_table_list_entry != NULL) stream_alter_table_list_entry->free(stream_alter_table_list_entry);
    }


            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_table_list_entry
 * MySQL.g:538:1: alter_table_list_entry : ( alter_table_options | ADD_SYMBOL ( COLUMN_SYMBOL )? ( column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | OPEN_PAR_SYMBOL column_definition ( COMMA_SYMBOL column_definition )* CLOSE_PAR_SYMBOL ) | ADD_SYMBOL key_def | ALTER_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref ( SET_SYMBOL DEFAULT_SYMBOL signed_literal | DROP_SYMBOL DEFAULT_SYMBOL ) | CHANGE_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref field_spec ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | MODIFY_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref data_type ( attribute )* ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | DROP_SYMBOL ( ( INDEX_SYMBOL | KEY_SYMBOL ) column_ref | ( COLUMN_SYMBOL )? column_internal_ref | PRIMARY_SYMBOL KEY_SYMBOL | FOREIGN_SYMBOL KEY_SYMBOL ({...}? => column_ref |{...}? => ( column_ref )? ) ) | DISABLE_SYMBOL KEYS_SYMBOL | ENABLE_SYMBOL KEYS_SYMBOL | RENAME_SYMBOL ( TO_SYMBOL | AS_SYMBOL )? table_ref |{...}? RENAME_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL ) column_ref TO_SYMBOL column_ref | alter_order_by | CONVERT_SYMBOL TO_SYMBOL charset charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? | FORCE_SYMBOL |{...}? alter_algorithm_option |{...}? alter_lock_option |{...}? UPGRADE_SYMBOL PARTITIONING_SYMBOL );
 */
static MySQLParser_alter_table_list_entry_return
alter_table_list_entry(pMySQLParser ctx)
{
    MySQLParser_alter_table_list_entry_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ADD_SYMBOL106;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL107;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL109;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL110;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL112;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL114;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL116;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL117;
    pANTLR3_COMMON_TOKEN    ALTER_SYMBOL119;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL120;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL122;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL123;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL125;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL126;
    pANTLR3_COMMON_TOKEN    CHANGE_SYMBOL127;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL128;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL131;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL132;
    pANTLR3_COMMON_TOKEN    MODIFY_SYMBOL134;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL135;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL139;
    pANTLR3_COMMON_TOKEN    AFTER_SYMBOL140;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL142;
    pANTLR3_COMMON_TOKEN    set143;
    pANTLR3_COMMON_TOKEN    COLUMN_SYMBOL145;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL147;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL148;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL149;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL150;
    pANTLR3_COMMON_TOKEN    DISABLE_SYMBOL153;
    pANTLR3_COMMON_TOKEN    KEYS_SYMBOL154;
    pANTLR3_COMMON_TOKEN    ENABLE_SYMBOL155;
    pANTLR3_COMMON_TOKEN    KEYS_SYMBOL156;
    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL157;
    pANTLR3_COMMON_TOKEN    set158;
    pANTLR3_COMMON_TOKEN    RENAME_SYMBOL160;
    pANTLR3_COMMON_TOKEN    set161;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL163;
    pANTLR3_COMMON_TOKEN    CONVERT_SYMBOL166;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL167;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL170;
    pANTLR3_COMMON_TOKEN    FORCE_SYMBOL172;
    pANTLR3_COMMON_TOKEN    UPGRADE_SYMBOL175;
    pANTLR3_COMMON_TOKEN    PARTITIONING_SYMBOL176;
    MySQLParser_alter_table_options_return alter_table_options105;
    #undef	RETURN_TYPE_alter_table_options105
    #define	RETURN_TYPE_alter_table_options105 MySQLParser_alter_table_options_return

    MySQLParser_column_definition_return column_definition108;
    #undef	RETURN_TYPE_column_definition108
    #define	RETURN_TYPE_column_definition108 MySQLParser_column_definition_return

    MySQLParser_identifier_return identifier111;
    #undef	RETURN_TYPE_identifier111
    #define	RETURN_TYPE_identifier111 MySQLParser_identifier_return

    MySQLParser_column_definition_return column_definition113;
    #undef	RETURN_TYPE_column_definition113
    #define	RETURN_TYPE_column_definition113 MySQLParser_column_definition_return

    MySQLParser_column_definition_return column_definition115;
    #undef	RETURN_TYPE_column_definition115
    #define	RETURN_TYPE_column_definition115 MySQLParser_column_definition_return

    MySQLParser_key_def_return key_def118;
    #undef	RETURN_TYPE_key_def118
    #define	RETURN_TYPE_key_def118 MySQLParser_key_def_return

    MySQLParser_column_internal_ref_return column_internal_ref121;
    #undef	RETURN_TYPE_column_internal_ref121
    #define	RETURN_TYPE_column_internal_ref121 MySQLParser_column_internal_ref_return

    MySQLParser_signed_literal_return signed_literal124;
    #undef	RETURN_TYPE_signed_literal124
    #define	RETURN_TYPE_signed_literal124 MySQLParser_signed_literal_return

    MySQLParser_column_internal_ref_return column_internal_ref129;
    #undef	RETURN_TYPE_column_internal_ref129
    #define	RETURN_TYPE_column_internal_ref129 MySQLParser_column_internal_ref_return

    MySQLParser_field_spec_return field_spec130;
    #undef	RETURN_TYPE_field_spec130
    #define	RETURN_TYPE_field_spec130 MySQLParser_field_spec_return

    MySQLParser_identifier_return identifier133;
    #undef	RETURN_TYPE_identifier133
    #define	RETURN_TYPE_identifier133 MySQLParser_identifier_return

    MySQLParser_column_internal_ref_return column_internal_ref136;
    #undef	RETURN_TYPE_column_internal_ref136
    #define	RETURN_TYPE_column_internal_ref136 MySQLParser_column_internal_ref_return

    MySQLParser_data_type_return data_type137;
    #undef	RETURN_TYPE_data_type137
    #define	RETURN_TYPE_data_type137 MySQLParser_data_type_return

    MySQLParser_attribute_return attribute138;
    #undef	RETURN_TYPE_attribute138
    #define	RETURN_TYPE_attribute138 MySQLParser_attribute_return

    MySQLParser_identifier_return identifier141;
    #undef	RETURN_TYPE_identifier141
    #define	RETURN_TYPE_identifier141 MySQLParser_identifier_return

    MySQLParser_column_ref_return column_ref144;
    #undef	RETURN_TYPE_column_ref144
    #define	RETURN_TYPE_column_ref144 MySQLParser_column_ref_return

    MySQLParser_column_internal_ref_return column_internal_ref146;
    #undef	RETURN_TYPE_column_internal_ref146
    #define	RETURN_TYPE_column_internal_ref146 MySQLParser_column_internal_ref_return

    MySQLParser_column_ref_return column_ref151;
    #undef	RETURN_TYPE_column_ref151
    #define	RETURN_TYPE_column_ref151 MySQLParser_column_ref_return

    MySQLParser_column_ref_return column_ref152;
    #undef	RETURN_TYPE_column_ref152
    #define	RETURN_TYPE_column_ref152 MySQLParser_column_ref_return

    MySQLParser_table_ref_return table_ref159;
    #undef	RETURN_TYPE_table_ref159
    #define	RETURN_TYPE_table_ref159 MySQLParser_table_ref_return

    MySQLParser_column_ref_return column_ref162;
    #undef	RETURN_TYPE_column_ref162
    #define	RETURN_TYPE_column_ref162 MySQLParser_column_ref_return

    MySQLParser_column_ref_return column_ref164;
    #undef	RETURN_TYPE_column_ref164
    #define	RETURN_TYPE_column_ref164 MySQLParser_column_ref_return

    MySQLParser_alter_order_by_return alter_order_by165;
    #undef	RETURN_TYPE_alter_order_by165
    #define	RETURN_TYPE_alter_order_by165 MySQLParser_alter_order_by_return

    MySQLParser_charset_return charset168;
    #undef	RETURN_TYPE_charset168
    #define	RETURN_TYPE_charset168 MySQLParser_charset_return

    MySQLParser_charset_name_or_default_return charset_name_or_default169;
    #undef	RETURN_TYPE_charset_name_or_default169
    #define	RETURN_TYPE_charset_name_or_default169 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default171;
    #undef	RETURN_TYPE_collation_name_or_default171
    #define	RETURN_TYPE_collation_name_or_default171 MySQLParser_collation_name_or_default_return

    MySQLParser_alter_algorithm_option_return alter_algorithm_option173;
    #undef	RETURN_TYPE_alter_algorithm_option173
    #define	RETURN_TYPE_alter_algorithm_option173 MySQLParser_alter_algorithm_option_return

    MySQLParser_alter_lock_option_return alter_lock_option174;
    #undef	RETURN_TYPE_alter_lock_option174
    #define	RETURN_TYPE_alter_lock_option174 MySQLParser_alter_lock_option_return

    pANTLR3_BASE_TREE ADD_SYMBOL106_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL107_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL109_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL110_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL112_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL114_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL116_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL117_tree;
    pANTLR3_BASE_TREE ALTER_SYMBOL119_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL120_tree;
    pANTLR3_BASE_TREE SET_SYMBOL122_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL123_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL125_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL126_tree;
    pANTLR3_BASE_TREE CHANGE_SYMBOL127_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL128_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL131_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL132_tree;
    pANTLR3_BASE_TREE MODIFY_SYMBOL134_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL135_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL139_tree;
    pANTLR3_BASE_TREE AFTER_SYMBOL140_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL142_tree;
    pANTLR3_BASE_TREE set143_tree;
    pANTLR3_BASE_TREE COLUMN_SYMBOL145_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL147_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL148_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL149_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL150_tree;
    pANTLR3_BASE_TREE DISABLE_SYMBOL153_tree;
    pANTLR3_BASE_TREE KEYS_SYMBOL154_tree;
    pANTLR3_BASE_TREE ENABLE_SYMBOL155_tree;
    pANTLR3_BASE_TREE KEYS_SYMBOL156_tree;
    pANTLR3_BASE_TREE RENAME_SYMBOL157_tree;
    pANTLR3_BASE_TREE set158_tree;
    pANTLR3_BASE_TREE RENAME_SYMBOL160_tree;
    pANTLR3_BASE_TREE set161_tree;
    pANTLR3_BASE_TREE TO_SYMBOL163_tree;
    pANTLR3_BASE_TREE CONVERT_SYMBOL166_tree;
    pANTLR3_BASE_TREE TO_SYMBOL167_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL170_tree;
    pANTLR3_BASE_TREE FORCE_SYMBOL172_tree;
    pANTLR3_BASE_TREE UPGRADE_SYMBOL175_tree;
    pANTLR3_BASE_TREE PARTITIONING_SYMBOL176_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ADD_SYMBOL106       = NULL;
    COLUMN_SYMBOL107       = NULL;
    FIRST_SYMBOL109       = NULL;
    AFTER_SYMBOL110       = NULL;
    OPEN_PAR_SYMBOL112       = NULL;
    COMMA_SYMBOL114       = NULL;
    CLOSE_PAR_SYMBOL116       = NULL;
    ADD_SYMBOL117       = NULL;
    ALTER_SYMBOL119       = NULL;
    COLUMN_SYMBOL120       = NULL;
    SET_SYMBOL122       = NULL;
    DEFAULT_SYMBOL123       = NULL;
    DROP_SYMBOL125       = NULL;
    DEFAULT_SYMBOL126       = NULL;
    CHANGE_SYMBOL127       = NULL;
    COLUMN_SYMBOL128       = NULL;
    FIRST_SYMBOL131       = NULL;
    AFTER_SYMBOL132       = NULL;
    MODIFY_SYMBOL134       = NULL;
    COLUMN_SYMBOL135       = NULL;
    FIRST_SYMBOL139       = NULL;
    AFTER_SYMBOL140       = NULL;
    DROP_SYMBOL142       = NULL;
    set143       = NULL;
    COLUMN_SYMBOL145       = NULL;
    PRIMARY_SYMBOL147       = NULL;
    KEY_SYMBOL148       = NULL;
    FOREIGN_SYMBOL149       = NULL;
    KEY_SYMBOL150       = NULL;
    DISABLE_SYMBOL153       = NULL;
    KEYS_SYMBOL154       = NULL;
    ENABLE_SYMBOL155       = NULL;
    KEYS_SYMBOL156       = NULL;
    RENAME_SYMBOL157       = NULL;
    set158       = NULL;
    RENAME_SYMBOL160       = NULL;
    set161       = NULL;
    TO_SYMBOL163       = NULL;
    CONVERT_SYMBOL166       = NULL;
    TO_SYMBOL167       = NULL;
    COLLATE_SYMBOL170       = NULL;
    FORCE_SYMBOL172       = NULL;
    UPGRADE_SYMBOL175       = NULL;
    PARTITIONING_SYMBOL176       = NULL;
    alter_table_options105.tree = NULL;

    column_definition108.tree = NULL;

    identifier111.tree = NULL;

    column_definition113.tree = NULL;

    column_definition115.tree = NULL;

    key_def118.tree = NULL;

    column_internal_ref121.tree = NULL;

    signed_literal124.tree = NULL;

    column_internal_ref129.tree = NULL;

    field_spec130.tree = NULL;

    identifier133.tree = NULL;

    column_internal_ref136.tree = NULL;

    data_type137.tree = NULL;

    attribute138.tree = NULL;

    identifier141.tree = NULL;

    column_ref144.tree = NULL;

    column_internal_ref146.tree = NULL;

    column_ref151.tree = NULL;

    column_ref152.tree = NULL;

    table_ref159.tree = NULL;

    column_ref162.tree = NULL;

    column_ref164.tree = NULL;

    alter_order_by165.tree = NULL;

    charset168.tree = NULL;

    charset_name_or_default169.tree = NULL;

    collation_name_or_default171.tree = NULL;

    alter_algorithm_option173.tree = NULL;

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


    ADD_SYMBOL106_tree   = NULL;
    COLUMN_SYMBOL107_tree   = NULL;
    FIRST_SYMBOL109_tree   = NULL;
    AFTER_SYMBOL110_tree   = NULL;
    OPEN_PAR_SYMBOL112_tree   = NULL;
    COMMA_SYMBOL114_tree   = NULL;
    CLOSE_PAR_SYMBOL116_tree   = NULL;
    ADD_SYMBOL117_tree   = NULL;
    ALTER_SYMBOL119_tree   = NULL;
    COLUMN_SYMBOL120_tree   = NULL;
    SET_SYMBOL122_tree   = NULL;
    DEFAULT_SYMBOL123_tree   = NULL;
    DROP_SYMBOL125_tree   = NULL;
    DEFAULT_SYMBOL126_tree   = NULL;
    CHANGE_SYMBOL127_tree   = NULL;
    COLUMN_SYMBOL128_tree   = NULL;
    FIRST_SYMBOL131_tree   = NULL;
    AFTER_SYMBOL132_tree   = NULL;
    MODIFY_SYMBOL134_tree   = NULL;
    COLUMN_SYMBOL135_tree   = NULL;
    FIRST_SYMBOL139_tree   = NULL;
    AFTER_SYMBOL140_tree   = NULL;
    DROP_SYMBOL142_tree   = NULL;
    set143_tree   = NULL;
    COLUMN_SYMBOL145_tree   = NULL;
    PRIMARY_SYMBOL147_tree   = NULL;
    KEY_SYMBOL148_tree   = NULL;
    FOREIGN_SYMBOL149_tree   = NULL;
    KEY_SYMBOL150_tree   = NULL;
    DISABLE_SYMBOL153_tree   = NULL;
    KEYS_SYMBOL154_tree   = NULL;
    ENABLE_SYMBOL155_tree   = NULL;
    KEYS_SYMBOL156_tree   = NULL;
    RENAME_SYMBOL157_tree   = NULL;
    set158_tree   = NULL;
    RENAME_SYMBOL160_tree   = NULL;
    set161_tree   = NULL;
    TO_SYMBOL163_tree   = NULL;
    CONVERT_SYMBOL166_tree   = NULL;
    TO_SYMBOL167_tree   = NULL;
    COLLATE_SYMBOL170_tree   = NULL;
    FORCE_SYMBOL172_tree   = NULL;
    UPGRADE_SYMBOL175_tree   = NULL;
    PARTITIONING_SYMBOL176_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:538:23: ( alter_table_options | ADD_SYMBOL ( COLUMN_SYMBOL )? ( column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | OPEN_PAR_SYMBOL column_definition ( COMMA_SYMBOL column_definition )* CLOSE_PAR_SYMBOL ) | ADD_SYMBOL key_def | ALTER_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref ( SET_SYMBOL DEFAULT_SYMBOL signed_literal | DROP_SYMBOL DEFAULT_SYMBOL ) | CHANGE_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref field_spec ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | MODIFY_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref data_type ( attribute )* ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | DROP_SYMBOL ( ( INDEX_SYMBOL | KEY_SYMBOL ) column_ref | ( COLUMN_SYMBOL )? column_internal_ref | PRIMARY_SYMBOL KEY_SYMBOL | FOREIGN_SYMBOL KEY_SYMBOL ({...}? => column_ref |{...}? => ( column_ref )? ) ) | DISABLE_SYMBOL KEYS_SYMBOL | ENABLE_SYMBOL KEYS_SYMBOL | RENAME_SYMBOL ( TO_SYMBOL | AS_SYMBOL )? table_ref |{...}? RENAME_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL ) column_ref TO_SYMBOL column_ref | alter_order_by | CONVERT_SYMBOL TO_SYMBOL charset charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? | FORCE_SYMBOL |{...}? alter_algorithm_option |{...}? alter_lock_option |{...}? UPGRADE_SYMBOL PARTITIONING_SYMBOL )

            ANTLR3_UINT32 alt46;

            alt46=17;

            {
                int LA46_0 = LA(1);
                if ( (((LA46_0 >= CHARSET_SYMBOL) && (LA46_0 <= CHECKSUM_SYMBOL)) || LA46_0 == COMMENT_SYMBOL || LA46_0 == AUTO_INCREMENT_SYMBOL || LA46_0 == AVG_ROW_LENGTH_SYMBOL || LA46_0 == COMPRESSION_SYMBOL || LA46_0 == CONNECTION_SYMBOL || LA46_0 == DATA_SYMBOL || LA46_0 == DELAY_KEY_WRITE_SYMBOL || LA46_0 == ENGINE_SYMBOL || LA46_0 == INSERT_METHOD_SYMBOL || LA46_0 == KEY_BLOCK_SIZE_SYMBOL || LA46_0 == MAX_ROWS_SYMBOL || LA46_0 == MIN_ROWS_SYMBOL || LA46_0 == PACK_KEYS_SYMBOL || LA46_0 == PASSWORD_SYMBOL || LA46_0 == ROW_FORMAT_SYMBOL || ((LA46_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA46_0 <= STATS_SAMPLE_PAGES_SYMBOL)) || LA46_0 == STORAGE_SYMBOL || ((LA46_0 >= TABLE_CHECKSUM_SYMBOL) && (LA46_0 <= TABLESPACE_SYMBOL)) || LA46_0 == TYPE_SYMBOL || LA46_0 == CHAR_SYMBOL || LA46_0 == COLLATE_SYMBOL || LA46_0 == DEFAULT_SYMBOL || LA46_0 == INDEX_SYMBOL || LA46_0 == UNION_SYMBOL))
                {
                    alt46=1;
                }
                else if ( (LA46_0 == ADD_SYMBOL))
                {
                    {
                        int LA46_27 = LA(2);
                        if ( (((LA46_27 >= ACCOUNT_SYMBOL) && (LA46_27 <= YEAR_SYMBOL)) || LA46_27 == BACK_TICK_QUOTED_ID || LA46_27 == COLUMN_SYMBOL || LA46_27 == DOT_SYMBOL || LA46_27 == DOUBLE_QUOTED_TEXT || LA46_27 == IDENTIFIER || LA46_27 == OPEN_PAR_SYMBOL))
                        {
                            alt46=2;
                        }
                        else if ( (LA46_27 == CHECK_SYMBOL || LA46_27 == CONSTRAINT_SYMBOL || LA46_27 == FOREIGN_SYMBOL || LA46_27 == FULLTEXT_SYMBOL || LA46_27 == INDEX_SYMBOL || LA46_27 == KEY_SYMBOL || LA46_27 == PRIMARY_SYMBOL || LA46_27 == SPATIAL_SYMBOL || LA46_27 == UNIQUE_SYMBOL))
                        {
                            alt46=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


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


                            goto rulealter_table_list_entryEx;

                        }
                    }
                }
                else if ( (LA46_0 == ALTER_SYMBOL))
                {
                    alt46=4;
                }
                else if ( (LA46_0 == CHANGE_SYMBOL))
                {
                    alt46=5;
                }
                else if ( (LA46_0 == MODIFY_SYMBOL))
                {
                    alt46=6;
                }
                else if ( (LA46_0 == DROP_SYMBOL))
                {
                    alt46=7;
                }
                else if ( (LA46_0 == DISABLE_SYMBOL))
                {
                    alt46=8;
                }
                else if ( (LA46_0 == ENABLE_SYMBOL))
                {
                    alt46=9;
                }
                else if ( (LA46_0 == RENAME_SYMBOL))
                {
                    {
                        int LA46_34 = LA(2);
                        if ( (LA46_34 == INDEX_SYMBOL || LA46_34 == KEY_SYMBOL))
                        {
                            alt46=11;
                        }
                        else if ( (((LA46_34 >= ACCOUNT_SYMBOL) && (LA46_34 <= YEAR_SYMBOL)) || LA46_34 == AS_SYMBOL || LA46_34 == BACK_TICK_QUOTED_ID || LA46_34 == DOT_SYMBOL || LA46_34 == DOUBLE_QUOTED_TEXT || LA46_34 == IDENTIFIER || LA46_34 == TO_SYMBOL))
                        {
                            alt46=10;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


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


                            goto rulealter_table_list_entryEx;

                        }
                    }
                }
                else if ( (LA46_0 == ORDER_SYMBOL))
                {
                    alt46=12;
                }
                else if ( (LA46_0 == CONVERT_SYMBOL))
                {
                    alt46=13;
                }
                else if ( (LA46_0 == FORCE_SYMBOL))
                {
                    alt46=14;
                }
                else if ( (LA46_0 == ALGORITHM_SYMBOL))
                {
                    alt46=15;
                }
                else if ( (LA46_0 == LOCK_SYMBOL))
                {
                    alt46=16;
                }
                else if ( (LA46_0 == UPGRADE_SYMBOL))
                {
                    alt46=17;
                }
                else
                {
                    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_entryEx;

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


        	        FOLLOWPUSH(FOLLOW_alter_table_options_in_alter_table_list_entry959);
        	        alter_table_options105=alter_table_options(ctx);

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

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

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


        	        ADD_SYMBOL106 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_table_list_entry964);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

        	            switch (alt29)
        	            {
        	        	case 1:
        	        	    // MySQL.g:540:15: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL107 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry966);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:541:3: ( column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )? | OPEN_PAR_SYMBOL column_definition ( COMMA_SYMBOL column_definition )* CLOSE_PAR_SYMBOL )
        	        {
        	            int alt32=2;
        	            {
        	                int LA32_0 = LA(1);
        	                if ( (((LA32_0 >= ACCOUNT_SYMBOL) && (LA32_0 <= YEAR_SYMBOL)) || LA32_0 == BACK_TICK_QUOTED_ID || LA32_0 == DOT_SYMBOL || LA32_0 == DOUBLE_QUOTED_TEXT || LA32_0 == IDENTIFIER))
        	                {
        	                    alt32=1;
        	                }
        	                else if ( (LA32_0 == OPEN_PAR_SYMBOL))
        	                {
        	                    alt32=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


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


        	                    goto rulealter_table_list_entryEx;

        	                }
        	            }
        	            switch (alt32)
        	            {
        	        	case 1:
        	        	    // MySQL.g:542:4: column_definition ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_entry976);
        	        	        column_definition108=column_definition(ctx);

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

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

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

        	        	            switch (alt30)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:542:23: FIRST_SYMBOL
        	        	        	    {
        	        	        	        FIRST_SYMBOL109 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry979);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_entryEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

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

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:542:38: AFTER_SYMBOL identifier
        	        	        	    {
        	        	        	        AFTER_SYMBOL110 = (pANTLR3_COMMON_TOKEN) MATCHT(AFTER_SYMBOL, &FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry983);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_entryEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

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

        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_entry985);
        	        	        	        identifier111=identifier(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:543:6: OPEN_PAR_SYMBOL column_definition ( COMMA_SYMBOL column_definition )* CLOSE_PAR_SYMBOL
        	        	    {
        	        	        OPEN_PAR_SYMBOL112 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_alter_table_list_entry994);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_column_definition_in_alter_table_list_entry996);
        	        	        column_definition113=column_definition(ctx);

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

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

        	        	        // MySQL.g:543:40: ( COMMA_SYMBOL column_definition )*

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

        	        	            }

        	        	            switch (alt31)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:543:41: COMMA_SYMBOL column_definition
        	        	        	    {
        	        	        	        COMMA_SYMBOL114 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_table_list_entry999);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_entryEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

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

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

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

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

        	        	        	    }
        	        	        	    break;

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


        	        	        CLOSE_PAR_SYMBOL116 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_alter_table_list_entry1005);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


        	        ADD_SYMBOL117 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_table_list_entry1014);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_key_def_in_alter_table_list_entry1016);
        	        key_def118=key_def(ctx);

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

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

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:546:4: ALTER_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref ( SET_SYMBOL DEFAULT_SYMBOL signed_literal | DROP_SYMBOL DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALTER_SYMBOL119 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_alter_table_list_entry1021);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

        	            switch (alt33)
        	            {
        	        	case 1:
        	        	    // MySQL.g:546:17: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL120 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1023);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_column_internal_ref_in_alter_table_list_entry1026);
        	        column_internal_ref121=column_internal_ref(ctx);

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

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

        	        // MySQL.g:546:52: ( SET_SYMBOL DEFAULT_SYMBOL signed_literal | DROP_SYMBOL DEFAULT_SYMBOL )
        	        {
        	            int alt34=2;
        	            switch ( LA(1) )
        	            {
        	            case SET_SYMBOL:
        	            	{
        	            		alt34=1;
        	            	}
        	                break;
        	            case DROP_SYMBOL:
        	            	{
        	            		alt34=2;
        	            	}
        	                break;

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

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


        	                goto rulealter_table_list_entryEx;

        	            }

        	            switch (alt34)
        	            {
        	        	case 1:
        	        	    // MySQL.g:546:53: SET_SYMBOL DEFAULT_SYMBOL signed_literal
        	        	    {
        	        	        SET_SYMBOL122 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_alter_table_list_entry1029);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        DEFAULT_SYMBOL123 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1031);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_signed_literal_in_alter_table_list_entry1033);
        	        	        signed_literal124=signed_literal(ctx);

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

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

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:546:96: DROP_SYMBOL DEFAULT_SYMBOL
        	        	    {
        	        	        DROP_SYMBOL125 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1037);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        DEFAULT_SYMBOL126 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_table_list_entry1039);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:547:4: CHANGE_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref field_spec ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHANGE_SYMBOL127 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_alter_table_list_entry1045);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

        	            switch (alt35)
        	            {
        	        	case 1:
        	        	    // MySQL.g:547:18: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL128 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1047);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_column_internal_ref_in_alter_table_list_entry1050);
        	        column_internal_ref129=column_internal_ref(ctx);

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

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

        	        FOLLOWPUSH(FOLLOW_field_spec_in_alter_table_list_entry1052);
        	        field_spec130=field_spec(ctx);

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

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

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

        	            switch (alt36)
        	            {
        	        	case 1:
        	        	    // MySQL.g:547:65: FIRST_SYMBOL
        	        	    {
        	        	        FIRST_SYMBOL131 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1055);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:547:80: AFTER_SYMBOL identifier
        	        	    {
        	        	        AFTER_SYMBOL132 = (pANTLR3_COMMON_TOKEN) MATCHT(AFTER_SYMBOL, &FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1059);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_entry1061);
        	        	        identifier133=identifier(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:548:4: MODIFY_SYMBOL ( COLUMN_SYMBOL )? column_internal_ref data_type ( attribute )* ( FIRST_SYMBOL | AFTER_SYMBOL identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MODIFY_SYMBOL134 = (pANTLR3_COMMON_TOKEN) MATCHT(MODIFY_SYMBOL, &FOLLOW_MODIFY_SYMBOL_in_alter_table_list_entry1068);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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

        	            switch (alt37)
        	            {
        	        	case 1:
        	        	    // MySQL.g:548:18: COLUMN_SYMBOL
        	        	    {
        	        	        COLUMN_SYMBOL135 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1070);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_column_internal_ref_in_alter_table_list_entry1073);
        	        column_internal_ref136=column_internal_ref(ctx);

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

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

        	        FOLLOWPUSH(FOLLOW_data_type_in_alter_table_list_entry1075);
        	        data_type137=data_type(ctx);

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

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

        	        // MySQL.g:548:63: ( attribute )*

        	        for (;;)
        	        {
        	            int alt38=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMENT_SYMBOL:
        	            case AUTO_INCREMENT_SYMBOL:
        	            case COLUMN_FORMAT_SYMBOL:
        	            case SERIAL_SYMBOL:
        	            case STORAGE_SYMBOL:
        	            case COLLATE_SYMBOL:
        	            case DEFAULT_SYMBOL:
        	            case KEY_SYMBOL:
        	            case NOT_SYMBOL:
        	            case NULL2_SYMBOL:
        	            case NULL_SYMBOL:
        	            case ON_SYMBOL:
        	            case PRIMARY_SYMBOL:
        	            case UNIQUE_SYMBOL:
        	            	{
        	            		alt38=1;
        	            	}
        	                break;

        	            }

        	            switch (alt38)
        	            {
        	        	case 1:
        	        	    // MySQL.g:548:63: attribute
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_attribute_in_alter_table_list_entry1077);
        	        	        attribute138=attribute(ctx);

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

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

        	        	    }
        	        	    break;

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


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

        	            switch (alt39)
        	            {
        	        	case 1:
        	        	    // MySQL.g:548:75: FIRST_SYMBOL
        	        	    {
        	        	        FIRST_SYMBOL139 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_alter_table_list_entry1081);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:548:90: AFTER_SYMBOL identifier
        	        	    {
        	        	        AFTER_SYMBOL140 = (pANTLR3_COMMON_TOKEN) MATCHT(AFTER_SYMBOL, &FOLLOW_AFTER_SYMBOL_in_alter_table_list_entry1085);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_table_list_entry1087);
        	        	        identifier141=identifier(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


        	        DROP_SYMBOL142 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_alter_table_list_entry1094);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:550:3: ( ( INDEX_SYMBOL | KEY_SYMBOL ) column_ref | ( COLUMN_SYMBOL )? column_internal_ref | PRIMARY_SYMBOL KEY_SYMBOL | FOREIGN_SYMBOL KEY_SYMBOL ({...}? => column_ref |{...}? => ( column_ref )? ) )
        	        {
        	            int alt43=4;
        	            {
        	                int LA43_0 = LA(1);
        	                if ( (LA43_0 == INDEX_SYMBOL || LA43_0 == KEY_SYMBOL))
        	                {
        	                    alt43=1;
        	                }
        	                else if ( (((LA43_0 >= ACCOUNT_SYMBOL) && (LA43_0 <= YEAR_SYMBOL)) || LA43_0 == BACK_TICK_QUOTED_ID || LA43_0 == COLUMN_SYMBOL || LA43_0 == DOT_SYMBOL || LA43_0 == DOUBLE_QUOTED_TEXT || LA43_0 == IDENTIFIER))
        	                {
        	                    alt43=2;
        	                }
        	                else if ( (LA43_0 == PRIMARY_SYMBOL))
        	                {
        	                    alt43=3;
        	                }
        	                else if ( (LA43_0 == FOREIGN_SYMBOL))
        	                {
        	                    alt43=4;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


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


        	                    goto rulealter_table_list_entryEx;

        	                }
        	            }
        	            switch (alt43)
        	            {
        	        	case 1:
        	        	    // MySQL.g:551:4: ( INDEX_SYMBOL | KEY_SYMBOL ) column_ref
        	        	    {
        	        	        set143=(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, set143))
        	        	            );
        	        	            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_entryEx;
        	        	        }


        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_alter_table_list_entry1111);
        	        	        column_ref144=column_ref(ctx);

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

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

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:552:6: ( COLUMN_SYMBOL )? column_internal_ref
        	        	    {
        	        	        // MySQL.g:552:6: ( COLUMN_SYMBOL )?
        	        	        {
        	        	            int alt40=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case COLUMN_SYMBOL:
        	        	                	{
        	        	                		alt40=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt40)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:552:6: COLUMN_SYMBOL
        	        	        	    {
        	        	        	        COLUMN_SYMBOL145 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_SYMBOL, &FOLLOW_COLUMN_SYMBOL_in_alter_table_list_entry1118);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulealter_table_list_entryEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_column_internal_ref_in_alter_table_list_entry1121);
        	        	        column_internal_ref146=column_internal_ref(ctx);

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

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

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:553:6: PRIMARY_SYMBOL KEY_SYMBOL
        	        	    {
        	        	        PRIMARY_SYMBOL147 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_alter_table_list_entry1128);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        KEY_SYMBOL148 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1130);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:554:6: FOREIGN_SYMBOL KEY_SYMBOL ({...}? => column_ref |{...}? => ( column_ref )? )
        	        	    {
        	        	        FOREIGN_SYMBOL149 = (pANTLR3_COMMON_TOKEN) MATCHT(FOREIGN_SYMBOL, &FOLLOW_FOREIGN_SYMBOL_in_alter_table_list_entry1137);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        KEY_SYMBOL150 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_alter_table_list_entry1139);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        // MySQL.g:555:5: ({...}? => column_ref |{...}? => ( column_ref )? )
        	        	        {
        	        	            int alt42=2;
        	        	            {
        	        	                int LA42_0 = LA(1);
        	        	                if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA42_0 == DOT_SYMBOL))
        	        	                {
        	        	                    {
        	        	                        int LA42_1 = LA(2);
        	        	                        if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA42_1 == IDENTIFIER))
        	        	                        {
        	        	                            {
        	        	                                int LA42_12 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt42=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt42=2;
        	        	                                }
        	        	                                else
        	        	                                {
        	        	                                    if (BACKTRACKING>0)
        	        	                                    {
        	        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	        	                                        return retval;
        	        	                                    }


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


        	        	                                    goto rulealter_table_list_entryEx;

        	        	                                }
        	        	                            }
        	        	                        }
        	        	                        else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA42_1 == BACK_TICK_QUOTED_ID))
        	        	                        {
        	        	                            {
        	        	                                int LA42_13 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt42=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt42=2;
        	        	                                }
        	        	                                else
        	        	                                {
        	        	                                    if (BACKTRACKING>0)
        	        	                                    {
        	        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	        	                                        return retval;
        	        	                                    }


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


        	        	                                    goto rulealter_table_list_entryEx;

        	        	                                }
        	        	                            }
        	        	                        }
        	        	                        else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA42_1 == DOUBLE_QUOTED_TEXT))
        	        	                        {
        	        	                            {
        	        	                                int LA42_14 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt42=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt42=2;
        	        	                                }
        	        	                                else
        	        	                                {
        	        	                                    if (BACKTRACKING>0)
        	        	                                    {
        	        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	        	                                        return retval;
        	        	                                    }


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


        	        	                                    goto rulealter_table_list_entryEx;

        	        	                                }
        	        	                            }
        	        	                        }
        	        	                        else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (((LA42_1 >= ACTION_SYMBOL) && (LA42_1 <= SHARE_SYMBOL)) || ((LA42_1 >= SLOW_SYMBOL) && (LA42_1 <= YEAR_SYMBOL))))
        	        	                        {
        	        	                            {
        	        	                                int LA42_15 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt42=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt42=2;
        	        	                                }
        	        	                                else
        	        	                                {
        	        	                                    if (BACKTRACKING>0)
        	        	                                    {
        	        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	        	                                        return retval;
        	        	                                    }


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


        	        	                                    goto rulealter_table_list_entryEx;

        	        	                                }
        	        	                            }
        	        	                        }
        	        	                        else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (((LA42_1 >= ACCOUNT_SYMBOL) && (LA42_1 <= XA_SYMBOL)) || LA42_1 == SHUTDOWN_SYMBOL))
        	        	                        {
        	        	                            {
        	        	                                int LA42_16 = LA(3);
        	        	                                if ( ((SERVER_VERSION >= 50700)))
        	        	                                {
        	        	                                    alt42=1;
        	        	                                }
        	        	                                else if ( ((SERVER_VERSION < 50700)))
        	        	                                {
        	        	                                    alt42=2;
        	        	                                }
        	        	                                else
        	        	                                {
        	        	                                    if (BACKTRACKING>0)
        	        	                                    {
        	        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	        	                                        return retval;
        	        	                                    }


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


        	        	                                    goto rulealter_table_list_entryEx;

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


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


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA42_0 == IDENTIFIER))
        	        	                {
        	        	                    {
        	        	                        int LA42_2 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt42=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt42=2;
        	        	                        }
        	        	                        else
        	        	                        {
        	        	                            if (BACKTRACKING>0)
        	        	                            {
        	        	                                FAILEDFLAG = ANTLR3_TRUE;
        	        	                                return retval;
        	        	                            }


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


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA42_0 == BACK_TICK_QUOTED_ID))
        	        	                {
        	        	                    {
        	        	                        int LA42_3 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt42=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt42=2;
        	        	                        }
        	        	                        else
        	        	                        {
        	        	                            if (BACKTRACKING>0)
        	        	                            {
        	        	                                FAILEDFLAG = ANTLR3_TRUE;
        	        	                                return retval;
        	        	                            }


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


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA42_0 == DOUBLE_QUOTED_TEXT))
        	        	                {
        	        	                    {
        	        	                        int LA42_4 = LA(2);
        	        	                        if ( (( (( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )) && ((SERVER_VERSION >= 50700)) )))
        	        	                        {
        	        	                            alt42=1;
        	        	                        }
        	        	                        else if ( (( (( ((SERVER_VERSION < 50700)) && ((SERVER_VERSION < 50700)) )) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )))
        	        	                        {
        	        	                            alt42=2;
        	        	                        }
        	        	                        else
        	        	                        {
        	        	                            if (BACKTRACKING>0)
        	        	                            {
        	        	                                FAILEDFLAG = ANTLR3_TRUE;
        	        	                                return retval;
        	        	                            }


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


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (((LA42_0 >= ACTION_SYMBOL) && (LA42_0 <= SHARE_SYMBOL)) || ((LA42_0 >= SLOW_SYMBOL) && (LA42_0 <= YEAR_SYMBOL))))
        	        	                {
        	        	                    {
        	        	                        int LA42_5 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt42=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt42=2;
        	        	                        }
        	        	                        else
        	        	                        {
        	        	                            if (BACKTRACKING>0)
        	        	                            {
        	        	                                FAILEDFLAG = ANTLR3_TRUE;
        	        	                                return retval;
        	        	                            }


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


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (LA42_0 == PARTITION_SYMBOL))
        	        	                {
        	        	                    {
        	        	                        int LA42_6 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt42=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt42=2;
        	        	                        }
        	        	                        else
        	        	                        {
        	        	                            if (BACKTRACKING>0)
        	        	                            {
        	        	                                FAILEDFLAG = ANTLR3_TRUE;
        	        	                                return retval;
        	        	                            }


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


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((SERVER_VERSION < 50700)) && (LA42_0 == EOF || LA42_0 == COMMA_SYMBOL || LA42_0 == SEMICOLON_SYMBOL))
        	        	                {
        	        	                    alt42=2;
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||(( (( ((SERVER_VERSION < 50700)) && ((SERVER_VERSION < 50700)) )) && ((SERVER_VERSION >= 50100)) ))||((SERVER_VERSION >= 50700)))) && (LA42_0 == REMOVE_SYMBOL))
        	        	                {
        	        	                    {
        	        	                        int LA42_8 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt42=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt42=2;
        	        	                        }
        	        	                        else
        	        	                        {
        	        	                            if (BACKTRACKING>0)
        	        	                            {
        	        	                                FAILEDFLAG = ANTLR3_TRUE;
        	        	                                return retval;
        	        	                            }


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


        	        	                            goto rulealter_table_list_entryEx;

        	        	                        }
        	        	                    }
        	        	                }
        	        	                else if ( ((((SERVER_VERSION < 50700))||((SERVER_VERSION >= 50700)))) && (((LA42_0 >= ACCOUNT_SYMBOL) && (LA42_0 <= PARSER_SYMBOL)) || ((LA42_0 >= PORT_SYMBOL) && (LA42_0 <= PREPARE_SYMBOL)) || ((LA42_0 >= REPAIR_SYMBOL) && (LA42_0 <= XA_SYMBOL)) || LA42_0 == SHUTDOWN_SYMBOL))
        	        	                {
        	        	                    {
        	        	                        int LA42_11 = LA(2);
        	        	                        if ( ((SERVER_VERSION >= 50700)))
        	        	                        {
        	        	                            alt42=1;
        	        	                        }
        	        	                        else if ( ((SERVER_VERSION < 50700)))
        	        	                        {
        	        	                            alt42=2;
        	        	                        }
        	        	                        else
        	        	                        {
        	        	                            if (BACKTRACKING>0)
        	        	                            {
        	        	                                FAILEDFLAG = ANTLR3_TRUE;
        	        	                                return retval;
        	        	                            }


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


        	        	                            goto rulealter_table_list_entryEx;

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


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


        	        	                    goto rulealter_table_list_entryEx;

        	        	                }
        	        	            }
        	        	            switch (alt42)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:557:6: {...}? => column_ref
        	        	        	    {
        	        	        	        if ( !((SERVER_VERSION >= 50700)) )
        	        	        	        {
        	        	        	            if (BACKTRACKING>0)
        	        	        	            {
        	        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	        	                return retval;
        	        	        	            }

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


        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_alter_table_list_entry1162);
        	        	        	        column_ref151=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:558:8: {...}? => ( column_ref )?
        	        	        	    {
        	        	        	        if ( !((SERVER_VERSION < 50700)) )
        	        	        	        {
        	        	        	            if (BACKTRACKING>0)
        	        	        	            {
        	        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	        	                return retval;
        	        	        	            }

        	        	        	                CONSTRUCTEX();
        	        	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	        	        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50700";
        	        	        	                EXCEPTION->ruleName	 = (void *)"alter_table_list_entry";


        	        	        	        }

        	        	        	        // MySQL.g:558:37: ( column_ref )?
        	        	        	        {
        	        	        	            int alt41=2;
        	        	        	            {
        	        	        	                int LA41_0 = LA(1);
        	        	        	                if ( (((LA41_0 >= ACCOUNT_SYMBOL) && (LA41_0 <= PARSER_SYMBOL)) || ((LA41_0 >= PORT_SYMBOL) && (LA41_0 <= PREPARE_SYMBOL)) || ((LA41_0 >= REPAIR_SYMBOL) && (LA41_0 <= YEAR_SYMBOL)) || LA41_0 == BACK_TICK_QUOTED_ID || LA41_0 == DOT_SYMBOL || LA41_0 == DOUBLE_QUOTED_TEXT || LA41_0 == IDENTIFIER))
        	        	        	                {
        	        	        	                    alt41=1;
        	        	        	                }
        	        	        	                else if ( (LA41_0 == PARTITION_SYMBOL))
        	        	        	                {
        	        	        	                    switch ( LA(2) )
        	        	        	                    {
        	        	        	                        case EOF:
        	        	        	                        case PARTITION_SYMBOL:
        	        	        	                        case REMOVE_SYMBOL:
        	        	        	                        case COMMA_SYMBOL:
        	        	        	                        case DOT_SYMBOL:
        	        	        	                        case SEMICOLON_SYMBOL:
        	        	        	                        	{
        	        	        	                        		alt41=1;
        	        	        	                        	}
        	        	        	                            break;
        	        	        	                    }

        	        	        	                }
        	        	        	                else if ( (LA41_0 == REMOVE_SYMBOL))
        	        	        	                {
        	        	        	                    switch ( LA(2) )
        	        	        	                    {
        	        	        	                        case EOF:
        	        	        	                        case PARTITION_SYMBOL:
        	        	        	                        case REMOVE_SYMBOL:
        	        	        	                        case COMMA_SYMBOL:
        	        	        	                        case DOT_SYMBOL:
        	        	        	                        case SEMICOLON_SYMBOL:
        	        	        	                        	{
        	        	        	                        		alt41=1;
        	        	        	                        	}
        	        	        	                            break;
        	        	        	                    }

        	        	        	                }
        	        	        	            }
        	        	        	            switch (alt41)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:558:37: column_ref
        	        	        	        	    {
        	        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_alter_table_list_entry1175);
        	        	        	        	        column_ref152=column_ref(ctx);

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

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

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	            }
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

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


        	        DISABLE_SYMBOL153 = (pANTLR3_COMMON_TOKEN) MATCHT(DISABLE_SYMBOL, &FOLLOW_DISABLE_SYMBOL_in_alter_table_list_entry1191);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        KEYS_SYMBOL154 = (pANTLR3_COMMON_TOKEN) MATCHT(KEYS_SYMBOL, &FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1193);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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


        	        ENABLE_SYMBOL155 = (pANTLR3_COMMON_TOKEN) MATCHT(ENABLE_SYMBOL, &FOLLOW_ENABLE_SYMBOL_in_alter_table_list_entry1198);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        KEYS_SYMBOL156 = (pANTLR3_COMMON_TOKEN) MATCHT(KEYS_SYMBOL, &FOLLOW_KEYS_SYMBOL_in_alter_table_list_entry1200);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:563:4: RENAME_SYMBOL ( TO_SYMBOL | AS_SYMBOL )? table_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RENAME_SYMBOL157 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1205);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:563:18: ( TO_SYMBOL | AS_SYMBOL )?
        	        {
        	            int alt44=2;
        	            switch ( LA(1) )
        	            {
        	                case AS_SYMBOL:
        	                case TO_SYMBOL:
        	                	{
        	                		alt44=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt44)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set158=(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, set158))
        	        	            );
        	        	            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_entryEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_in_alter_table_list_entry1216);
        	        table_ref159=table_ref(ctx);

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

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

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:564:4: {...}? RENAME_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL ) column_ref TO_SYMBOL column_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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


        	        }

        	        RENAME_SYMBOL160 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_alter_table_list_entry1223);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        set161=(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, set161))
        	            );
        	            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_entryEx;
        	        }


        	        FOLLOWPUSH(FOLLOW_column_ref_in_alter_table_list_entry1233);
        	        column_ref162=column_ref(ctx);

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

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

        	        TO_SYMBOL163 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_alter_table_list_entry1235);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_column_ref_in_alter_table_list_entry1237);
        	        column_ref164=column_ref(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_alter_order_by_in_alter_table_list_entry1242);
        	        alter_order_by165=alter_order_by(ctx);

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

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

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:566:4: CONVERT_SYMBOL TO_SYMBOL charset charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONVERT_SYMBOL166 = (pANTLR3_COMMON_TOKEN) MATCHT(CONVERT_SYMBOL, &FOLLOW_CONVERT_SYMBOL_in_alter_table_list_entry1247);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        TO_SYMBOL167 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_alter_table_list_entry1249);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_charset_in_alter_table_list_entry1251);
        	        charset168=charset(ctx);

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

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

        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_alter_table_list_entry1253);
        	        charset_name_or_default169=charset_name_or_default(ctx);

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

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

        	        // MySQL.g:566:61: ( COLLATE_SYMBOL collation_name_or_default )?
        	        {
        	            int alt45=2;
        	            switch ( LA(1) )
        	            {
        	                case COLLATE_SYMBOL:
        	                	{
        	                		alt45=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt45)
        	            {
        	        	case 1:
        	        	    // MySQL.g:566:62: COLLATE_SYMBOL collation_name_or_default
        	        	    {
        	        	        COLLATE_SYMBOL170 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_alter_table_list_entry1256);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_table_list_entryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_alter_table_list_entry1258);
        	        	        collation_name_or_default171=collation_name_or_default(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

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


        	        FORCE_SYMBOL172 = (pANTLR3_COMMON_TOKEN) MATCHT(FORCE_SYMBOL, &FOLLOW_FORCE_SYMBOL_in_alter_table_list_entry1265);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:568: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_entry";


        	        }

        	        FOLLOWPUSH(FOLLOW_alter_algorithm_option_in_alter_table_list_entry1272);
        	        alter_algorithm_option173=alter_algorithm_option(ctx);

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

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

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:569: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_entry";


        	        }

        	        FOLLOWPUSH(FOLLOW_alter_lock_option_in_alter_table_list_entry1279);
        	        alter_lock_option174=alter_lock_option(ctx);

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

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

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:570:4: {...}? UPGRADE_SYMBOL PARTITIONING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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


        	        }

        	        UPGRADE_SYMBOL175 = (pANTLR3_COMMON_TOKEN) MATCHT(UPGRADE_SYMBOL, &FOLLOW_UPGRADE_SYMBOL_in_alter_table_list_entry1286);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITIONING_SYMBOL176 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONING_SYMBOL, &FOLLOW_PARTITIONING_SYMBOL_in_alter_table_list_entry1288);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_table_list_entryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	    }
        	    break;

            }
        }
    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_entry */

/**
 * $ANTLR start key_def
 * MySQL.g:573:1: key_def : ( ( CONSTRAINT_SYMBOL ( column_ref )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( column_ref )? index_columns reference_definition | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL ) | ( INDEX_SYMBOL | KEY_SYMBOL ) ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | ( FULLTEXT_SYMBOL | SPATIAL_SYMBOL ) ( INDEX_SYMBOL | KEY_SYMBOL )? ( column_ref )? index_columns ( normal_index_option )* );
 */
static MySQLParser_key_def_return
key_def(pMySQLParser ctx)
{
    MySQLParser_key_def_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CONSTRAINT_SYMBOL177;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL179;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL180;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL185;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL186;
    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL190;
    pANTLR3_COMMON_TOKEN    set191;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL196;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL197;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL199;
    pANTLR3_COMMON_TOKEN    set200;
    pANTLR3_COMMON_TOKEN    set205;
    pANTLR3_COMMON_TOKEN    set206;
    MySQLParser_column_ref_return column_ref178;
    #undef	RETURN_TYPE_column_ref178
    #define	RETURN_TYPE_column_ref178 MySQLParser_column_ref_return

    MySQLParser_column_ref_return column_ref181;
    #undef	RETURN_TYPE_column_ref181
    #define	RETURN_TYPE_column_ref181 MySQLParser_column_ref_return

    MySQLParser_index_type_return index_type182;
    #undef	RETURN_TYPE_index_type182
    #define	RETURN_TYPE_index_type182 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns183;
    #undef	RETURN_TYPE_index_columns183
    #define	RETURN_TYPE_index_columns183 MySQLParser_index_columns_return

    MySQLParser_normal_index_option_return normal_index_option184;
    #undef	RETURN_TYPE_normal_index_option184
    #define	RETURN_TYPE_normal_index_option184 MySQLParser_normal_index_option_return

    MySQLParser_column_ref_return column_ref187;
    #undef	RETURN_TYPE_column_ref187
    #define	RETURN_TYPE_column_ref187 MySQLParser_column_ref_return

    MySQLParser_index_columns_return index_columns188;
    #undef	RETURN_TYPE_index_columns188
    #define	RETURN_TYPE_index_columns188 MySQLParser_index_columns_return

    MySQLParser_reference_definition_return reference_definition189;
    #undef	RETURN_TYPE_reference_definition189
    #define	RETURN_TYPE_reference_definition189 MySQLParser_reference_definition_return

    MySQLParser_column_ref_return column_ref192;
    #undef	RETURN_TYPE_column_ref192
    #define	RETURN_TYPE_column_ref192 MySQLParser_column_ref_return

    MySQLParser_index_type_return index_type193;
    #undef	RETURN_TYPE_index_type193
    #define	RETURN_TYPE_index_type193 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns194;
    #undef	RETURN_TYPE_index_columns194
    #define	RETURN_TYPE_index_columns194 MySQLParser_index_columns_return

    MySQLParser_normal_index_option_return normal_index_option195;
    #undef	RETURN_TYPE_normal_index_option195
    #define	RETURN_TYPE_normal_index_option195 MySQLParser_normal_index_option_return

    MySQLParser_expression_return expression198;
    #undef	RETURN_TYPE_expression198
    #define	RETURN_TYPE_expression198 MySQLParser_expression_return

    MySQLParser_column_ref_return column_ref201;
    #undef	RETURN_TYPE_column_ref201
    #define	RETURN_TYPE_column_ref201 MySQLParser_column_ref_return

    MySQLParser_index_type_return index_type202;
    #undef	RETURN_TYPE_index_type202
    #define	RETURN_TYPE_index_type202 MySQLParser_index_type_return

    MySQLParser_index_columns_return index_columns203;
    #undef	RETURN_TYPE_index_columns203
    #define	RETURN_TYPE_index_columns203 MySQLParser_index_columns_return

    MySQLParser_normal_index_option_return normal_index_option204;
    #undef	RETURN_TYPE_normal_index_option204
    #define	RETURN_TYPE_normal_index_option204 MySQLParser_normal_index_option_return

    MySQLParser_column_ref_return column_ref207;
    #undef	RETURN_TYPE_column_ref207
    #define	RETURN_TYPE_column_ref207 MySQLParser_column_ref_return

    MySQLParser_index_columns_return index_columns208;
    #undef	RETURN_TYPE_index_columns208
    #define	RETURN_TYPE_index_columns208 MySQLParser_index_columns_return

    MySQLParser_normal_index_option_return normal_index_option209;
    #undef	RETURN_TYPE_normal_index_option209
    #define	RETURN_TYPE_normal_index_option209 MySQLParser_normal_index_option_return

    pANTLR3_BASE_TREE CONSTRAINT_SYMBOL177_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL179_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL180_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL185_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL186_tree;
    pANTLR3_BASE_TREE UNIQUE_SYMBOL190_tree;
    pANTLR3_BASE_TREE set191_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL196_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL197_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL199_tree;
    pANTLR3_BASE_TREE set200_tree;
    pANTLR3_BASE_TREE set205_tree;
    pANTLR3_BASE_TREE set206_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONSTRAINT_SYMBOL177       = NULL;
    PRIMARY_SYMBOL179       = NULL;
    KEY_SYMBOL180       = NULL;
    FOREIGN_SYMBOL185       = NULL;
    KEY_SYMBOL186       = NULL;
    UNIQUE_SYMBOL190       = NULL;
    set191       = NULL;
    CHECK_SYMBOL196       = NULL;
    OPEN_PAR_SYMBOL197       = NULL;
    CLOSE_PAR_SYMBOL199       = NULL;
    set200       = NULL;
    set205       = NULL;
    set206       = NULL;
    column_ref178.tree = NULL;

    column_ref181.tree = NULL;

    index_type182.tree = NULL;

    index_columns183.tree = NULL;

    normal_index_option184.tree = NULL;

    column_ref187.tree = NULL;

    index_columns188.tree = NULL;

    reference_definition189.tree = NULL;

    column_ref192.tree = NULL;

    index_type193.tree = NULL;

    index_columns194.tree = NULL;

    normal_index_option195.tree = NULL;

    expression198.tree = NULL;

    column_ref201.tree = NULL;

    index_type202.tree = NULL;

    index_columns203.tree = NULL;

    normal_index_option204.tree = NULL;

    column_ref207.tree = NULL;

    index_columns208.tree = NULL;

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


    CONSTRAINT_SYMBOL177_tree   = NULL;
    PRIMARY_SYMBOL179_tree   = NULL;
    KEY_SYMBOL180_tree   = NULL;
    FOREIGN_SYMBOL185_tree   = NULL;
    KEY_SYMBOL186_tree   = NULL;
    UNIQUE_SYMBOL190_tree   = NULL;
    set191_tree   = NULL;
    CHECK_SYMBOL196_tree   = NULL;
    OPEN_PAR_SYMBOL197_tree   = NULL;
    CLOSE_PAR_SYMBOL199_tree   = NULL;
    set200_tree   = NULL;
    set205_tree   = NULL;
    set206_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:573:8: ( ( CONSTRAINT_SYMBOL ( column_ref )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( column_ref )? index_columns reference_definition | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL ) | ( INDEX_SYMBOL | KEY_SYMBOL ) ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | ( FULLTEXT_SYMBOL | SPATIAL_SYMBOL ) ( INDEX_SYMBOL | KEY_SYMBOL )? ( column_ref )? index_columns ( normal_index_option )* )

            ANTLR3_UINT32 alt64;

            alt64=3;

            switch ( LA(1) )
            {
            case CHECK_SYMBOL:
            case CONSTRAINT_SYMBOL:
            case FOREIGN_SYMBOL:
            case PRIMARY_SYMBOL:
            case UNIQUE_SYMBOL:
            	{
            		alt64=1;
            	}
                break;
            case INDEX_SYMBOL:
            case KEY_SYMBOL:
            	{
            		alt64=2;
            	}
                break;
            case FULLTEXT_SYMBOL:
            case SPATIAL_SYMBOL:
            	{
            		alt64=3;
            	}
                break;

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

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


                goto rulekey_defEx;

            }

            switch (alt64)
            {
        	case 1:
        	    // MySQL.g:574:2: ( CONSTRAINT_SYMBOL ( column_ref )? )? ( PRIMARY_SYMBOL KEY_SYMBOL ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( column_ref )? index_columns reference_definition | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:574:2: ( CONSTRAINT_SYMBOL ( column_ref )? )?
        	        {
        	            int alt48=2;
        	            switch ( LA(1) )
        	            {
        	                case CONSTRAINT_SYMBOL:
        	                	{
        	                		alt48=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt48)
        	            {
        	        	case 1:
        	        	    // MySQL.g:574:3: CONSTRAINT_SYMBOL ( column_ref )?
        	        	    {
        	        	        CONSTRAINT_SYMBOL177 = (pANTLR3_COMMON_TOKEN) MATCHT(CONSTRAINT_SYMBOL, &FOLLOW_CONSTRAINT_SYMBOL_in_key_def1298);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        // MySQL.g:574:21: ( column_ref )?
        	        	        {
        	        	            int alt47=2;
        	        	            {
        	        	                int LA47_0 = LA(1);
        	        	                if ( (((LA47_0 >= ACCOUNT_SYMBOL) && (LA47_0 <= YEAR_SYMBOL)) || LA47_0 == BACK_TICK_QUOTED_ID || LA47_0 == DOT_SYMBOL || LA47_0 == DOUBLE_QUOTED_TEXT || LA47_0 == IDENTIFIER))
        	        	                {
        	        	                    alt47=1;
        	        	                }
        	        	            }
        	        	            switch (alt47)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:574:21: column_ref
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1300);
        	        	        	        column_ref178=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:575:3: ( PRIMARY_SYMBOL KEY_SYMBOL ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | FOREIGN_SYMBOL KEY_SYMBOL ( column_ref )? index_columns reference_definition | UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( column_ref )? ( index_type )? index_columns ( normal_index_option )* | CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )
        	        {
        	            int alt57=4;
        	            switch ( LA(1) )
        	            {
        	            case PRIMARY_SYMBOL:
        	            	{
        	            		alt57=1;
        	            	}
        	                break;
        	            case FOREIGN_SYMBOL:
        	            	{
        	            		alt57=2;
        	            	}
        	                break;
        	            case UNIQUE_SYMBOL:
        	            	{
        	            		alt57=3;
        	            	}
        	                break;
        	            case CHECK_SYMBOL:
        	            	{
        	            		alt57=4;
        	            	}
        	                break;

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

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


        	                goto rulekey_defEx;

        	            }

        	            switch (alt57)
        	            {
        	        	case 1:
        	        	    // MySQL.g:576:4: PRIMARY_SYMBOL KEY_SYMBOL ( column_ref )? ( index_type )? index_columns ( normal_index_option )*
        	        	    {
        	        	        PRIMARY_SYMBOL179 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_key_def1312);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        KEY_SYMBOL180 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_key_def1314);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        // MySQL.g:576:30: ( column_ref )?
        	        	        {
        	        	            int alt49=2;
        	        	            {
        	        	                int LA49_0 = LA(1);
        	        	                if ( (((LA49_0 >= ACCOUNT_SYMBOL) && (LA49_0 <= TYPES_SYMBOL)) || ((LA49_0 >= UDF_RETURNS_SYMBOL) && (LA49_0 <= YEAR_SYMBOL)) || LA49_0 == BACK_TICK_QUOTED_ID || LA49_0 == DOT_SYMBOL || LA49_0 == DOUBLE_QUOTED_TEXT || LA49_0 == IDENTIFIER))
        	        	                {
        	        	                    alt49=1;
        	        	                }
        	        	                else if ( (LA49_0 == TYPE_SYMBOL))
        	        	                {
        	        	                    switch ( LA(2) )
        	        	                    {
        	        	                        case TYPE_SYMBOL:
        	        	                        case DOT_SYMBOL:
        	        	                        case OPEN_PAR_SYMBOL:
        	        	                        case USING_SYMBOL:
        	        	                        	{
        	        	                        		alt49=1;
        	        	                        	}
        	        	                            break;
        	        	                    }

        	        	                }
        	        	            }
        	        	            switch (alt49)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:576:30: column_ref
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1316);
        	        	        	        column_ref181=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:576:42: ( index_type )?
        	        	        {
        	        	            int alt50=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case TYPE_SYMBOL:
        	        	                case USING_SYMBOL:
        	        	                	{
        	        	                		alt50=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt50)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:576:42: index_type
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_type_in_key_def1319);
        	        	        	        index_type182=index_type(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1322);
        	        	        index_columns183=index_columns(ctx);

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

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

        	        	        // MySQL.g:576:68: ( normal_index_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt51=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case COMMENT_SYMBOL:
        	        	            case KEY_BLOCK_SIZE_SYMBOL:
        	        	            case TYPE_SYMBOL:
        	        	            case USING_SYMBOL:
        	        	            	{
        	        	            		alt51=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt51)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:576:68: normal_index_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_key_def1324);
        	        	        	        normal_index_option184=normal_index_option(ctx);

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

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

        	        	        	    }
        	        	        	    break;

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


        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:577:6: FOREIGN_SYMBOL KEY_SYMBOL ( column_ref )? index_columns reference_definition
        	        	    {
        	        	        FOREIGN_SYMBOL185 = (pANTLR3_COMMON_TOKEN) MATCHT(FOREIGN_SYMBOL, &FOLLOW_FOREIGN_SYMBOL_in_key_def1332);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        KEY_SYMBOL186 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_key_def1334);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        // MySQL.g:577:32: ( column_ref )?
        	        	        {
        	        	            int alt52=2;
        	        	            {
        	        	                int LA52_0 = LA(1);
        	        	                if ( (((LA52_0 >= ACCOUNT_SYMBOL) && (LA52_0 <= YEAR_SYMBOL)) || LA52_0 == BACK_TICK_QUOTED_ID || LA52_0 == DOT_SYMBOL || LA52_0 == DOUBLE_QUOTED_TEXT || LA52_0 == IDENTIFIER))
        	        	                {
        	        	                    alt52=1;
        	        	                }
        	        	            }
        	        	            switch (alt52)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:577:32: column_ref
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1336);
        	        	        	        column_ref187=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1339);
        	        	        index_columns188=index_columns(ctx);

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

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

        	        	        FOLLOWPUSH(FOLLOW_reference_definition_in_key_def1341);
        	        	        reference_definition189=reference_definition(ctx);

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

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

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:578:6: UNIQUE_SYMBOL ( INDEX_SYMBOL | KEY_SYMBOL )? ( column_ref )? ( index_type )? index_columns ( normal_index_option )*
        	        	    {
        	        	        UNIQUE_SYMBOL190 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_key_def1348);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

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

        	        	            switch (alt53)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:
        	        	        	    {
        	        	        	        set191=(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, set191))
        	        	        	            );
        	        	        	            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_defEx;
        	        	        	        }


        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:578:49: ( column_ref )?
        	        	        {
        	        	            int alt54=2;
        	        	            {
        	        	                int LA54_0 = LA(1);
        	        	                if ( (((LA54_0 >= ACCOUNT_SYMBOL) && (LA54_0 <= TYPES_SYMBOL)) || ((LA54_0 >= UDF_RETURNS_SYMBOL) && (LA54_0 <= YEAR_SYMBOL)) || LA54_0 == BACK_TICK_QUOTED_ID || LA54_0 == DOT_SYMBOL || LA54_0 == DOUBLE_QUOTED_TEXT || LA54_0 == IDENTIFIER))
        	        	                {
        	        	                    alt54=1;
        	        	                }
        	        	                else if ( (LA54_0 == TYPE_SYMBOL))
        	        	                {
        	        	                    switch ( LA(2) )
        	        	                    {
        	        	                        case TYPE_SYMBOL:
        	        	                        case DOT_SYMBOL:
        	        	                        case OPEN_PAR_SYMBOL:
        	        	                        case USING_SYMBOL:
        	        	                        	{
        	        	                        		alt54=1;
        	        	                        	}
        	        	                            break;
        	        	                    }

        	        	                }
        	        	            }
        	        	            switch (alt54)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:578:49: column_ref
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1359);
        	        	        	        column_ref192=column_ref(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

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

        	        	            switch (alt55)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:578:61: index_type
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_index_type_in_key_def1362);
        	        	        	        index_type193=index_type(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1365);
        	        	        index_columns194=index_columns(ctx);

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

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

        	        	        // MySQL.g:578:87: ( normal_index_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt56=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case COMMENT_SYMBOL:
        	        	            case KEY_BLOCK_SIZE_SYMBOL:
        	        	            case TYPE_SYMBOL:
        	        	            case USING_SYMBOL:
        	        	            	{
        	        	            		alt56=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt56)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:578:87: normal_index_option
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_key_def1367);
        	        	        	        normal_index_option195=normal_index_option(ctx);

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

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

        	        	        	    }
        	        	        	    break;

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


        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:579:6: CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	        	    {
        	        	        CHECK_SYMBOL196 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_key_def1375);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        OPEN_PAR_SYMBOL197 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_key_def1377);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_expression_in_key_def1379);
        	        	        expression198=expression(ctx);

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

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

        	        	        CLOSE_PAR_SYMBOL199 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_key_def1381);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulekey_defEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:581:4: ( INDEX_SYMBOL | KEY_SYMBOL ) ( column_ref )? ( index_type )? index_columns ( normal_index_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set200=(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, set200))
        	            );
        	            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_defEx;
        	        }


        	        // MySQL.g:581:32: ( column_ref )?
        	        {
        	            int alt58=2;
        	            {
        	                int LA58_0 = LA(1);
        	                if ( (((LA58_0 >= ACCOUNT_SYMBOL) && (LA58_0 <= TYPES_SYMBOL)) || ((LA58_0 >= UDF_RETURNS_SYMBOL) && (LA58_0 <= YEAR_SYMBOL)) || LA58_0 == BACK_TICK_QUOTED_ID || LA58_0 == DOT_SYMBOL || LA58_0 == DOUBLE_QUOTED_TEXT || LA58_0 == IDENTIFIER))
        	                {
        	                    alt58=1;
        	                }
        	                else if ( (LA58_0 == TYPE_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                        case TYPE_SYMBOL:
        	                        case DOT_SYMBOL:
        	                        case OPEN_PAR_SYMBOL:
        	                        case USING_SYMBOL:
        	                        	{
        	                        		alt58=1;
        	                        	}
        	                            break;
        	                    }

        	                }
        	            }
        	            switch (alt58)
        	            {
        	        	case 1:
        	        	    // MySQL.g:581:32: column_ref
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1398);
        	        	        column_ref201=column_ref(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:581:44: ( index_type )?
        	        {
        	            int alt59=2;
        	            switch ( LA(1) )
        	            {
        	                case TYPE_SYMBOL:
        	                case USING_SYMBOL:
        	                	{
        	                		alt59=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt59)
        	            {
        	        	case 1:
        	        	    // MySQL.g:581:44: index_type
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_type_in_key_def1401);
        	        	        index_type202=index_type(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1404);
        	        index_columns203=index_columns(ctx);

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

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

        	        // MySQL.g:581:70: ( normal_index_option )*

        	        for (;;)
        	        {
        	            int alt60=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMENT_SYMBOL:
        	            case KEY_BLOCK_SIZE_SYMBOL:
        	            case TYPE_SYMBOL:
        	            case USING_SYMBOL:
        	            	{
        	            		alt60=1;
        	            	}
        	                break;

        	            }

        	            switch (alt60)
        	            {
        	        	case 1:
        	        	    // MySQL.g:581:70: normal_index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_key_def1406);
        	        	        normal_index_option204=normal_index_option(ctx);

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

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

        	        	    }
        	        	    break;

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


        	    }
        	    break;
        	case 3:
        	    // MySQL.g:582:4: ( FULLTEXT_SYMBOL | SPATIAL_SYMBOL ) ( INDEX_SYMBOL | KEY_SYMBOL )? ( column_ref )? index_columns ( normal_index_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set205=(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, set205))
        	            );
        	            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_defEx;
        	        }


        	        // MySQL.g:582:39: ( INDEX_SYMBOL | KEY_SYMBOL )?
        	        {
        	            int alt61=2;
        	            switch ( LA(1) )
        	            {
        	                case INDEX_SYMBOL:
        	                case KEY_SYMBOL:
        	                	{
        	                		alt61=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt61)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set206=(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, set206))
        	        	            );
        	        	            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_defEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:582:68: ( column_ref )?
        	        {
        	            int alt62=2;
        	            {
        	                int LA62_0 = LA(1);
        	                if ( (((LA62_0 >= ACCOUNT_SYMBOL) && (LA62_0 <= YEAR_SYMBOL)) || LA62_0 == BACK_TICK_QUOTED_ID || LA62_0 == DOT_SYMBOL || LA62_0 == DOUBLE_QUOTED_TEXT || LA62_0 == IDENTIFIER))
        	                {
        	                    alt62=1;
        	                }
        	            }
        	            switch (alt62)
        	            {
        	        	case 1:
        	        	    // MySQL.g:582:68: column_ref
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_column_ref_in_key_def1429);
        	        	        column_ref207=column_ref(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_index_columns_in_key_def1432);
        	        index_columns208=index_columns(ctx);

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

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

        	        // MySQL.g:582:94: ( normal_index_option )*

        	        for (;;)
        	        {
        	            int alt63=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMENT_SYMBOL:
        	            case KEY_BLOCK_SIZE_SYMBOL:
        	            case TYPE_SYMBOL:
        	            case USING_SYMBOL:
        	            	{
        	            		alt63=1;
        	            	}
        	                break;

        	            }

        	            switch (alt63)
        	            {
        	        	case 1:
        	        	    // MySQL.g:582:94: normal_index_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_key_def1434);
        	        	        normal_index_option209=normal_index_option(ctx);

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

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

        	        	    }
        	        	    break;

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


        	    }
        	    break;

            }
        }
    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_def */

/**
 * $ANTLR start alter_order_by
 * MySQL.g:585: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_SYMBOL210;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL211;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL214;
    MySQLParser_identifier_return identifier212;
    #undef	RETURN_TYPE_identifier212
    #define	RETURN_TYPE_identifier212 MySQLParser_identifier_return

    MySQLParser_direction_return direction213;
    #undef	RETURN_TYPE_direction213
    #define	RETURN_TYPE_direction213 MySQLParser_direction_return

    MySQLParser_identifier_return identifier215;
    #undef	RETURN_TYPE_identifier215
    #define	RETURN_TYPE_identifier215 MySQLParser_identifier_return

    MySQLParser_direction_return direction216;
    #undef	RETURN_TYPE_direction216
    #define	RETURN_TYPE_direction216 MySQLParser_direction_return

    pANTLR3_BASE_TREE ORDER_SYMBOL210_tree;
    pANTLR3_BASE_TREE BY_SYMBOL211_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL214_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ORDER_SYMBOL210       = NULL;
    BY_SYMBOL211       = NULL;
    COMMA_SYMBOL214       = NULL;
    identifier212.tree = NULL;

    direction213.tree = NULL;

    identifier215.tree = NULL;

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


    ORDER_SYMBOL210_tree   = NULL;
    BY_SYMBOL211_tree   = NULL;
    COMMA_SYMBOL214_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:585:15: ( ORDER_SYMBOL BY_SYMBOL identifier direction ( options {greedy=true; } : COMMA_SYMBOL identifier direction )* )
        // MySQL.g:586:2: ORDER_SYMBOL BY_SYMBOL identifier direction ( options {greedy=true; } : COMMA_SYMBOL identifier direction )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ORDER_SYMBOL210 = (pANTLR3_COMMON_TOKEN) MATCHT(ORDER_SYMBOL, &FOLLOW_ORDER_SYMBOL_in_alter_order_by1444);
            if  (HASEXCEPTION())
            {
                goto rulealter_order_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            BY_SYMBOL211 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_alter_order_by1446);
            if  (HASEXCEPTION())
            {
                goto rulealter_order_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_identifier_in_alter_order_by1448);
            identifier212=identifier(ctx);

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

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

            FOLLOWPUSH(FOLLOW_direction_in_alter_order_by1450);
            direction213=direction(ctx);

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

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

            // MySQL.g:586:46: ( options {greedy=true; } : COMMA_SYMBOL identifier direction )*

            for (;;)
            {
                int alt65=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA65_1 = LA(2);
                		    if ( (LA65_1 == ENGINE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == TYPE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == MAX_ROWS_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == MIN_ROWS_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == AVG_ROW_LENGTH_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == PASSWORD_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == COMMENT_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == COMPRESSION_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == AUTO_INCREMENT_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == PACK_KEYS_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (((LA65_1 >= STATS_AUTO_RECALC_SYMBOL) && (LA65_1 <= STATS_SAMPLE_PAGES_SYMBOL))))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == TABLE_CHECKSUM_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == DELAY_KEY_WRITE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == ROW_FORMAT_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == CHARSET_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == INSERT_METHOD_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == DATA_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == TABLESPACE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == STORAGE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == CONNECTION_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == KEY_BLOCK_SIZE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == MODIFY_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == DISABLE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == ENABLE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == ALGORITHM_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == UPGRADE_SYMBOL))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (((LA65_1 >= ACCOUNT_SYMBOL) && (LA65_1 <= CACHE_SYMBOL)) || LA65_1 == CLOSE_SYMBOL || ((LA65_1 >= COMMIT_SYMBOL) && (LA65_1 <= UNINSTALL_SYMBOL)) || ((LA65_1 >= WRAPPER_SYMBOL) && (LA65_1 <= AGGREGATE_SYMBOL)) || ((LA65_1 >= ANALYZE_SYMBOL) && (LA65_1 <= AUTHORS_SYMBOL)) || LA65_1 == AUTOEXTEND_SIZE_SYMBOL || ((LA65_1 >= AVG_SYMBOL) && (LA65_1 <= COMPRESSED_SYMBOL)) || LA65_1 == CONCURRENT_SYMBOL || ((LA65_1 >= CONSISTENT_SYMBOL) && (LA65_1 <= CURSOR_NAME_SYMBOL)) || ((LA65_1 >= DATAFILE_SYMBOL) && (LA65_1 <= DEFINER_SYMBOL)) || ((LA65_1 >= DES_KEY_FILE_SYMBOL) && (LA65_1 <= DIRECTORY_SYMBOL)) || ((LA65_1 >= DISCARD_SYMBOL) && (LA65_1 <= ENUM_SYMBOL)) || ((LA65_1 >= ENGINES_SYMBOL) && (LA65_1 <= FOUND_SYMBOL)) || ((LA65_1 >= FULL_SYMBOL) && (LA65_1 <= ISSUER_SYMBOL)) || LA65_1 == JSON_SYMBOL || ((LA65_1 >= LAST_SYMBOL) && (LA65_1 <= LOGS_SYMBOL)) || ((LA65_1 >= MASTER_SYMBOL) && (LA65_1 <= MINUTE_SYMBOL)) || ((LA65_1 >= MODE_SYMBOL) && (LA65_1 <= ONE_SYMBOL)) || ((LA65_1 >= PAGE_SYMBOL) && (LA65_1 <= PARTITIONS_SYMBOL)) || ((LA65_1 >= PHASE_SYMBOL) && (LA65_1 <= ROW_COUNT_SYMBOL)) || ((LA65_1 >= ROW_SYMBOL) && (LA65_1 <= STARTS_SYMBOL)) || LA65_1 == STATUS_SYMBOL || ((LA65_1 >= STRING_SYMBOL) && (LA65_1 <= TABLES_SYMBOL)) || ((LA65_1 >= TEMPORARY_SYMBOL) && (LA65_1 <= TYPES_SYMBOL)) || ((LA65_1 >= UDF_RETURNS_SYMBOL) && (LA65_1 <= YEAR_SYMBOL)) || LA65_1 == BACK_TICK_QUOTED_ID || LA65_1 == DOUBLE_QUOTED_TEXT || LA65_1 == IDENTIFIER))
                		    {
                		        alt65=1;
                		    }
                		    else if ( (LA65_1 == CHECKSUM_SYMBOL))
                		    {
                		        alt65=1;
                		    }

                		}
                	}
                    break;

                }

                switch (alt65)
                {
            	case 1:
            	    // MySQL.g:586:75: COMMA_SYMBOL identifier direction
            	    {
            	        COMMA_SYMBOL214 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_order_by1465);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_order_byEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_order_by1467);
            	        identifier215=identifier(ctx);

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

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

            	        FOLLOWPUSH(FOLLOW_direction_in_alter_order_by1469);
            	        direction216=direction(ctx);

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

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

            	    }
            	    break;

            	default:
            	    goto loop65;	/* break out of the loop */
            	    break;
                }
            }
            loop65: ; /* 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:589: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_SYMBOL217;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR218;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL219;
    MySQLParser_identifier_return identifier220;
    #undef	RETURN_TYPE_identifier220
    #define	RETURN_TYPE_identifier220 MySQLParser_identifier_return

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL217_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR218_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL219_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL217       = NULL;
    EQUAL_OPERATOR218       = NULL;
    DEFAULT_SYMBOL219       = NULL;
    identifier220.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALGORITHM_SYMBOL217_tree   = NULL;
    EQUAL_OPERATOR218_tree   = NULL;
    DEFAULT_SYMBOL219_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:589:23: ( ALGORITHM_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier ) )
        // MySQL.g:590:2: ALGORITHM_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALGORITHM_SYMBOL217 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_alter_algorithm_option1480);
            if  (HASEXCEPTION())
            {
                goto rulealter_algorithm_optionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:590:19: ( EQUAL_OPERATOR )?
            {
                int alt66=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt66=1;
                    	}
                        break;
                }

                switch (alt66)
                {
            	case 1:
            	    // MySQL.g:590:19: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR218 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_algorithm_option1482);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_algorithm_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            // MySQL.g:590:35: ( DEFAULT_SYMBOL | identifier )
            {
                int alt67=2;
                {
                    int LA67_0 = LA(1);
                    if ( (LA67_0 == DEFAULT_SYMBOL))
                    {
                        alt67=1;
                    }
                    else if ( (((LA67_0 >= ACCOUNT_SYMBOL) && (LA67_0 <= YEAR_SYMBOL)) || LA67_0 == BACK_TICK_QUOTED_ID || LA67_0 == DOUBLE_QUOTED_TEXT || LA67_0 == IDENTIFIER))
                    {
                        alt67=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


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


                        goto rulealter_algorithm_optionEx;

                    }
                }
                switch (alt67)
                {
            	case 1:
            	    // MySQL.g:590:37: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL219 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_algorithm_option1487);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_algorithm_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:590:54: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_algorithm_option1491);
            	        identifier220=identifier(ctx);

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

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier220.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:593: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_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 LOCK_SYMBOL221_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR222_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL223_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOCK_SYMBOL221       = NULL;
    EQUAL_OPERATOR222       = NULL;
    DEFAULT_SYMBOL223       = NULL;
    identifier224.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOCK_SYMBOL221_tree   = NULL;
    EQUAL_OPERATOR222_tree   = NULL;
    DEFAULT_SYMBOL223_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:593:18: ( LOCK_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier ) )
        // MySQL.g:594:2: LOCK_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | identifier )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOCK_SYMBOL221 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_alter_lock_option1502);
            if  (HASEXCEPTION())
            {
                goto rulealter_lock_optionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:594:14: ( EQUAL_OPERATOR )?
            {
                int alt68=2;
                switch ( LA(1) )
                {
                    case EQUAL_OPERATOR:
                    	{
                    		alt68=1;
                    	}
                        break;
                }

                switch (alt68)
                {
            	case 1:
            	    // MySQL.g:594:14: EQUAL_OPERATOR
            	    {
            	        EQUAL_OPERATOR222 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_lock_option1504);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_lock_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:594:30: ( DEFAULT_SYMBOL | identifier )
            {
                int alt69=2;
                {
                    int LA69_0 = LA(1);
                    if ( (LA69_0 == DEFAULT_SYMBOL))
                    {
                        alt69=1;
                    }
                    else if ( (((LA69_0 >= ACCOUNT_SYMBOL) && (LA69_0 <= YEAR_SYMBOL)) || LA69_0 == BACK_TICK_QUOTED_ID || LA69_0 == DOUBLE_QUOTED_TEXT || LA69_0 == IDENTIFIER))
                    {
                        alt69=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


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


                        goto rulealter_lock_optionEx;

                    }
                }
                switch (alt69)
                {
            	case 1:
            	    // MySQL.g:594:31: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL223 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_alter_lock_option1508);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_lock_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:594:48: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_alter_lock_option1512);
            	        identifier224=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_lock_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_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:597: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_option225;
    #undef	RETURN_TYPE_alter_algorithm_option225
    #define	RETURN_TYPE_alter_algorithm_option225 MySQLParser_alter_algorithm_option_return

    MySQLParser_alter_lock_option_return alter_lock_option226;
    #undef	RETURN_TYPE_alter_lock_option226
    #define	RETURN_TYPE_alter_lock_option226 MySQLParser_alter_lock_option_return

    MySQLParser_alter_lock_option_return alter_lock_option227;
    #undef	RETURN_TYPE_alter_lock_option227
    #define	RETURN_TYPE_alter_lock_option227 MySQLParser_alter_lock_option_return

    MySQLParser_alter_algorithm_option_return alter_algorithm_option228;
    #undef	RETURN_TYPE_alter_algorithm_option228
    #define	RETURN_TYPE_alter_algorithm_option228 MySQLParser_alter_algorithm_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    alter_algorithm_option225.tree = NULL;

    alter_lock_option226.tree = NULL;

    alter_lock_option227.tree = NULL;

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




    retval.tree  = NULL;

    {
        // MySQL.g:597:21: ({...}? => ( alter_algorithm_option ( alter_lock_option )? | alter_lock_option ( alter_algorithm_option )? ) )
        // MySQL.g:598: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:599:3: ( alter_algorithm_option ( alter_lock_option )? | alter_lock_option ( alter_algorithm_option )? )
            {
                int alt72=2;
                switch ( LA(1) )
                {
                case ALGORITHM_SYMBOL:
                	{
                		alt72=1;
                	}
                    break;
                case LOCK_SYMBOL:
                	{
                		alt72=2;
                	}
                    break;

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

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


                    goto ruleindex_lock_algorithmEx;

                }

                switch (alt72)
                {
            	case 1:
            	    // MySQL.g:600:4: alter_algorithm_option ( alter_lock_option )?
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_algorithm_option_in_index_lock_algorithm1534);
            	        alter_algorithm_option225=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_option225.tree);

            	        // MySQL.g:600:27: ( alter_lock_option )?
            	        {
            	            int alt70=2;
            	            switch ( LA(1) )
            	            {
            	                case LOCK_SYMBOL:
            	                	{
            	                		alt70=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt70)
            	            {
            	        	case 1:
            	        	    // MySQL.g:600:27: alter_lock_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_alter_lock_option_in_index_lock_algorithm1536);
            	        	        alter_lock_option226=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_option226.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:601:6: alter_lock_option ( alter_algorithm_option )?
            	    {
            	        FOLLOWPUSH(FOLLOW_alter_lock_option_in_index_lock_algorithm1544);
            	        alter_lock_option227=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_option227.tree);

            	        // MySQL.g:601:24: ( alter_algorithm_option )?
            	        {
            	            int alt71=2;
            	            switch ( LA(1) )
            	            {
            	                case ALGORITHM_SYMBOL:
            	                	{
            	                		alt71=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt71)
            	            {
            	        	case 1:
            	        	    // MySQL.g:601:24: alter_algorithm_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_alter_algorithm_option_in_index_lock_algorithm1546);
            	        	        alter_algorithm_option228=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_option228.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:605:1: alter_partition : ({...}? => ADD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL | PARTITIONS_SYMBOL real_ulong_number ) | 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 )? real_ulong_number |{...}? TRUNCATE_SYMBOL PARTITION_SYMBOL all_or_partition_name_list | EXCHANGE_SYMBOL PARTITION_SYMBOL identifier WITH_SYMBOL TABLE_SYMBOL table_ref ( validation )? | REORGANIZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( identifier_list INTO_SYMBOL partition_definitions )? |{...}? DISCARD_SYMBOL PARTITION_SYMBOL all_or_partition_name_list TABLESPACE_SYMBOL |{...}? IMPORT_SYMBOL PARTITION_SYMBOL all_or_partition_name_list TABLESPACE_SYMBOL );
 */
static MySQLParser_alter_partition_return
alter_partition(pMySQLParser ctx)
{
    MySQLParser_alter_partition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ADD_SYMBOL229;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL230;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL232;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL234;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL235;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL237;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL238;
    pANTLR3_COMMON_TOKEN    REBUILD_SYMBOL240;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL241;
    pANTLR3_COMMON_TOKEN    OPTIMIZE_SYMBOL244;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL245;
    pANTLR3_COMMON_TOKEN    ANALYZE_SYMBOL249;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL250;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL253;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL254;
    pANTLR3_COMMON_TOKEN    REPAIR_SYMBOL257;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL258;
    pANTLR3_COMMON_TOKEN    COALESCE_SYMBOL262;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL263;
    pANTLR3_COMMON_TOKEN    TRUNCATE_SYMBOL266;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL267;
    pANTLR3_COMMON_TOKEN    EXCHANGE_SYMBOL269;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL270;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL272;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL273;
    pANTLR3_COMMON_TOKEN    REORGANIZE_SYMBOL276;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL277;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL280;
    pANTLR3_COMMON_TOKEN    DISCARD_SYMBOL282;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL283;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL285;
    pANTLR3_COMMON_TOKEN    IMPORT_SYMBOL286;
    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL287;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL289;
    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log231;
    #undef	RETURN_TYPE_no_write_to_bin_log231
    #define	RETURN_TYPE_no_write_to_bin_log231 MySQLParser_no_write_to_bin_log_return

    MySQLParser_partition_definition_return partition_definition233;
    #undef	RETURN_TYPE_partition_definition233
    #define	RETURN_TYPE_partition_definition233 MySQLParser_partition_definition_return

    MySQLParser_real_ulong_number_return real_ulong_number236;
    #undef	RETURN_TYPE_real_ulong_number236
    #define	RETURN_TYPE_real_ulong_number236 MySQLParser_real_ulong_number_return

    MySQLParser_identifier_list_return identifier_list239;
    #undef	RETURN_TYPE_identifier_list239
    #define	RETURN_TYPE_identifier_list239 MySQLParser_identifier_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log242;
    #undef	RETURN_TYPE_no_write_to_bin_log242
    #define	RETURN_TYPE_no_write_to_bin_log242 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list243;
    #undef	RETURN_TYPE_all_or_partition_name_list243
    #define	RETURN_TYPE_all_or_partition_name_list243 MySQLParser_all_or_partition_name_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_log248;
    #undef	RETURN_TYPE_no_write_to_bin_log248
    #define	RETURN_TYPE_no_write_to_bin_log248 MySQLParser_no_write_to_bin_log_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log251;
    #undef	RETURN_TYPE_no_write_to_bin_log251
    #define	RETURN_TYPE_no_write_to_bin_log251 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list252;
    #undef	RETURN_TYPE_all_or_partition_name_list252
    #define	RETURN_TYPE_all_or_partition_name_list252 MySQLParser_all_or_partition_name_list_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list255;
    #undef	RETURN_TYPE_all_or_partition_name_list255
    #define	RETURN_TYPE_all_or_partition_name_list255 MySQLParser_all_or_partition_name_list_return

    MySQLParser_check_option_return check_option256;
    #undef	RETURN_TYPE_check_option256
    #define	RETURN_TYPE_check_option256 MySQLParser_check_option_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log259;
    #undef	RETURN_TYPE_no_write_to_bin_log259
    #define	RETURN_TYPE_no_write_to_bin_log259 MySQLParser_no_write_to_bin_log_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list260;
    #undef	RETURN_TYPE_all_or_partition_name_list260
    #define	RETURN_TYPE_all_or_partition_name_list260 MySQLParser_all_or_partition_name_list_return

    MySQLParser_repair_option_return repair_option261;
    #undef	RETURN_TYPE_repair_option261
    #define	RETURN_TYPE_repair_option261 MySQLParser_repair_option_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log264;
    #undef	RETURN_TYPE_no_write_to_bin_log264
    #define	RETURN_TYPE_no_write_to_bin_log264 MySQLParser_no_write_to_bin_log_return

    MySQLParser_real_ulong_number_return real_ulong_number265;
    #undef	RETURN_TYPE_real_ulong_number265
    #define	RETURN_TYPE_real_ulong_number265 MySQLParser_real_ulong_number_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list268;
    #undef	RETURN_TYPE_all_or_partition_name_list268
    #define	RETURN_TYPE_all_or_partition_name_list268 MySQLParser_all_or_partition_name_list_return

    MySQLParser_identifier_return identifier271;
    #undef	RETURN_TYPE_identifier271
    #define	RETURN_TYPE_identifier271 MySQLParser_identifier_return

    MySQLParser_table_ref_return table_ref274;
    #undef	RETURN_TYPE_table_ref274
    #define	RETURN_TYPE_table_ref274 MySQLParser_table_ref_return

    MySQLParser_validation_return validation275;
    #undef	RETURN_TYPE_validation275
    #define	RETURN_TYPE_validation275 MySQLParser_validation_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log278;
    #undef	RETURN_TYPE_no_write_to_bin_log278
    #define	RETURN_TYPE_no_write_to_bin_log278 MySQLParser_no_write_to_bin_log_return

    MySQLParser_identifier_list_return identifier_list279;
    #undef	RETURN_TYPE_identifier_list279
    #define	RETURN_TYPE_identifier_list279 MySQLParser_identifier_list_return

    MySQLParser_partition_definitions_return partition_definitions281;
    #undef	RETURN_TYPE_partition_definitions281
    #define	RETURN_TYPE_partition_definitions281 MySQLParser_partition_definitions_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list284;
    #undef	RETURN_TYPE_all_or_partition_name_list284
    #define	RETURN_TYPE_all_or_partition_name_list284 MySQLParser_all_or_partition_name_list_return

    MySQLParser_all_or_partition_name_list_return all_or_partition_name_list288;
    #undef	RETURN_TYPE_all_or_partition_name_list288
    #define	RETURN_TYPE_all_or_partition_name_list288 MySQLParser_all_or_partition_name_list_return

    pANTLR3_BASE_TREE ADD_SYMBOL229_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL230_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL232_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL234_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL235_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL237_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL238_tree;
    pANTLR3_BASE_TREE REBUILD_SYMBOL240_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL241_tree;
    pANTLR3_BASE_TREE OPTIMIZE_SYMBOL244_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL245_tree;
    pANTLR3_BASE_TREE ANALYZE_SYMBOL249_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL250_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL253_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL254_tree;
    pANTLR3_BASE_TREE REPAIR_SYMBOL257_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL258_tree;
    pANTLR3_BASE_TREE COALESCE_SYMBOL262_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL263_tree;
    pANTLR3_BASE_TREE TRUNCATE_SYMBOL266_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL267_tree;
    pANTLR3_BASE_TREE EXCHANGE_SYMBOL269_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL270_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL272_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL273_tree;
    pANTLR3_BASE_TREE REORGANIZE_SYMBOL276_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL277_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL280_tree;
    pANTLR3_BASE_TREE DISCARD_SYMBOL282_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL283_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL285_tree;
    pANTLR3_BASE_TREE IMPORT_SYMBOL286_tree;
    pANTLR3_BASE_TREE PARTITION_SYMBOL287_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL289_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ADD_SYMBOL229       = NULL;
    PARTITION_SYMBOL230       = NULL;
    OPEN_PAR_SYMBOL232       = NULL;
    CLOSE_PAR_SYMBOL234       = NULL;
    PARTITIONS_SYMBOL235       = NULL;
    DROP_SYMBOL237       = NULL;
    PARTITION_SYMBOL238       = NULL;
    REBUILD_SYMBOL240       = NULL;
    PARTITION_SYMBOL241       = NULL;
    OPTIMIZE_SYMBOL244       = NULL;
    PARTITION_SYMBOL245       = NULL;
    ANALYZE_SYMBOL249       = NULL;
    PARTITION_SYMBOL250       = NULL;
    CHECK_SYMBOL253       = NULL;
    PARTITION_SYMBOL254       = NULL;
    REPAIR_SYMBOL257       = NULL;
    PARTITION_SYMBOL258       = NULL;
    COALESCE_SYMBOL262       = NULL;
    PARTITION_SYMBOL263       = NULL;
    TRUNCATE_SYMBOL266       = NULL;
    PARTITION_SYMBOL267       = NULL;
    EXCHANGE_SYMBOL269       = NULL;
    PARTITION_SYMBOL270       = NULL;
    WITH_SYMBOL272       = NULL;
    TABLE_SYMBOL273       = NULL;
    REORGANIZE_SYMBOL276       = NULL;
    PARTITION_SYMBOL277       = NULL;
    INTO_SYMBOL280       = NULL;
    DISCARD_SYMBOL282       = NULL;
    PARTITION_SYMBOL283       = NULL;
    TABLESPACE_SYMBOL285       = NULL;
    IMPORT_SYMBOL286       = NULL;
    PARTITION_SYMBOL287       = NULL;
    TABLESPACE_SYMBOL289       = NULL;
    no_write_to_bin_log231.tree = NULL;

    partition_definition233.tree = NULL;

    real_ulong_number236.tree = NULL;

    identifier_list239.tree = NULL;

    no_write_to_bin_log242.tree = NULL;

    all_or_partition_name_list243.tree = NULL;

    no_write_to_bin_log246.tree = NULL;

    all_or_partition_name_list247.tree = NULL;

    no_write_to_bin_log248.tree = NULL;

    no_write_to_bin_log251.tree = NULL;

    all_or_partition_name_list252.tree = NULL;

    all_or_partition_name_list255.tree = NULL;

    check_option256.tree = NULL;

    no_write_to_bin_log259.tree = NULL;

    all_or_partition_name_list260.tree = NULL;

    repair_option261.tree = NULL;

    no_write_to_bin_log264.tree = NULL;

    real_ulong_number265.tree = NULL;

    all_or_partition_name_list268.tree = NULL;

    identifier271.tree = NULL;

    table_ref274.tree = NULL;

    validation275.tree = NULL;

    no_write_to_bin_log278.tree = NULL;

    identifier_list279.tree = NULL;

    partition_definitions281.tree = NULL;

    all_or_partition_name_list284.tree = NULL;

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


    ADD_SYMBOL229_tree   = NULL;
    PARTITION_SYMBOL230_tree   = NULL;
    OPEN_PAR_SYMBOL232_tree   = NULL;
    CLOSE_PAR_SYMBOL234_tree   = NULL;
    PARTITIONS_SYMBOL235_tree   = NULL;
    DROP_SYMBOL237_tree   = NULL;
    PARTITION_SYMBOL238_tree   = NULL;
    REBUILD_SYMBOL240_tree   = NULL;
    PARTITION_SYMBOL241_tree   = NULL;
    OPTIMIZE_SYMBOL244_tree   = NULL;
    PARTITION_SYMBOL245_tree   = NULL;
    ANALYZE_SYMBOL249_tree   = NULL;
    PARTITION_SYMBOL250_tree   = NULL;
    CHECK_SYMBOL253_tree   = NULL;
    PARTITION_SYMBOL254_tree   = NULL;
    REPAIR_SYMBOL257_tree   = NULL;
    PARTITION_SYMBOL258_tree   = NULL;
    COALESCE_SYMBOL262_tree   = NULL;
    PARTITION_SYMBOL263_tree   = NULL;
    TRUNCATE_SYMBOL266_tree   = NULL;
    PARTITION_SYMBOL267_tree   = NULL;
    EXCHANGE_SYMBOL269_tree   = NULL;
    PARTITION_SYMBOL270_tree   = NULL;
    WITH_SYMBOL272_tree   = NULL;
    TABLE_SYMBOL273_tree   = NULL;
    REORGANIZE_SYMBOL276_tree   = NULL;
    PARTITION_SYMBOL277_tree   = NULL;
    INTO_SYMBOL280_tree   = NULL;
    DISCARD_SYMBOL282_tree   = NULL;
    PARTITION_SYMBOL283_tree   = NULL;
    TABLESPACE_SYMBOL285_tree   = NULL;
    IMPORT_SYMBOL286_tree   = NULL;
    PARTITION_SYMBOL287_tree   = NULL;
    TABLESPACE_SYMBOL289_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:605:16: ({...}? => ADD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL | PARTITIONS_SYMBOL real_ulong_number ) | 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 )? real_ulong_number |{...}? TRUNCATE_SYMBOL PARTITION_SYMBOL all_or_partition_name_list | EXCHANGE_SYMBOL PARTITION_SYMBOL identifier WITH_SYMBOL TABLE_SYMBOL table_ref ( validation )? | REORGANIZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( identifier_list INTO_SYMBOL partition_definitions )? |{...}? DISCARD_SYMBOL PARTITION_SYMBOL all_or_partition_name_list TABLESPACE_SYMBOL |{...}? IMPORT_SYMBOL PARTITION_SYMBOL all_or_partition_name_list TABLESPACE_SYMBOL )

            ANTLR3_UINT32 alt86;

            alt86=13;

            {
                int LA86_0 = LA(1);
                if ( ((LA(1) == ADD_SYMBOL && LA(2) == PARTITION_SYMBOL)) && (LA86_0 == ADD_SYMBOL))
                {
                    alt86=1;
                }
                else if ( (LA86_0 == DROP_SYMBOL))
                {
                    alt86=2;
                }
                else if ( (LA86_0 == REBUILD_SYMBOL))
                {
                    alt86=3;
                }
                else if ( (LA86_0 == OPTIMIZE_SYMBOL))
                {
                    alt86=4;
                }
                else if ( (LA86_0 == ANALYZE_SYMBOL))
                {
                    alt86=5;
                }
                else if ( (LA86_0 == CHECK_SYMBOL))
                {
                    alt86=6;
                }
                else if ( (LA86_0 == REPAIR_SYMBOL))
                {
                    alt86=7;
                }
                else if ( (LA86_0 == COALESCE_SYMBOL))
                {
                    alt86=8;
                }
                else if ( (LA86_0 == TRUNCATE_SYMBOL))
                {
                    alt86=9;
                }
                else if ( (LA86_0 == EXCHANGE_SYMBOL))
                {
                    alt86=10;
                }
                else if ( (LA86_0 == REORGANIZE_SYMBOL))
                {
                    alt86=11;
                }
                else if ( (LA86_0 == DISCARD_SYMBOL))
                {
                    alt86=12;
                }
                else if ( (LA86_0 == IMPORT_SYMBOL))
                {
                    alt86=13;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


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


                    goto rulealter_partitionEx;

                }
            }
            switch (alt86)
            {
        	case 1:
        	    // MySQL.g:606:2: {...}? => ADD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? ( OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL | PARTITIONS_SYMBOL real_ulong_number )
        	    {
        	        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_SYMBOL229 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_alter_partition1564);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL230 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1566);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:606:85: ( no_write_to_bin_log )?
        	        {
        	            int alt73=2;
        	            {
        	                int LA73_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA73_0 == LOCAL_SYMBOL))
        	                {
        	                    alt73=1;
        	                }
        	                else if ( (LA73_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt73=1;
        	                }
        	            }
        	            switch (alt73)
        	            {
        	        	case 1:
        	        	    // MySQL.g:606:85: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1568);
        	        	        no_write_to_bin_log231=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_log231.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:607:3: ( OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL | PARTITIONS_SYMBOL real_ulong_number )
        	        {
        	            int alt74=2;
        	            switch ( LA(1) )
        	            {
        	            case OPEN_PAR_SYMBOL:
        	            	{
        	            		alt74=1;
        	            	}
        	                break;
        	            case PARTITIONS_SYMBOL:
        	            	{
        	            		alt74=2;
        	            	}
        	                break;

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

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


        	                goto rulealter_partitionEx;

        	            }

        	            switch (alt74)
        	            {
        	        	case 1:
        	        	    // MySQL.g:608:4: OPEN_PAR_SYMBOL partition_definition CLOSE_PAR_SYMBOL
        	        	    {
        	        	        OPEN_PAR_SYMBOL232 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_alter_partition1578);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_partition_definition_in_alter_partition1580);
        	        	        partition_definition233=partition_definition(ctx);

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

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

        	        	        CLOSE_PAR_SYMBOL234 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_alter_partition1582);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:609:6: PARTITIONS_SYMBOL real_ulong_number
        	        	    {
        	        	        PARTITIONS_SYMBOL235 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONS_SYMBOL, &FOLLOW_PARTITIONS_SYMBOL_in_alter_partition1589);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_alter_partition1591);
        	        	        real_ulong_number236=real_ulong_number(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:611:4: DROP_SYMBOL PARTITION_SYMBOL identifier_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DROP_SYMBOL237 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_alter_partition1600);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL238 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1602);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_identifier_list_in_alter_partition1604);
        	        identifier_list239=identifier_list(ctx);

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

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

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:612:4: REBUILD_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REBUILD_SYMBOL240 = (pANTLR3_COMMON_TOKEN) MATCHT(REBUILD_SYMBOL, &FOLLOW_REBUILD_SYMBOL_in_alter_partition1609);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL241 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1611);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:612:36: ( no_write_to_bin_log )?
        	        {
        	            int alt75=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		{
        	                		    int LA75_1 = LA(2);
        	                		    if ( ((LA(1) == LOCAL_SYMBOL)) && (((LA75_1 >= ACCOUNT_SYMBOL) && (LA75_1 <= YEAR_SYMBOL)) || LA75_1 == ALL_SYMBOL || LA75_1 == BACK_TICK_QUOTED_ID || LA75_1 == DOUBLE_QUOTED_TEXT || LA75_1 == IDENTIFIER))
        	                		    {
        	                		        alt75=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt75=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt75)
        	            {
        	        	case 1:
        	        	    // MySQL.g:612:36: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1613);
        	        	        no_write_to_bin_log242=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_log242.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1616);
        	        all_or_partition_name_list243=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_list243.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:613: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_SYMBOL244 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIMIZE_SYMBOL, &FOLLOW_OPTIMIZE_SYMBOL_in_alter_partition1621);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL245 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1623);
        	        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:613:37: ( no_write_to_bin_log )?
        	        {
        	            int alt76=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		{
        	                		    int LA76_1 = LA(2);
        	                		    if ( ((LA(1) == LOCAL_SYMBOL)) && (((LA76_1 >= ACCOUNT_SYMBOL) && (LA76_1 <= LIST_SYMBOL)) || ((LA76_1 >= LOCKS_SYMBOL) && (LA76_1 <= YEAR_SYMBOL)) || LA76_1 == ALL_SYMBOL || LA76_1 == BACK_TICK_QUOTED_ID || LA76_1 == DOUBLE_QUOTED_TEXT || LA76_1 == IDENTIFIER))
        	                		    {
        	                		        alt76=1;
        	                		    }
        	                		    else if ( (LA76_1 == LOCAL_SYMBOL))
        	                		    {
        	                		        {
        	                		            int LA76_13 = LA(3);
        	                		            if ( ((LA(1) == LOCAL_SYMBOL)))
        	                		            {
        	                		                alt76=1;
        	                		            }
        	                		        }
        	                		    }
        	                		}
        	                	}
        	                    break;
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt76=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt76)
        	            {
        	        	case 1:
        	        	    // MySQL.g:613:37: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1625);
        	        	        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_partition1628);
        	        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);

        	        // MySQL.g:613:85: ( no_write_to_bin_log )?
        	        {
        	            int alt77=2;
        	            {
        	                int LA77_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA77_0 == LOCAL_SYMBOL))
        	                {
        	                    alt77=1;
        	                }
        	                else if ( (LA77_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt77=1;
        	                }
        	            }
        	            switch (alt77)
        	            {
        	        	case 1:
        	        	    // MySQL.g:613:85: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1630);
        	        	        no_write_to_bin_log248=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_log248.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:614:4: ANALYZE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? all_or_partition_name_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ANALYZE_SYMBOL249 = (pANTLR3_COMMON_TOKEN) MATCHT(ANALYZE_SYMBOL, &FOLLOW_ANALYZE_SYMBOL_in_alter_partition1637);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL250 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1639);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:614:36: ( no_write_to_bin_log )?
        	        {
        	            int alt78=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		{
        	                		    int LA78_1 = LA(2);
        	                		    if ( ((LA(1) == LOCAL_SYMBOL)) && (((LA78_1 >= ACCOUNT_SYMBOL) && (LA78_1 <= YEAR_SYMBOL)) || LA78_1 == ALL_SYMBOL || LA78_1 == BACK_TICK_QUOTED_ID || LA78_1 == DOUBLE_QUOTED_TEXT || LA78_1 == IDENTIFIER))
        	                		    {
        	                		        alt78=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt78=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt78)
        	            {
        	        	case 1:
        	        	    // MySQL.g:614:36: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1641);
        	        	        no_write_to_bin_log251=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_log251.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1644);
        	        all_or_partition_name_list252=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_list252.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:615:4: CHECK_SYMBOL PARTITION_SYMBOL all_or_partition_name_list ( check_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECK_SYMBOL253 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_alter_partition1649);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL254 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1651);
        	        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);
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1653);
        	        all_or_partition_name_list255=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_list255.tree);

        	        // MySQL.g:615:61: ( check_option )*

        	        for (;;)
        	        {
        	            int alt79=2;
        	            switch ( LA(1) )
        	            {
        	            case CHANGED_SYMBOL:
        	            case EXTENDED_SYMBOL:
        	            case FAST_SYMBOL:
        	            case MEDIUM_SYMBOL:
        	            case QUICK_SYMBOL:
        	            case FOR_SYMBOL:
        	            	{
        	            		alt79=1;
        	            	}
        	                break;

        	            }

        	            switch (alt79)
        	            {
        	        	case 1:
        	        	    // MySQL.g:615:61: check_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_check_option_in_alter_partition1655);
        	        	        check_option256=check_option(ctx);

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

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

        	        	    }
        	        	    break;

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


        	    }
        	    break;
        	case 7:
        	    // MySQL.g:616: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_SYMBOL257 = (pANTLR3_COMMON_TOKEN) MATCHT(REPAIR_SYMBOL, &FOLLOW_REPAIR_SYMBOL_in_alter_partition1661);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL258 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1663);
        	        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);
        	        }

        	        // MySQL.g:616:35: ( no_write_to_bin_log )?
        	        {
        	            int alt80=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		{
        	                		    int LA80_1 = LA(2);
        	                		    if ( ((LA(1) == LOCAL_SYMBOL)) && (((LA80_1 >= ACCOUNT_SYMBOL) && (LA80_1 <= EXPORT_SYMBOL)) || ((LA80_1 >= EXTENT_SIZE_SYMBOL) && (LA80_1 <= QUERY_SYMBOL)) || ((LA80_1 >= READ_ONLY_SYMBOL) && (LA80_1 <= USER_SYMBOL)) || ((LA80_1 >= VARIABLES_SYMBOL) && (LA80_1 <= YEAR_SYMBOL)) || LA80_1 == ALL_SYMBOL || LA80_1 == BACK_TICK_QUOTED_ID || LA80_1 == DOUBLE_QUOTED_TEXT || LA80_1 == IDENTIFIER))
        	                		    {
        	                		        alt80=1;
        	                		    }
        	                		    else if ( (LA80_1 == EXTENDED_SYMBOL || LA80_1 == QUICK_SYMBOL || LA80_1 == USE_FRM_SYMBOL))
        	                		    {
        	                		        {
        	                		            int LA80_13 = LA(3);
        	                		            if ( ((LA(1) == LOCAL_SYMBOL)))
        	                		            {
        	                		                alt80=1;
        	                		            }
        	                		        }
        	                		    }
        	                		}
        	                	}
        	                    break;
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt80=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt80)
        	            {
        	        	case 1:
        	        	    // MySQL.g:616:35: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1665);
        	        	        no_write_to_bin_log259=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_log259.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1668);
        	        all_or_partition_name_list260=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_list260.tree);

        	        // MySQL.g:616:83: ( repair_option )*

        	        for (;;)
        	        {
        	            int alt81=2;
        	            switch ( LA(1) )
        	            {
        	            case EXTENDED_SYMBOL:
        	            case QUICK_SYMBOL:
        	            case USE_FRM_SYMBOL:
        	            	{
        	            		alt81=1;
        	            	}
        	                break;

        	            }

        	            switch (alt81)
        	            {
        	        	case 1:
        	        	    // MySQL.g:616:83: repair_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_repair_option_in_alter_partition1670);
        	        	        repair_option261=repair_option(ctx);

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

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

        	        	    }
        	        	    break;

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


        	    }
        	    break;
        	case 8:
        	    // MySQL.g:617:4: COALESCE_SYMBOL PARTITION_SYMBOL ( no_write_to_bin_log )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COALESCE_SYMBOL262 = (pANTLR3_COMMON_TOKEN) MATCHT(COALESCE_SYMBOL, &FOLLOW_COALESCE_SYMBOL_in_alter_partition1676);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL263 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1678);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:617:37: ( no_write_to_bin_log )?
        	        {
        	            int alt82=2;
        	            {
        	                int LA82_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA82_0 == LOCAL_SYMBOL))
        	                {
        	                    alt82=1;
        	                }
        	                else if ( (LA82_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt82=1;
        	                }
        	            }
        	            switch (alt82)
        	            {
        	        	case 1:
        	        	    // MySQL.g:617:37: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1680);
        	        	        no_write_to_bin_log264=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_log264.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_alter_partition1683);
        	        real_ulong_number265=real_ulong_number(ctx);

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

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

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:618: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_SYMBOL266 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_alter_partition1690);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL267 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1692);
        	        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);
        	        }

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1694);
        	        all_or_partition_name_list268=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_list268.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:619:4: EXCHANGE_SYMBOL PARTITION_SYMBOL identifier WITH_SYMBOL TABLE_SYMBOL table_ref ( validation )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXCHANGE_SYMBOL269 = (pANTLR3_COMMON_TOKEN) MATCHT(EXCHANGE_SYMBOL, &FOLLOW_EXCHANGE_SYMBOL_in_alter_partition1699);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL270 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1701);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_identifier_in_alter_partition1703);
        	        identifier271=identifier(ctx);

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

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

        	        WITH_SYMBOL272 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_alter_partition1705);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        TABLE_SYMBOL273 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_alter_partition1707);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_table_ref_in_alter_partition1709);
        	        table_ref274=table_ref(ctx);

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

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

        	        // MySQL.g:619:83: ( validation )?
        	        {
        	            int alt83=2;
        	            {
        	                int LA83_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50706)) && (LA83_0 == WITHOUT_SYMBOL || LA83_0 == WITH_SYMBOL))
        	                {
        	                    alt83=1;
        	                }
        	            }
        	            switch (alt83)
        	            {
        	        	case 1:
        	        	    // MySQL.g:619:83: validation
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_validation_in_alter_partition1711);
        	        	        validation275=validation(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:620: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_SYMBOL276 = (pANTLR3_COMMON_TOKEN) MATCHT(REORGANIZE_SYMBOL, &FOLLOW_REORGANIZE_SYMBOL_in_alter_partition1717);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL277 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1719);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:620:39: ( no_write_to_bin_log )?
        	        {
        	            int alt84=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		{
        	                		    int LA84_1 = LA(2);
        	                		    if ( ((LA(1) == LOCAL_SYMBOL)) && (LA84_1 == EOF || ((LA84_1 >= ACCOUNT_SYMBOL) && (LA84_1 <= YEAR_SYMBOL)) || LA84_1 == BACK_TICK_QUOTED_ID || LA84_1 == DOUBLE_QUOTED_TEXT || LA84_1 == IDENTIFIER || LA84_1 == SEMICOLON_SYMBOL))
        	                		    {
        	                		        alt84=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	                case NO_WRITE_TO_BINLOG_SYMBOL:
        	                	{
        	                		alt84=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt84)
        	            {
        	        	case 1:
        	        	    // MySQL.g:620:39: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_alter_partition1721);
        	        	        no_write_to_bin_log278=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_log278.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:620:60: ( identifier_list INTO_SYMBOL partition_definitions )?
        	        {
        	            int alt85=2;
        	            {
        	                int LA85_0 = LA(1);
        	                if ( (((LA85_0 >= ACCOUNT_SYMBOL) && (LA85_0 <= YEAR_SYMBOL)) || LA85_0 == BACK_TICK_QUOTED_ID || LA85_0 == DOUBLE_QUOTED_TEXT || LA85_0 == IDENTIFIER))
        	                {
        	                    alt85=1;
        	                }
        	            }
        	            switch (alt85)
        	            {
        	        	case 1:
        	        	    // MySQL.g:620:61: identifier_list INTO_SYMBOL partition_definitions
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_in_alter_partition1725);
        	        	        identifier_list279=identifier_list(ctx);

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

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

        	        	        INTO_SYMBOL280 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_alter_partition1727);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_partitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_partition_definitions_in_alter_partition1729);
        	        	        partition_definitions281=partition_definitions(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:621:4: {...}? DISCARD_SYMBOL PARTITION_SYMBOL all_or_partition_name_list TABLESPACE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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


        	        }

        	        DISCARD_SYMBOL282 = (pANTLR3_COMMON_TOKEN) MATCHT(DISCARD_SYMBOL, &FOLLOW_DISCARD_SYMBOL_in_alter_partition1738);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL283 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1740);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1742);
        	        all_or_partition_name_list284=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_list284.tree);

        	        TABLESPACE_SYMBOL285 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1744);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:622:4: {...}? IMPORT_SYMBOL PARTITION_SYMBOL all_or_partition_name_list TABLESPACE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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


        	        }

        	        IMPORT_SYMBOL286 = (pANTLR3_COMMON_TOKEN) MATCHT(IMPORT_SYMBOL, &FOLLOW_IMPORT_SYMBOL_in_alter_partition1751);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        PARTITION_SYMBOL287 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_alter_partition1753);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_all_or_partition_name_list_in_alter_partition1755);
        	        all_or_partition_name_list288=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_list288.tree);

        	        TABLESPACE_SYMBOL289 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_alter_partition1757);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_partitionEx;
        	        }
        	        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);
        	        }

        	    }
        	    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 validation
 * MySQL.g:625:1: validation :{...}? => ( WITH_SYMBOL | WITHOUT_SYMBOL ) VALIDATION_SYMBOL ;
 */
static MySQLParser_validation_return
validation(pMySQLParser ctx)
{
    MySQLParser_validation_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set290;
    pANTLR3_COMMON_TOKEN    VALIDATION_SYMBOL291;

    pANTLR3_BASE_TREE set290_tree;
    pANTLR3_BASE_TREE VALIDATION_SYMBOL291_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set290       = NULL;
    VALIDATION_SYMBOL291       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set290_tree   = NULL;
    VALIDATION_SYMBOL291_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:625:11: ({...}? => ( WITH_SYMBOL | WITHOUT_SYMBOL ) VALIDATION_SYMBOL )
        // MySQL.g:626:2: {...}? => ( WITH_SYMBOL | WITHOUT_SYMBOL ) VALIDATION_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


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

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


            }

            set290=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == WITHOUT_SYMBOL || LA(1) == WITH_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set290))
                );
                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 rulevalidationEx;
            }


            VALIDATION_SYMBOL291 = (pANTLR3_COMMON_TOKEN) MATCHT(VALIDATION_SYMBOL, &FOLLOW_VALIDATION_SYMBOL_in_validation1778);
            if  (HASEXCEPTION())
            {
                goto rulevalidationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

        }

    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

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


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

/**
 * $ANTLR start remove_partitioning
 * MySQL.g:629: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_SYMBOL292;
    pANTLR3_COMMON_TOKEN    PARTITIONING_SYMBOL293;

    pANTLR3_BASE_TREE REMOVE_SYMBOL292_tree;
    pANTLR3_BASE_TREE PARTITIONING_SYMBOL293_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REMOVE_SYMBOL292       = NULL;
    PARTITIONING_SYMBOL293       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REMOVE_SYMBOL292_tree   = NULL;
    PARTITIONING_SYMBOL293_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:629:20: ({...}? => REMOVE_SYMBOL PARTITIONING_SYMBOL )
        // MySQL.g:630: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_SYMBOL292 = (pANTLR3_COMMON_TOKEN) MATCHT(REMOVE_SYMBOL, &FOLLOW_REMOVE_SYMBOL_in_remove_partitioning1791);
            if  (HASEXCEPTION())
            {
                goto ruleremove_partitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            PARTITIONING_SYMBOL293 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONING_SYMBOL, &FOLLOW_PARTITIONING_SYMBOL_in_remove_partitioning1793);
            if  (HASEXCEPTION())
            {
                goto ruleremove_partitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITIONING_SYMBOL293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONING_SYMBOL293));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONING_SYMBOL293_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:633: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_SYMBOL294;
    MySQLParser_identifier_list_return identifier_list295;
    #undef	RETURN_TYPE_identifier_list295
    #define	RETURN_TYPE_identifier_list295 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE ALL_SYMBOL294_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

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


    ALL_SYMBOL294_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:633:27: ( ALL_SYMBOL | identifier_list )

            ANTLR3_UINT32 alt87;

            alt87=2;

            {
                int LA87_0 = LA(1);
                if ( (LA87_0 == ALL_SYMBOL))
                {
                    alt87=1;
                }
                else if ( (((LA87_0 >= ACCOUNT_SYMBOL) && (LA87_0 <= YEAR_SYMBOL)) || LA87_0 == BACK_TICK_QUOTED_ID || LA87_0 == DOUBLE_QUOTED_TEXT || LA87_0 == IDENTIFIER))
                {
                    alt87=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


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


                    goto ruleall_or_partition_name_listEx;

                }
            }
            switch (alt87)
            {
        	case 1:
        	    // MySQL.g:634:2: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL294 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_all_or_partition_name_list1802);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_or_partition_name_listEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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


        	        FOLLOWPUSH(FOLLOW_identifier_list_in_all_or_partition_name_list1807);
        	        identifier_list295=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_list295.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:638:1: alter_tablespace : TABLESPACE_SYMBOL tablespace_ref ( ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL string_literal ( alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )* )? | CHANGE_SYMBOL DATAFILE_SYMBOL string_literal ( change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )* )? | READ_ONLY_SYMBOL | READ_WRITE_SYMBOL | NOT_SYMBOL ACCESSIBLE_SYMBOL ) ;
 */
static MySQLParser_alter_tablespace_return
alter_tablespace(pMySQLParser ctx)
{
    MySQLParser_alter_tablespace_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL296;
    pANTLR3_COMMON_TOKEN    set298;
    pANTLR3_COMMON_TOKEN    DATAFILE_SYMBOL299;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL302;
    pANTLR3_COMMON_TOKEN    CHANGE_SYMBOL304;
    pANTLR3_COMMON_TOKEN    DATAFILE_SYMBOL305;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL308;
    pANTLR3_COMMON_TOKEN    READ_ONLY_SYMBOL310;
    pANTLR3_COMMON_TOKEN    READ_WRITE_SYMBOL311;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL312;
    pANTLR3_COMMON_TOKEN    ACCESSIBLE_SYMBOL313;
    MySQLParser_tablespace_ref_return tablespace_ref297;
    #undef	RETURN_TYPE_tablespace_ref297
    #define	RETURN_TYPE_tablespace_ref297 MySQLParser_tablespace_ref_return

    MySQLParser_string_literal_return string_literal300;
    #undef	RETURN_TYPE_string_literal300
    #define	RETURN_TYPE_string_literal300 MySQLParser_string_literal_return

    MySQLParser_alter_tablespace_option_return alter_tablespace_option301;
    #undef	RETURN_TYPE_alter_tablespace_option301
    #define	RETURN_TYPE_alter_tablespace_option301 MySQLParser_alter_tablespace_option_return

    MySQLParser_alter_tablespace_option_return alter_tablespace_option303;
    #undef	RETURN_TYPE_alter_tablespace_option303
    #define	RETURN_TYPE_alter_tablespace_option303 MySQLParser_alter_tablespace_option_return

    MySQLParser_string_literal_return string_literal306;
    #undef	RETURN_TYPE_string_literal306
    #define	RETURN_TYPE_string_literal306 MySQLParser_string_literal_return

    MySQLParser_change_tablespace_option_return change_tablespace_option307;
    #undef	RETURN_TYPE_change_tablespace_option307
    #define	RETURN_TYPE_change_tablespace_option307 MySQLParser_change_tablespace_option_return

    MySQLParser_change_tablespace_option_return change_tablespace_option309;
    #undef	RETURN_TYPE_change_tablespace_option309
    #define	RETURN_TYPE_change_tablespace_option309 MySQLParser_change_tablespace_option_return

    pANTLR3_BASE_TREE TABLESPACE_SYMBOL296_tree;
    pANTLR3_BASE_TREE set298_tree;
    pANTLR3_BASE_TREE DATAFILE_SYMBOL299_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL302_tree;
    pANTLR3_BASE_TREE CHANGE_SYMBOL304_tree;
    pANTLR3_BASE_TREE DATAFILE_SYMBOL305_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL308_tree;
    pANTLR3_BASE_TREE READ_ONLY_SYMBOL310_tree;
    pANTLR3_BASE_TREE READ_WRITE_SYMBOL311_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL312_tree;
    pANTLR3_BASE_TREE ACCESSIBLE_SYMBOL313_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLESPACE_SYMBOL296       = NULL;
    set298       = NULL;
    DATAFILE_SYMBOL299       = NULL;
    COMMA_SYMBOL302       = NULL;
    CHANGE_SYMBOL304       = NULL;
    DATAFILE_SYMBOL305       = NULL;
    COMMA_SYMBOL308       = NULL;
    READ_ONLY_SYMBOL310       = NULL;
    READ_WRITE_SYMBOL311       = NULL;
    NOT_SYMBOL312       = NULL;
    ACCESSIBLE_SYMBOL313       = NULL;
    tablespace_ref297.tree = NULL;

    string_literal300.tree = NULL;

    alter_tablespace_option301.tree = NULL;

    alter_tablespace_option303.tree = NULL;

    string_literal306.tree = NULL;

    change_tablespace_option307.tree = NULL;

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


    TABLESPACE_SYMBOL296_tree   = NULL;
    set298_tree   = NULL;
    DATAFILE_SYMBOL299_tree   = NULL;
    COMMA_SYMBOL302_tree   = NULL;
    CHANGE_SYMBOL304_tree   = NULL;
    DATAFILE_SYMBOL305_tree   = NULL;
    COMMA_SYMBOL308_tree   = NULL;
    READ_ONLY_SYMBOL310_tree   = NULL;
    READ_WRITE_SYMBOL311_tree   = NULL;
    NOT_SYMBOL312_tree   = NULL;
    ACCESSIBLE_SYMBOL313_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:638:17: ( TABLESPACE_SYMBOL tablespace_ref ( ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL string_literal ( alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )* )? | CHANGE_SYMBOL DATAFILE_SYMBOL string_literal ( change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )* )? | READ_ONLY_SYMBOL | READ_WRITE_SYMBOL | NOT_SYMBOL ACCESSIBLE_SYMBOL ) )
        // MySQL.g:639:2: TABLESPACE_SYMBOL tablespace_ref ( ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL string_literal ( alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )* )? | CHANGE_SYMBOL DATAFILE_SYMBOL string_literal ( change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )* )? | READ_ONLY_SYMBOL | READ_WRITE_SYMBOL | NOT_SYMBOL ACCESSIBLE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TABLESPACE_SYMBOL296 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_alter_tablespace1816);
            if  (HASEXCEPTION())
            {
                goto rulealter_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_tablespace_ref_in_alter_tablespace1818);
            tablespace_ref297=tablespace_ref(ctx);

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

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

            // MySQL.g:640:2: ( ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL string_literal ( alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )* )? | CHANGE_SYMBOL DATAFILE_SYMBOL string_literal ( change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )* )? | READ_ONLY_SYMBOL | READ_WRITE_SYMBOL | NOT_SYMBOL ACCESSIBLE_SYMBOL )
            {
                int alt94=5;
                switch ( LA(1) )
                {
                case ADD_SYMBOL:
                case DROP_SYMBOL:
                	{
                		alt94=1;
                	}
                    break;
                case CHANGE_SYMBOL:
                	{
                		alt94=2;
                	}
                    break;
                case READ_ONLY_SYMBOL:
                	{
                		alt94=3;
                	}
                    break;
                case READ_WRITE_SYMBOL:
                	{
                		alt94=4;
                	}
                    break;
                case NOT_SYMBOL:
                	{
                		alt94=5;
                	}
                    break;

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

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


                    goto rulealter_tablespaceEx;

                }

                switch (alt94)
                {
            	case 1:
            	    // MySQL.g:641:3: ( ADD_SYMBOL | DROP_SYMBOL ) DATAFILE_SYMBOL string_literal ( alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )* )?
            	    {
            	        set298=(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, set298))
            	            );
            	            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_SYMBOL299 = (pANTLR3_COMMON_TOKEN) MATCHT(DATAFILE_SYMBOL, &FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1833);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_string_literal_in_alter_tablespace1835);
            	        string_literal300=string_literal(ctx);

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

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

            	        // MySQL.g:641:61: ( alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )* )?
            	        {
            	            int alt90=2;
            	            switch ( LA(1) )
            	            {
            	                case AUTOEXTEND_SIZE_SYMBOL:
            	                case ENGINE_SYMBOL:
            	                case INITIAL_SIZE_SYMBOL:
            	                case MAX_SIZE_SYMBOL:
            	                case NO_WAIT_SYMBOL:
            	                case STORAGE_SYMBOL:
            	                case WAIT_SYMBOL:
            	                	{
            	                		alt90=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt90)
            	            {
            	        	case 1:
            	        	    // MySQL.g:641:62: alter_tablespace_option ( ( COMMA_SYMBOL )? alter_tablespace_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_alter_tablespace_option_in_alter_tablespace1838);
            	        	        alter_tablespace_option301=alter_tablespace_option(ctx);

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

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

            	        	        // MySQL.g:641:86: ( ( COMMA_SYMBOL )? alter_tablespace_option )*

            	        	        for (;;)
            	        	        {
            	        	            int alt89=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case AUTOEXTEND_SIZE_SYMBOL:
            	        	            case ENGINE_SYMBOL:
            	        	            case INITIAL_SIZE_SYMBOL:
            	        	            case MAX_SIZE_SYMBOL:
            	        	            case NO_WAIT_SYMBOL:
            	        	            case STORAGE_SYMBOL:
            	        	            case WAIT_SYMBOL:
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt89=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt89)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:641:87: ( COMMA_SYMBOL )? alter_tablespace_option
            	        	        	    {
            	        	        	        // MySQL.g:641:87: ( COMMA_SYMBOL )?
            	        	        	        {
            	        	        	            int alt88=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case COMMA_SYMBOL:
            	        	        	                	{
            	        	        	                		alt88=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt88)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:641:87: COMMA_SYMBOL
            	        	        	        	    {
            	        	        	        	        COMMA_SYMBOL302 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_tablespace1841);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulealter_tablespaceEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

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

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_alter_tablespace_option_in_alter_tablespace1844);
            	        	        	        alter_tablespace_option303=alter_tablespace_option(ctx);

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

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

            	        	        	    }
            	        	        	    break;

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


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:643:5: CHANGE_SYMBOL DATAFILE_SYMBOL string_literal ( change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )* )?
            	    {
            	        CHANGE_SYMBOL304 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_alter_tablespace1857);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        DATAFILE_SYMBOL305 = (pANTLR3_COMMON_TOKEN) MATCHT(DATAFILE_SYMBOL, &FOLLOW_DATAFILE_SYMBOL_in_alter_tablespace1859);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_string_literal_in_alter_tablespace1861);
            	        string_literal306=string_literal(ctx);

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

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

            	        // MySQL.g:643:50: ( change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )* )?
            	        {
            	            int alt93=2;
            	            switch ( LA(1) )
            	            {
            	                case AUTOEXTEND_SIZE_SYMBOL:
            	                case INITIAL_SIZE_SYMBOL:
            	                case MAX_SIZE_SYMBOL:
            	                	{
            	                		alt93=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt93)
            	            {
            	        	case 1:
            	        	    // MySQL.g:643:51: change_tablespace_option ( ( COMMA_SYMBOL )? change_tablespace_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_change_tablespace_option_in_alter_tablespace1864);
            	        	        change_tablespace_option307=change_tablespace_option(ctx);

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

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

            	        	        // MySQL.g:643:76: ( ( COMMA_SYMBOL )? change_tablespace_option )*

            	        	        for (;;)
            	        	        {
            	        	            int alt92=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case AUTOEXTEND_SIZE_SYMBOL:
            	        	            case INITIAL_SIZE_SYMBOL:
            	        	            case MAX_SIZE_SYMBOL:
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt92=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt92)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:643:77: ( COMMA_SYMBOL )? change_tablespace_option
            	        	        	    {
            	        	        	        // MySQL.g:643:77: ( COMMA_SYMBOL )?
            	        	        	        {
            	        	        	            int alt91=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case COMMA_SYMBOL:
            	        	        	                	{
            	        	        	                		alt91=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt91)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:643:77: COMMA_SYMBOL
            	        	        	        	    {
            	        	        	        	        COMMA_SYMBOL308 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_alter_tablespace1867);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulealter_tablespaceEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

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

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_change_tablespace_option_in_alter_tablespace1870);
            	        	        	        change_tablespace_option309=change_tablespace_option(ctx);

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

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

            	        	        	    }
            	        	        	    break;

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


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:644:5: READ_ONLY_SYMBOL
            	    {
            	        READ_ONLY_SYMBOL310 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_ONLY_SYMBOL, &FOLLOW_READ_ONLY_SYMBOL_in_alter_tablespace1880);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:645:5: READ_WRITE_SYMBOL
            	    {
            	        READ_WRITE_SYMBOL311 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_WRITE_SYMBOL, &FOLLOW_READ_WRITE_SYMBOL_in_alter_tablespace1886);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:646:5: NOT_SYMBOL ACCESSIBLE_SYMBOL
            	    {
            	        NOT_SYMBOL312 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_alter_tablespace1892);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        ACCESSIBLE_SYMBOL313 = (pANTLR3_COMMON_TOKEN) MATCHT(ACCESSIBLE_SYMBOL, &FOLLOW_ACCESSIBLE_SYMBOL_in_alter_tablespace1894);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

        }

    }

    // 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_tablespace_option
 * MySQL.g:650:1: alter_tablespace_option : ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref | ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) );
 */
static MySQLParser_alter_tablespace_option_return
alter_tablespace_option(pMySQLParser ctx)
{
    MySQLParser_alter_tablespace_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL314;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR315;
    pANTLR3_COMMON_TOKEN    AUTOEXTEND_SIZE_SYMBOL317;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR318;
    pANTLR3_COMMON_TOKEN    MAX_SIZE_SYMBOL320;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR321;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL323;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL324;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR325;
    pANTLR3_COMMON_TOKEN    set327;
    MySQLParser_size_number_return size_number316;
    #undef	RETURN_TYPE_size_number316
    #define	RETURN_TYPE_size_number316 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number319;
    #undef	RETURN_TYPE_size_number319
    #define	RETURN_TYPE_size_number319 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number322;
    #undef	RETURN_TYPE_size_number322
    #define	RETURN_TYPE_size_number322 MySQLParser_size_number_return

    MySQLParser_engine_ref_return engine_ref326;
    #undef	RETURN_TYPE_engine_ref326
    #define	RETURN_TYPE_engine_ref326 MySQLParser_engine_ref_return

    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL314_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR315_tree;
    pANTLR3_BASE_TREE AUTOEXTEND_SIZE_SYMBOL317_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR318_tree;
    pANTLR3_BASE_TREE MAX_SIZE_SYMBOL320_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR321_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL323_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL324_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR325_tree;
    pANTLR3_BASE_TREE set327_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INITIAL_SIZE_SYMBOL314       = NULL;
    EQUAL_OPERATOR315       = NULL;
    AUTOEXTEND_SIZE_SYMBOL317       = NULL;
    EQUAL_OPERATOR318       = NULL;
    MAX_SIZE_SYMBOL320       = NULL;
    EQUAL_OPERATOR321       = NULL;
    STORAGE_SYMBOL323       = NULL;
    ENGINE_SYMBOL324       = NULL;
    EQUAL_OPERATOR325       = NULL;
    set327       = NULL;
    size_number316.tree = NULL;

    size_number319.tree = NULL;

    size_number322.tree = NULL;

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


    INITIAL_SIZE_SYMBOL314_tree   = NULL;
    EQUAL_OPERATOR315_tree   = NULL;
    AUTOEXTEND_SIZE_SYMBOL317_tree   = NULL;
    EQUAL_OPERATOR318_tree   = NULL;
    MAX_SIZE_SYMBOL320_tree   = NULL;
    EQUAL_OPERATOR321_tree   = NULL;
    STORAGE_SYMBOL323_tree   = NULL;
    ENGINE_SYMBOL324_tree   = NULL;
    EQUAL_OPERATOR325_tree   = NULL;
    set327_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:650:24: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref | ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) )

            ANTLR3_UINT32 alt100;

            alt100=5;

            switch ( LA(1) )
            {
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt100=1;
            	}
                break;
            case AUTOEXTEND_SIZE_SYMBOL:
            	{
            		alt100=2;
            	}
                break;
            case MAX_SIZE_SYMBOL:
            	{
            		alt100=3;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt100=4;
            	}
                break;
            case NO_WAIT_SYMBOL:
            case WAIT_SYMBOL:
            	{
            		alt100=5;
            	}
                break;

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

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


                goto rulealter_tablespace_optionEx;

            }

            switch (alt100)
            {
        	case 1:
        	    // MySQL.g:651:2: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL314 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_alter_tablespace_option1906);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:651:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt95=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt95=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt95)
        	            {
        	        	case 1:
        	        	    // MySQL.g:651:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR315 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1908);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_alter_tablespace_option1911);
        	        size_number316=size_number(ctx);

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

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

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:652:4: AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTOEXTEND_SIZE_SYMBOL317 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTOEXTEND_SIZE_SYMBOL, &FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_alter_tablespace_option1916);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:652:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt96=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt96=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt96)
        	            {
        	        	case 1:
        	        	    // MySQL.g:652:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR318 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1918);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_alter_tablespace_option1921);
        	        size_number319=size_number(ctx);

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

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

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:653:4: MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SIZE_SYMBOL320 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SIZE_SYMBOL, &FOLLOW_MAX_SIZE_SYMBOL_in_alter_tablespace_option1926);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:653:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt97=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt97=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt97)
        	            {
        	        	case 1:
        	        	    // MySQL.g:653:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR321 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1928);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_alter_tablespace_option1931);
        	        size_number322=size_number(ctx);

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

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

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:654:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:654:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt98=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt98=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt98)
        	            {
        	        	case 1:
        	        	    // MySQL.g:654:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL323 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_alter_tablespace_option1936);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL324 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_alter_tablespace_option1939);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:654:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt99=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt99=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt99)
        	            {
        	        	case 1:
        	        	    // MySQL.g:654:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR325 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_tablespace_option1941);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulealter_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_alter_tablespace_option1944);
        	        engine_ref326=engine_ref(ctx);

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

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

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:655:4: ( WAIT_SYMBOL | NO_WAIT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set327=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == NO_WAIT_SYMBOL || LA(1) == WAIT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set327))
        	            );
        	            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_tablespace_optionEx;
        	        }


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulealter_tablespace_optionEx; /* Prevent compiler warnings */
    rulealter_tablespace_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_tablespace_option */

/**
 * $ANTLR start change_tablespace_option
 * MySQL.g:658:1: change_tablespace_option : ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number );
 */
static MySQLParser_change_tablespace_option_return
change_tablespace_option(pMySQLParser ctx)
{
    MySQLParser_change_tablespace_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL328;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR329;
    pANTLR3_COMMON_TOKEN    AUTOEXTEND_SIZE_SYMBOL331;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR332;
    pANTLR3_COMMON_TOKEN    MAX_SIZE_SYMBOL334;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR335;
    MySQLParser_size_number_return size_number330;
    #undef	RETURN_TYPE_size_number330
    #define	RETURN_TYPE_size_number330 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number333;
    #undef	RETURN_TYPE_size_number333
    #define	RETURN_TYPE_size_number333 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number336;
    #undef	RETURN_TYPE_size_number336
    #define	RETURN_TYPE_size_number336 MySQLParser_size_number_return

    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL328_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR329_tree;
    pANTLR3_BASE_TREE AUTOEXTEND_SIZE_SYMBOL331_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR332_tree;
    pANTLR3_BASE_TREE MAX_SIZE_SYMBOL334_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR335_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INITIAL_SIZE_SYMBOL328       = NULL;
    EQUAL_OPERATOR329       = NULL;
    AUTOEXTEND_SIZE_SYMBOL331       = NULL;
    EQUAL_OPERATOR332       = NULL;
    MAX_SIZE_SYMBOL334       = NULL;
    EQUAL_OPERATOR335       = NULL;
    size_number330.tree = NULL;

    size_number333.tree = NULL;

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


    INITIAL_SIZE_SYMBOL328_tree   = NULL;
    EQUAL_OPERATOR329_tree   = NULL;
    AUTOEXTEND_SIZE_SYMBOL331_tree   = NULL;
    EQUAL_OPERATOR332_tree   = NULL;
    MAX_SIZE_SYMBOL334_tree   = NULL;
    EQUAL_OPERATOR335_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:658:25: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number )

            ANTLR3_UINT32 alt104;

            alt104=3;

            switch ( LA(1) )
            {
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt104=1;
            	}
                break;
            case AUTOEXTEND_SIZE_SYMBOL:
            	{
            		alt104=2;
            	}
                break;
            case MAX_SIZE_SYMBOL:
            	{
            		alt104=3;
            	}
                break;

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

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


                goto rulechange_tablespace_optionEx;

            }

            switch (alt104)
            {
        	case 1:
        	    // MySQL.g:659:2: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL328 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_change_tablespace_option1964);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulechange_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:659:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt101=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt101=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt101)
        	            {
        	        	case 1:
        	        	    // MySQL.g:659:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR329 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1966);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulechange_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_change_tablespace_option1969);
        	        size_number330=size_number(ctx);

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

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

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:660:4: AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTOEXTEND_SIZE_SYMBOL331 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTOEXTEND_SIZE_SYMBOL, &FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_change_tablespace_option1974);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulechange_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:660:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt102=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt102=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt102)
        	            {
        	        	case 1:
        	        	    // MySQL.g:660:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR332 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1976);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulechange_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_change_tablespace_option1979);
        	        size_number333=size_number(ctx);

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

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

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:661:4: MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SIZE_SYMBOL334 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SIZE_SYMBOL, &FOLLOW_MAX_SIZE_SYMBOL_in_change_tablespace_option1984);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulechange_tablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:661:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt103=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt103=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt103)
        	            {
        	        	case 1:
        	        	    // MySQL.g:661:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR335 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_change_tablespace_option1986);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulechange_tablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_change_tablespace_option1989);
        	        size_number336=size_number(ctx);

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

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

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulechange_tablespace_optionEx; /* Prevent compiler warnings */
    rulechange_tablespace_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 change_tablespace_option */

/**
 * $ANTLR start alter_view
 * MySQL.g:664: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 view_ref ( 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_SYMBOL337;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR338;
    pANTLR3_COMMON_TOKEN    set339;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL341;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL342;
    pANTLR3_COMMON_TOKEN    set343;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL344;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL347;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL349;
    pANTLR3_COMMON_TOKEN    set350;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL351;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL352;
    MySQLParser_definer_clause_return definer_clause340;
    #undef	RETURN_TYPE_definer_clause340
    #define	RETURN_TYPE_definer_clause340 MySQLParser_definer_clause_return

    MySQLParser_view_ref_return view_ref345;
    #undef	RETURN_TYPE_view_ref345
    #define	RETURN_TYPE_view_ref345 MySQLParser_view_ref_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses346;
    #undef	RETURN_TYPE_identifier_list_with_parentheses346
    #define	RETURN_TYPE_identifier_list_with_parentheses346 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_select_statement_return select_statement348;
    #undef	RETURN_TYPE_select_statement348
    #define	RETURN_TYPE_select_statement348 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL337_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR338_tree;
    pANTLR3_BASE_TREE set339_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL341_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL342_tree;
    pANTLR3_BASE_TREE set343_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL344_tree;
    pANTLR3_BASE_TREE AS_SYMBOL347_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL349_tree;
    pANTLR3_BASE_TREE set350_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL351_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL352_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL337       = NULL;
    EQUAL_OPERATOR338       = NULL;
    set339       = NULL;
    SQL_SYMBOL341       = NULL;
    SECURITY_SYMBOL342       = NULL;
    set343       = NULL;
    VIEW_SYMBOL344       = NULL;
    AS_SYMBOL347       = NULL;
    WITH_SYMBOL349       = NULL;
    set350       = NULL;
    CHECK_SYMBOL351       = NULL;
    OPTION_SYMBOL352       = NULL;
    definer_clause340.tree = NULL;

    view_ref345.tree = NULL;

    identifier_list_with_parentheses346.tree = NULL;

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


    ALGORITHM_SYMBOL337_tree   = NULL;
    EQUAL_OPERATOR338_tree   = NULL;
    set339_tree   = NULL;
    SQL_SYMBOL341_tree   = NULL;
    SECURITY_SYMBOL342_tree   = NULL;
    set343_tree   = NULL;
    VIEW_SYMBOL344_tree   = NULL;
    AS_SYMBOL347_tree   = NULL;
    WITH_SYMBOL349_tree   = NULL;
    set350_tree   = NULL;
    CHECK_SYMBOL351_tree   = NULL;
    OPTION_SYMBOL352_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:664:11: ( ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )? ( definer_clause )? ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL view_ref ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )? )
        // MySQL.g:665:2: ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )? ( definer_clause )? ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL view_ref ( 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:665:2: ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )?
            {
                int alt105=2;
                switch ( LA(1) )
                {
                    case ALGORITHM_SYMBOL:
                    	{
                    		alt105=1;
                    	}
                        break;
                }

                switch (alt105)
                {
            	case 1:
            	    // MySQL.g:665:3: ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL )
            	    {
            	        ALGORITHM_SYMBOL337 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_alter_view1999);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        EQUAL_OPERATOR338 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_alter_view2001);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        set339=(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, set339))
            	            );
            	            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:666:3: ( definer_clause )?
            {
                int alt106=2;
                switch ( LA(1) )
                {
                    case DEFINER_SYMBOL:
                    	{
                    		alt106=1;
                    	}
                        break;
                }

                switch (alt106)
                {
            	case 1:
            	    // MySQL.g:666:3: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_alter_view2019);
            	        definer_clause340=definer_clause(ctx);

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

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

            	    }
            	    break;

                }
            }

            // MySQL.g:667:3: ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )?
            {
                int alt107=2;
                switch ( LA(1) )
                {
                    case SQL_SYMBOL:
                    	{
                    		alt107=1;
                    	}
                        break;
                }

                switch (alt107)
                {
            	case 1:
            	    // MySQL.g:667:4: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
            	    {
            	        SQL_SYMBOL341 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_alter_view2025);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        SECURITY_SYMBOL342 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_alter_view2027);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        set343=(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, set343))
            	            );
            	            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_SYMBOL344 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_alter_view2041);
            if  (HASEXCEPTION())
            {
                goto rulealter_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_view_ref_in_alter_view2043);
            view_ref345=view_ref(ctx);

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

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

            // MySQL.g:668:24: ( identifier_list_with_parentheses )?
            {
                int alt108=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt108=1;
                    	}
                        break;
                }

                switch (alt108)
                {
            	case 1:
            	    // MySQL.g:668:24: identifier_list_with_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_alter_view2045);
            	        identifier_list_with_parentheses346=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_parentheses346.tree);

            	    }
            	    break;

                }
            }

            AS_SYMBOL347 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_alter_view2048);
            if  (HASEXCEPTION())
            {
                goto rulealter_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_select_statement_in_alter_view2050);
            select_statement348=select_statement(ctx);

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

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

            // MySQL.g:669:3: ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )?
            {
                int alt110=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt110=1;
                    	}
                        break;
                }

                switch (alt110)
                {
            	case 1:
            	    // MySQL.g:669:4: WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL349 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_alter_view2055);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        // MySQL.g:669:16: ( CASCADED_SYMBOL | LOCAL_SYMBOL )?
            	        {
            	            int alt109=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADED_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                	{
            	                		alt109=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt109)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set350=(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, set350))
            	        	            );
            	        	            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_SYMBOL351 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_alter_view2066);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        OPTION_SYMBOL352 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_alter_view2068);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL352_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL352));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL352_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:677:1: create_statement : CREATE_SYMBOL ^ ( create_table_tail | create_index_tail | create_database_tail | ( definer_clause )? ({...}? create_event_tail | create_view_tail | create_routine_or_udf | create_trigger_tail ) | view_replace_or_algorithm ( definer_clause )? create_view_tail | create_logfile_group_tail | create_server_tail | create_tablespace_tail ) ;
 */
static MySQLParser_create_statement_return
create_statement(pMySQLParser ctx)
{
    MySQLParser_create_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL353;
    MySQLParser_create_table_tail_return create_table_tail354;
    #undef	RETURN_TYPE_create_table_tail354
    #define	RETURN_TYPE_create_table_tail354 MySQLParser_create_table_tail_return

    MySQLParser_create_index_tail_return create_index_tail355;
    #undef	RETURN_TYPE_create_index_tail355
    #define	RETURN_TYPE_create_index_tail355 MySQLParser_create_index_tail_return

    MySQLParser_create_database_tail_return create_database_tail356;
    #undef	RETURN_TYPE_create_database_tail356
    #define	RETURN_TYPE_create_database_tail356 MySQLParser_create_database_tail_return

    MySQLParser_definer_clause_return definer_clause357;
    #undef	RETURN_TYPE_definer_clause357
    #define	RETURN_TYPE_definer_clause357 MySQLParser_definer_clause_return

    MySQLParser_create_event_tail_return create_event_tail358;
    #undef	RETURN_TYPE_create_event_tail358
    #define	RETURN_TYPE_create_event_tail358 MySQLParser_create_event_tail_return

    MySQLParser_create_view_tail_return create_view_tail359;
    #undef	RETURN_TYPE_create_view_tail359
    #define	RETURN_TYPE_create_view_tail359 MySQLParser_create_view_tail_return

    MySQLParser_create_routine_or_udf_return create_routine_or_udf360;
    #undef	RETURN_TYPE_create_routine_or_udf360
    #define	RETURN_TYPE_create_routine_or_udf360 MySQLParser_create_routine_or_udf_return

    MySQLParser_create_trigger_tail_return create_trigger_tail361;
    #undef	RETURN_TYPE_create_trigger_tail361
    #define	RETURN_TYPE_create_trigger_tail361 MySQLParser_create_trigger_tail_return

    MySQLParser_view_replace_or_algorithm_return view_replace_or_algorithm362;
    #undef	RETURN_TYPE_view_replace_or_algorithm362
    #define	RETURN_TYPE_view_replace_or_algorithm362 MySQLParser_view_replace_or_algorithm_return

    MySQLParser_definer_clause_return definer_clause363;
    #undef	RETURN_TYPE_definer_clause363
    #define	RETURN_TYPE_definer_clause363 MySQLParser_definer_clause_return

    MySQLParser_create_view_tail_return create_view_tail364;
    #undef	RETURN_TYPE_create_view_tail364
    #define	RETURN_TYPE_create_view_tail364 MySQLParser_create_view_tail_return

    MySQLParser_create_logfile_group_tail_return create_logfile_group_tail365;
    #undef	RETURN_TYPE_create_logfile_group_tail365
    #define	RETURN_TYPE_create_logfile_group_tail365 MySQLParser_create_logfile_group_tail_return

    MySQLParser_create_server_tail_return create_server_tail366;
    #undef	RETURN_TYPE_create_server_tail366
    #define	RETURN_TYPE_create_server_tail366 MySQLParser_create_server_tail_return

    MySQLParser_create_tablespace_tail_return create_tablespace_tail367;
    #undef	RETURN_TYPE_create_tablespace_tail367
    #define	RETURN_TYPE_create_tablespace_tail367 MySQLParser_create_tablespace_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL353_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL353       = NULL;
    create_table_tail354.tree = NULL;

    create_index_tail355.tree = NULL;

    create_database_tail356.tree = NULL;

    definer_clause357.tree = NULL;

    create_event_tail358.tree = NULL;

    create_view_tail359.tree = NULL;

    create_routine_or_udf360.tree = NULL;

    create_trigger_tail361.tree = NULL;

    view_replace_or_algorithm362.tree = NULL;

    definer_clause363.tree = NULL;

    create_view_tail364.tree = NULL;

    create_logfile_group_tail365.tree = NULL;

    create_server_tail366.tree = NULL;

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


    CREATE_SYMBOL353_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:677:17: ( CREATE_SYMBOL ^ ( create_table_tail | create_index_tail | create_database_tail | ( definer_clause )? ({...}? create_event_tail | create_view_tail | create_routine_or_udf | create_trigger_tail ) | view_replace_or_algorithm ( definer_clause )? create_view_tail | create_logfile_group_tail | create_server_tail | create_tablespace_tail ) )
        // MySQL.g:678:2: CREATE_SYMBOL ^ ( create_table_tail | create_index_tail | create_database_tail | ( definer_clause )? ({...}? create_event_tail | create_view_tail | create_routine_or_udf | create_trigger_tail ) | view_replace_or_algorithm ( definer_clause )? create_view_tail | create_logfile_group_tail | create_server_tail | create_tablespace_tail )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL353 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_statement2084);
            if  (HASEXCEPTION())
            {
                goto rulecreate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL353_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL353))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL353_tree, root_0));
            }

            // MySQL.g:679:2: ( create_table_tail | create_index_tail | create_database_tail | ( definer_clause )? ({...}? create_event_tail | create_view_tail | create_routine_or_udf | create_trigger_tail ) | view_replace_or_algorithm ( definer_clause )? create_view_tail | create_logfile_group_tail | create_server_tail | create_tablespace_tail )
            {
                int alt114=8;
                switch ( LA(1) )
                {
                case TEMPORARY_SYMBOL:
                case TABLE_SYMBOL:
                	{
                		alt114=1;
                	}
                    break;
                case FULLTEXT_SYMBOL:
                case INDEX_SYMBOL:
                case OFFLINE_SYMBOL:
                case ONLINE_SYMBOL:
                case SPATIAL_SYMBOL:
                case UNIQUE_SYMBOL:
                	{
                		alt114=2;
                	}
                    break;
                case DATABASE_SYMBOL:
                	{
                		alt114=3;
                	}
                    break;
                case AGGREGATE_SYMBOL:
                case DEFINER_SYMBOL:
                case EVENT_SYMBOL:
                case FUNCTION_SYMBOL:
                case VIEW_SYMBOL:
                case PROCEDURE_SYMBOL:
                case SQL_SYMBOL:
                case TRIGGER_SYMBOL:
                	{
                		alt114=4;
                	}
                    break;
                case ALGORITHM_SYMBOL:
                case OR_SYMBOL:
                	{
                		alt114=5;
                	}
                    break;
                case LOGFILE_SYMBOL:
                	{
                		alt114=6;
                	}
                    break;
                case SERVER_SYMBOL:
                	{
                		alt114=7;
                	}
                    break;
                case TABLESPACE_SYMBOL:
                	{
                		alt114=8;
                	}
                    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        = 0;


                    goto rulecreate_statementEx;

                }

                switch (alt114)
                {
            	case 1:
            	    // MySQL.g:680:3: create_table_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_table_tail_in_create_statement2092);
            	        create_table_tail354=create_table_tail(ctx);

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

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:681:5: create_index_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_index_tail_in_create_statement2098);
            	        create_index_tail355=create_index_tail(ctx);

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

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

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:682:5: create_database_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_database_tail_in_create_statement2104);
            	        create_database_tail356=create_database_tail(ctx);

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

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

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:683:5: ( definer_clause )? ({...}? create_event_tail | create_view_tail | create_routine_or_udf | create_trigger_tail )
            	    {
            	        // MySQL.g:683:5: ( definer_clause )?
            	        {
            	            int alt111=2;
            	            switch ( LA(1) )
            	            {
            	                case DEFINER_SYMBOL:
            	                	{
            	                		alt111=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt111)
            	            {
            	        	case 1:
            	        	    // MySQL.g:683:5: definer_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_statement2110);
            	        	        definer_clause357=definer_clause(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:684:4: ({...}? create_event_tail | create_view_tail | create_routine_or_udf | create_trigger_tail )
            	        {
            	            int alt112=4;
            	            switch ( LA(1) )
            	            {
            	            case EVENT_SYMBOL:
            	            	{
            	            		alt112=1;
            	            	}
            	                break;
            	            case VIEW_SYMBOL:
            	            case SQL_SYMBOL:
            	            	{
            	            		alt112=2;
            	            	}
            	                break;
            	            case AGGREGATE_SYMBOL:
            	            case FUNCTION_SYMBOL:
            	            case PROCEDURE_SYMBOL:
            	            	{
            	            		alt112=3;
            	            	}
            	                break;
            	            case TRIGGER_SYMBOL:
            	            	{
            	            		alt112=4;
            	            	}
            	                break;

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

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


            	                goto rulecreate_statementEx;

            	            }

            	            switch (alt112)
            	            {
            	        	case 1:
            	        	    // MySQL.g:685:5: {...}? create_event_tail
            	        	    {
            	        	        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_tail_in_create_statement2124);
            	        	        create_event_tail358=create_event_tail(ctx);

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

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

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:686:7: create_view_tail
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_view_tail_in_create_statement2132);
            	        	        create_view_tail359=create_view_tail(ctx);

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

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

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:687:7: create_routine_or_udf
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_routine_or_udf_in_create_statement2140);
            	        	        create_routine_or_udf360=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_udf360.tree);

            	        	    }
            	        	    break;
            	        	case 4:
            	        	    // MySQL.g:688:7: create_trigger_tail
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_trigger_tail_in_create_statement2148);
            	        	        create_trigger_tail361=create_trigger_tail(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:690:5: view_replace_or_algorithm ( definer_clause )? create_view_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_view_replace_or_algorithm_in_create_statement2159);
            	        view_replace_or_algorithm362=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_algorithm362.tree);

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

            	            switch (alt113)
            	            {
            	        	case 1:
            	        	    // MySQL.g:690:31: definer_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_statement2161);
            	        	        definer_clause363=definer_clause(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_create_view_tail_in_create_statement2164);
            	        create_view_tail364=create_view_tail(ctx);

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

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

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:691:5: create_logfile_group_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_logfile_group_tail_in_create_statement2170);
            	        create_logfile_group_tail365=create_logfile_group_tail(ctx);

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

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

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:692:5: create_server_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_server_tail_in_create_statement2176);
            	        create_server_tail366=create_server_tail(ctx);

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

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

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:693:5: create_tablespace_tail
            	    {
            	        FOLLOWPUSH(FOLLOW_create_tablespace_tail_in_create_statement2182);
            	        create_tablespace_tail367=create_tablespace_tail(ctx);

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

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_tablespace_tail367.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:697:1: create_database : CREATE_SYMBOL ^ create_database_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_database_return
create_database(pMySQLParser ctx)
{
    MySQLParser_create_database_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL368;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL370;
    pANTLR3_COMMON_TOKEN    EOF371;
    MySQLParser_create_database_tail_return create_database_tail369;
    #undef	RETURN_TYPE_create_database_tail369
    #define	RETURN_TYPE_create_database_tail369 MySQLParser_create_database_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL368_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL370_tree;
    pANTLR3_BASE_TREE EOF371_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL368       = NULL;
    SEMICOLON_SYMBOL370       = NULL;
    EOF371       = NULL;
    create_database_tail369.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL368_tree   = NULL;
    SEMICOLON_SYMBOL370_tree   = NULL;
    EOF371_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:697:16: ( CREATE_SYMBOL ^ create_database_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:698:2: CREATE_SYMBOL ^ create_database_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL368 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_database2195);
            if  (HASEXCEPTION())
            {
                goto rulecreate_databaseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL368_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL368))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL368_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_database_tail_in_create_database2198);
            create_database_tail369=create_database_tail(ctx);

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

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

            // MySQL.g:698:38: ( SEMICOLON_SYMBOL )?
            {
                int alt115=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt115=1;
                    	}
                        break;
                }

                switch (alt115)
                {
            	case 1:
            	    // MySQL.g:698:38: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL370 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_database2200);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_databaseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            EOF371 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_database2203);
            if  (HASEXCEPTION())
            {
                goto rulecreate_databaseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

        }

    }

    // 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_database_tail
 * MySQL.g:701:1: create_database_tail : DATABASE_SYMBOL ( if_not_exists )? schema_name ( database_option )* ;
 */
static MySQLParser_create_database_tail_return
create_database_tail(pMySQLParser ctx)
{
    MySQLParser_create_database_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL372;
    MySQLParser_if_not_exists_return if_not_exists373;
    #undef	RETURN_TYPE_if_not_exists373
    #define	RETURN_TYPE_if_not_exists373 MySQLParser_if_not_exists_return

    MySQLParser_schema_name_return schema_name374;
    #undef	RETURN_TYPE_schema_name374
    #define	RETURN_TYPE_schema_name374 MySQLParser_schema_name_return

    MySQLParser_database_option_return database_option375;
    #undef	RETURN_TYPE_database_option375
    #define	RETURN_TYPE_database_option375 MySQLParser_database_option_return

    pANTLR3_BASE_TREE DATABASE_SYMBOL372_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATABASE_SYMBOL372       = NULL;
    if_not_exists373.tree = NULL;

    schema_name374.tree = NULL;

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


    DATABASE_SYMBOL372_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:701:21: ( DATABASE_SYMBOL ( if_not_exists )? schema_name ( database_option )* )
        // MySQL.g:702:2: DATABASE_SYMBOL ( if_not_exists )? schema_name ( database_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DATABASE_SYMBOL372 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_create_database_tail2212);
            if  (HASEXCEPTION())
            {
                goto rulecreate_database_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:702:18: ( if_not_exists )?
            {
                int alt116=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt116=1;
                    	}
                        break;
                }

                switch (alt116)
                {
            	case 1:
            	    // MySQL.g:702:18: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_database_tail2214);
            	        if_not_exists373=if_not_exists(ctx);

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

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

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_schema_name_in_create_database_tail2217);
            schema_name374=schema_name(ctx);

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

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

            // MySQL.g:702:45: ( database_option )*

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

                }

                switch (alt117)
                {
            	case 1:
            	    // MySQL.g:702:45: database_option
            	    {
            	        FOLLOWPUSH(FOLLOW_database_option_in_create_database_tail2219);
            	        database_option375=database_option(ctx);

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

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

            	    }
            	    break;

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


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_database_tailEx; /* Prevent compiler warnings */
    rulecreate_database_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 create_database_tail */

/**
 * $ANTLR start create_with_definer
 * MySQL.g:705:1: create_with_definer : CREATE_SYMBOL ^ ( definer_clause )? ;
 */
static MySQLParser_create_with_definer_return
create_with_definer(pMySQLParser ctx)
{
    MySQLParser_create_with_definer_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL376;
    MySQLParser_definer_clause_return definer_clause377;
    #undef	RETURN_TYPE_definer_clause377
    #define	RETURN_TYPE_definer_clause377 MySQLParser_definer_clause_return

    pANTLR3_BASE_TREE CREATE_SYMBOL376_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

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


    CREATE_SYMBOL376_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:705:20: ( CREATE_SYMBOL ^ ( definer_clause )? )
        // MySQL.g:706:2: CREATE_SYMBOL ^ ( definer_clause )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL376 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_with_definer2229);
            if  (HASEXCEPTION())
            {
                goto rulecreate_with_definerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL376_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL376))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL376_tree, root_0));
            }

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

                switch (alt118)
                {
            	case 1:
            	    // MySQL.g:706:17: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_with_definer2232);
            	        definer_clause377=definer_clause(ctx);

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

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

            	    }
            	    break;

                }
            }

        }

    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_with_definer */

/**
 * $ANTLR start create_event
 * MySQL.g:709:1: create_event : create_with_definer create_event_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_event_return
create_event(pMySQLParser ctx)
{
    MySQLParser_create_event_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL380;
    pANTLR3_COMMON_TOKEN    EOF381;
    MySQLParser_create_with_definer_return create_with_definer378;
    #undef	RETURN_TYPE_create_with_definer378
    #define	RETURN_TYPE_create_with_definer378 MySQLParser_create_with_definer_return

    MySQLParser_create_event_tail_return create_event_tail379;
    #undef	RETURN_TYPE_create_event_tail379
    #define	RETURN_TYPE_create_event_tail379 MySQLParser_create_event_tail_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL380_tree;
    pANTLR3_BASE_TREE EOF381_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL380       = NULL;
    EOF381       = NULL;
    create_with_definer378.tree = NULL;

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


    SEMICOLON_SYMBOL380_tree   = NULL;
    EOF381_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:709:13: ( create_with_definer create_event_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:710:2: create_with_definer create_event_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_with_definer_in_create_event2243);
            create_with_definer378=create_with_definer(ctx);

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

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

            FOLLOWPUSH(FOLLOW_create_event_tail_in_create_event2245);
            create_event_tail379=create_event_tail(ctx);

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

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

            // MySQL.g:710:40: ( SEMICOLON_SYMBOL )?
            {
                int alt119=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt119=1;
                    	}
                        break;
                }

                switch (alt119)
                {
            	case 1:
            	    // MySQL.g:710:40: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL380 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_event2247);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_eventEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            EOF381 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_event2250);
            if  (HASEXCEPTION())
            {
                goto rulecreate_eventEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF381_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF381));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF381_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_event_tail
 * MySQL.g:713:1: create_event_tail : EVENT_SYMBOL ( if_not_exists )? event_name 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_tail_return
create_event_tail(pMySQLParser ctx)
{
    MySQLParser_create_event_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL382;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL385;
    pANTLR3_COMMON_TOKEN    SCHEDULE_SYMBOL386;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL388;
    pANTLR3_COMMON_TOKEN    COMPLETION_SYMBOL389;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL390;
    pANTLR3_COMMON_TOKEN    PRESERVE_SYMBOL391;
    pANTLR3_COMMON_TOKEN    ENABLE_SYMBOL392;
    pANTLR3_COMMON_TOKEN    DISABLE_SYMBOL393;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL394;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL395;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL396;
    pANTLR3_COMMON_TOKEN    DO_SYMBOL398;
    MySQLParser_if_not_exists_return if_not_exists383;
    #undef	RETURN_TYPE_if_not_exists383
    #define	RETURN_TYPE_if_not_exists383 MySQLParser_if_not_exists_return

    MySQLParser_event_name_return event_name384;
    #undef	RETURN_TYPE_event_name384
    #define	RETURN_TYPE_event_name384 MySQLParser_event_name_return

    MySQLParser_schedule_return schedule387;
    #undef	RETURN_TYPE_schedule387
    #define	RETURN_TYPE_schedule387 MySQLParser_schedule_return

    MySQLParser_string_literal_return string_literal397;
    #undef	RETURN_TYPE_string_literal397
    #define	RETURN_TYPE_string_literal397 MySQLParser_string_literal_return

    MySQLParser_compound_statement_return compound_statement399;
    #undef	RETURN_TYPE_compound_statement399
    #define	RETURN_TYPE_compound_statement399 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE EVENT_SYMBOL382_tree;
    pANTLR3_BASE_TREE ON_SYMBOL385_tree;
    pANTLR3_BASE_TREE SCHEDULE_SYMBOL386_tree;
    pANTLR3_BASE_TREE ON_SYMBOL388_tree;
    pANTLR3_BASE_TREE COMPLETION_SYMBOL389_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL390_tree;
    pANTLR3_BASE_TREE PRESERVE_SYMBOL391_tree;
    pANTLR3_BASE_TREE ENABLE_SYMBOL392_tree;
    pANTLR3_BASE_TREE DISABLE_SYMBOL393_tree;
    pANTLR3_BASE_TREE ON_SYMBOL394_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL395_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL396_tree;
    pANTLR3_BASE_TREE DO_SYMBOL398_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EVENT_SYMBOL382       = NULL;
    ON_SYMBOL385       = NULL;
    SCHEDULE_SYMBOL386       = NULL;
    ON_SYMBOL388       = NULL;
    COMPLETION_SYMBOL389       = NULL;
    NOT_SYMBOL390       = NULL;
    PRESERVE_SYMBOL391       = NULL;
    ENABLE_SYMBOL392       = NULL;
    DISABLE_SYMBOL393       = NULL;
    ON_SYMBOL394       = NULL;
    SLAVE_SYMBOL395       = NULL;
    COMMENT_SYMBOL396       = NULL;
    DO_SYMBOL398       = NULL;
    if_not_exists383.tree = NULL;

    event_name384.tree = NULL;

    schedule387.tree = NULL;

    string_literal397.tree = NULL;

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


    EVENT_SYMBOL382_tree   = NULL;
    ON_SYMBOL385_tree   = NULL;
    SCHEDULE_SYMBOL386_tree   = NULL;
    ON_SYMBOL388_tree   = NULL;
    COMPLETION_SYMBOL389_tree   = NULL;
    NOT_SYMBOL390_tree   = NULL;
    PRESERVE_SYMBOL391_tree   = NULL;
    ENABLE_SYMBOL392_tree   = NULL;
    DISABLE_SYMBOL393_tree   = NULL;
    ON_SYMBOL394_tree   = NULL;
    SLAVE_SYMBOL395_tree   = NULL;
    COMMENT_SYMBOL396_tree   = NULL;
    DO_SYMBOL398_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:713:18: ( EVENT_SYMBOL ( if_not_exists )? event_name 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:714:2: EVENT_SYMBOL ( if_not_exists )? event_name 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_SYMBOL382 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_create_event_tail2259);
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:714:15: ( if_not_exists )?
            {
                int alt120=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt120=1;
                    	}
                        break;
                }

                switch (alt120)
                {
            	case 1:
            	    // MySQL.g:714:15: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_event_tail2261);
            	        if_not_exists383=if_not_exists(ctx);

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

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

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_event_name_in_create_event_tail2264);
            event_name384=event_name(ctx);

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

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

            ON_SYMBOL385 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event_tail2266);
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            SCHEDULE_SYMBOL386 = (pANTLR3_COMMON_TOKEN) MATCHT(SCHEDULE_SYMBOL, &FOLLOW_SCHEDULE_SYMBOL_in_create_event_tail2268);
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_schedule_in_create_event_tail2270);
            schedule387=schedule(ctx);

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

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

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

                switch (alt122)
                {
            	case 1:
            	    // MySQL.g:715:4: ON_SYMBOL COMPLETION_SYMBOL ( NOT_SYMBOL )? PRESERVE_SYMBOL
            	    {
            	        ON_SYMBOL388 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event_tail2275);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        COMPLETION_SYMBOL389 = (pANTLR3_COMMON_TOKEN) MATCHT(COMPLETION_SYMBOL, &FOLLOW_COMPLETION_SYMBOL_in_create_event_tail2277);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

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

            	            switch (alt121)
            	            {
            	        	case 1:
            	        	    // MySQL.g:715:32: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL390 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_create_event_tail2279);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_event_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	        PRESERVE_SYMBOL391 = (pANTLR3_COMMON_TOKEN) MATCHT(PRESERVE_SYMBOL, &FOLLOW_PRESERVE_SYMBOL_in_create_event_tail2282);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

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

                switch (alt124)
                {
            	case 1:
            	    // MySQL.g:716:4: ENABLE_SYMBOL
            	    {
            	        ENABLE_SYMBOL392 = (pANTLR3_COMMON_TOKEN) MATCHT(ENABLE_SYMBOL, &FOLLOW_ENABLE_SYMBOL_in_create_event_tail2289);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:716:20: DISABLE_SYMBOL ( ON_SYMBOL SLAVE_SYMBOL )?
            	    {
            	        DISABLE_SYMBOL393 = (pANTLR3_COMMON_TOKEN) MATCHT(DISABLE_SYMBOL, &FOLLOW_DISABLE_SYMBOL_in_create_event_tail2293);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

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

            	            switch (alt123)
            	            {
            	        	case 1:
            	        	    // MySQL.g:716:36: ON_SYMBOL SLAVE_SYMBOL
            	        	    {
            	        	        ON_SYMBOL394 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_event_tail2296);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_event_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

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

            	        	        SLAVE_SYMBOL395 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_create_event_tail2298);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_event_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

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

                switch (alt125)
                {
            	case 1:
            	    // MySQL.g:717:4: COMMENT_SYMBOL string_literal
            	    {
            	        COMMENT_SYMBOL396 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_create_event_tail2307);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_event_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_string_literal_in_create_event_tail2309);
            	        string_literal397=string_literal(ctx);

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

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

            	    }
            	    break;

                }
            }

            DO_SYMBOL398 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_create_event_tail2315);
            if  (HASEXCEPTION())
            {
                goto rulecreate_event_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_compound_statement_in_create_event_tail2317);
            compound_statement399=compound_statement(ctx);

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

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

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_event_tailEx; /* Prevent compiler warnings */
    rulecreate_event_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 create_event_tail */

/**
 * $ANTLR start create_routine
 * MySQL.g:721:1: create_routine : create_with_definer create_routine_or_udf ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_routine_return
create_routine(pMySQLParser ctx)
{
    MySQLParser_create_routine_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL402;
    pANTLR3_COMMON_TOKEN    EOF403;
    MySQLParser_create_with_definer_return create_with_definer400;
    #undef	RETURN_TYPE_create_with_definer400
    #define	RETURN_TYPE_create_with_definer400 MySQLParser_create_with_definer_return

    MySQLParser_create_routine_or_udf_return create_routine_or_udf401;
    #undef	RETURN_TYPE_create_routine_or_udf401
    #define	RETURN_TYPE_create_routine_or_udf401 MySQLParser_create_routine_or_udf_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL402_tree;
    pANTLR3_BASE_TREE EOF403_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL402       = NULL;
    EOF403       = NULL;
    create_with_definer400.tree = NULL;

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


    SEMICOLON_SYMBOL402_tree   = NULL;
    EOF403_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:721:15: ( create_with_definer create_routine_or_udf ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:722:2: create_with_definer create_routine_or_udf ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_with_definer_in_create_routine2327);
            create_with_definer400=create_with_definer(ctx);

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

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

            FOLLOWPUSH(FOLLOW_create_routine_or_udf_in_create_routine2329);
            create_routine_or_udf401=create_routine_or_udf(ctx);

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

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

            // MySQL.g:722:44: ( SEMICOLON_SYMBOL )?
            {
                int alt126=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt126=1;
                    	}
                        break;
                }

                switch (alt126)
                {
            	case 1:
            	    // MySQL.g:722:44: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL402 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_routine2331);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_routineEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            EOF403 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_routine2334);
            if  (HASEXCEPTION())
            {
                goto rulecreate_routineEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_routineEx; /* Prevent compiler warnings */
    rulecreate_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 create_routine */

/**
 * $ANTLR start create_procedure
 * MySQL.g:725:1: create_procedure : create_with_definer procedure_body ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_procedure_return
create_procedure(pMySQLParser ctx)
{
    MySQLParser_create_procedure_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL406;
    pANTLR3_COMMON_TOKEN    EOF407;
    MySQLParser_create_with_definer_return create_with_definer404;
    #undef	RETURN_TYPE_create_with_definer404
    #define	RETURN_TYPE_create_with_definer404 MySQLParser_create_with_definer_return

    MySQLParser_procedure_body_return procedure_body405;
    #undef	RETURN_TYPE_procedure_body405
    #define	RETURN_TYPE_procedure_body405 MySQLParser_procedure_body_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL406_tree;
    pANTLR3_BASE_TREE EOF407_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL406       = NULL;
    EOF407       = NULL;
    create_with_definer404.tree = NULL;

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


    SEMICOLON_SYMBOL406_tree   = NULL;
    EOF407_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:725:17: ( create_with_definer procedure_body ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:726:2: create_with_definer procedure_body ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_with_definer_in_create_procedure2344);
            create_with_definer404=create_with_definer(ctx);

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

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

            FOLLOWPUSH(FOLLOW_procedure_body_in_create_procedure2346);
            procedure_body405=procedure_body(ctx);

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

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

            // MySQL.g:726:37: ( SEMICOLON_SYMBOL )?
            {
                int alt127=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt127=1;
                    	}
                        break;
                }

                switch (alt127)
                {
            	case 1:
            	    // MySQL.g:726:37: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL406 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_procedure2348);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_procedureEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            EOF407 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_procedure2351);
            if  (HASEXCEPTION())
            {
                goto rulecreate_procedureEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

        }

    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_procedure */

/**
 * $ANTLR start create_function
 * MySQL.g:729:1: create_function : create_with_definer function_body ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_function_return
create_function(pMySQLParser ctx)
{
    MySQLParser_create_function_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL410;
    pANTLR3_COMMON_TOKEN    EOF411;
    MySQLParser_create_with_definer_return create_with_definer408;
    #undef	RETURN_TYPE_create_with_definer408
    #define	RETURN_TYPE_create_with_definer408 MySQLParser_create_with_definer_return

    MySQLParser_function_body_return function_body409;
    #undef	RETURN_TYPE_function_body409
    #define	RETURN_TYPE_function_body409 MySQLParser_function_body_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL410_tree;
    pANTLR3_BASE_TREE EOF411_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL410       = NULL;
    EOF411       = NULL;
    create_with_definer408.tree = NULL;

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


    SEMICOLON_SYMBOL410_tree   = NULL;
    EOF411_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:729:16: ( create_with_definer function_body ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:730:2: create_with_definer function_body ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_with_definer_in_create_function2361);
            create_with_definer408=create_with_definer(ctx);

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

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

            FOLLOWPUSH(FOLLOW_function_body_in_create_function2363);
            function_body409=function_body(ctx);

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

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

            // MySQL.g:730:36: ( SEMICOLON_SYMBOL )?
            {
                int alt128=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt128=1;
                    	}
                        break;
                }

                switch (alt128)
                {
            	case 1:
            	    // MySQL.g:730:36: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL410 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_function2365);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            EOF411 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_function2368);
            if  (HASEXCEPTION())
            {
                goto rulecreate_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_functionEx; /* Prevent compiler warnings */
    rulecreate_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 create_function */

/**
 * $ANTLR start create_routine_or_udf
 * MySQL.g:733:1: create_routine_or_udf : ( procedure_body | function_body );
 */
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;

    MySQLParser_procedure_body_return procedure_body412;
    #undef	RETURN_TYPE_procedure_body412
    #define	RETURN_TYPE_procedure_body412 MySQLParser_procedure_body_return

    MySQLParser_function_body_return function_body413;
    #undef	RETURN_TYPE_function_body413
    #define	RETURN_TYPE_function_body413 MySQLParser_function_body_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    procedure_body412.tree = NULL;

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




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:733:22: ( procedure_body | function_body )

            ANTLR3_UINT32 alt129;

            alt129=2;

            switch ( LA(1) )
            {
            case PROCEDURE_SYMBOL:
            	{
            		alt129=1;
            	}
                break;
            case AGGREGATE_SYMBOL:
            case FUNCTION_SYMBOL:
            	{
            		alt129=2;
            	}
                break;

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

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


                goto rulecreate_routine_or_udfEx;

            }

            switch (alt129)
            {
        	case 1:
        	    // MySQL.g:734:2: procedure_body
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_procedure_body_in_create_routine_or_udf2377);
        	        procedure_body412=procedure_body(ctx);

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

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

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


        	        FOLLOWPUSH(FOLLOW_function_body_in_create_routine_or_udf2382);
        	        function_body413=function_body(ctx);

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

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_body413.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 procedure_body
 * MySQL.g:738:1: procedure_body : PROCEDURE_SYMBOL procedure_name OPEN_PAR_SYMBOL ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )? CLOSE_PAR_SYMBOL ( routine_create_options )? compound_statement ;
 */
static MySQLParser_procedure_body_return
procedure_body(pMySQLParser ctx)
{
    MySQLParser_procedure_body_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL414;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL416;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL418;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL420;
    MySQLParser_procedure_name_return procedure_name415;
    #undef	RETURN_TYPE_procedure_name415
    #define	RETURN_TYPE_procedure_name415 MySQLParser_procedure_name_return

    MySQLParser_procedure_parameter_return procedure_parameter417;
    #undef	RETURN_TYPE_procedure_parameter417
    #define	RETURN_TYPE_procedure_parameter417 MySQLParser_procedure_parameter_return

    MySQLParser_procedure_parameter_return procedure_parameter419;
    #undef	RETURN_TYPE_procedure_parameter419
    #define	RETURN_TYPE_procedure_parameter419 MySQLParser_procedure_parameter_return

    MySQLParser_routine_create_options_return routine_create_options421;
    #undef	RETURN_TYPE_routine_create_options421
    #define	RETURN_TYPE_routine_create_options421 MySQLParser_routine_create_options_return

    MySQLParser_compound_statement_return compound_statement422;
    #undef	RETURN_TYPE_compound_statement422
    #define	RETURN_TYPE_compound_statement422 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE PROCEDURE_SYMBOL414_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL416_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL418_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL420_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PROCEDURE_SYMBOL414       = NULL;
    OPEN_PAR_SYMBOL416       = NULL;
    COMMA_SYMBOL418       = NULL;
    CLOSE_PAR_SYMBOL420       = NULL;
    procedure_name415.tree = NULL;

    procedure_parameter417.tree = NULL;

    procedure_parameter419.tree = NULL;

    routine_create_options421.tree = NULL;

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


    PROCEDURE_SYMBOL414_tree   = NULL;
    OPEN_PAR_SYMBOL416_tree   = NULL;
    COMMA_SYMBOL418_tree   = NULL;
    CLOSE_PAR_SYMBOL420_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:738:15: ( PROCEDURE_SYMBOL procedure_name OPEN_PAR_SYMBOL ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )? CLOSE_PAR_SYMBOL ( routine_create_options )? compound_statement )
        // MySQL.g:739:2: PROCEDURE_SYMBOL procedure_name OPEN_PAR_SYMBOL ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )? CLOSE_PAR_SYMBOL ( routine_create_options )? compound_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            PROCEDURE_SYMBOL414 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_procedure_body2391);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_procedure_name_in_procedure_body2393);
            procedure_name415=procedure_name(ctx);

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

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

            OPEN_PAR_SYMBOL416 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_procedure_body2395);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:739:50: ( procedure_parameter ( COMMA_SYMBOL procedure_parameter )* )?
            {
                int alt131=2;
                {
                    int LA131_0 = LA(1);
                    if ( (((LA131_0 >= ACCOUNT_SYMBOL) && (LA131_0 <= YEAR_SYMBOL)) || LA131_0 == BACK_TICK_QUOTED_ID || LA131_0 == DOUBLE_QUOTED_TEXT || LA131_0 == IDENTIFIER || LA131_0 == INOUT_SYMBOL || LA131_0 == IN_SYMBOL || LA131_0 == OUT_SYMBOL))
                    {
                        alt131=1;
                    }
                }
                switch (alt131)
                {
            	case 1:
            	    // MySQL.g:739:51: procedure_parameter ( COMMA_SYMBOL procedure_parameter )*
            	    {
            	        FOLLOWPUSH(FOLLOW_procedure_parameter_in_procedure_body2398);
            	        procedure_parameter417=procedure_parameter(ctx);

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

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

            	        // MySQL.g:739:71: ( COMMA_SYMBOL procedure_parameter )*

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

            	            }

            	            switch (alt130)
            	            {
            	        	case 1:
            	        	    // MySQL.g:739:72: COMMA_SYMBOL procedure_parameter
            	        	    {
            	        	        COMMA_SYMBOL418 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_procedure_body2401);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_bodyEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

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

            	        	        FOLLOWPUSH(FOLLOW_procedure_parameter_in_procedure_body2403);
            	        	        procedure_parameter419=procedure_parameter(ctx);

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

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

            	        	    }
            	        	    break;

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


            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL420 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_body2409);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            // MySQL.g:740:3: ( routine_create_options )?
            {
                int alt132=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    case CONTAINS_SYMBOL:
                    case LANGUAGE_SYMBOL:
                    case NO_SYMBOL:
                    case DETERMINISTIC_SYMBOL:
                    case MODIFIES_SYMBOL:
                    case NOT_SYMBOL:
                    case READS_SYMBOL:
                    case SQL_SYMBOL:
                    	{
                    		alt132=1;
                    	}
                        break;
                }

                switch (alt132)
                {
            	case 1:
            	    // MySQL.g:740:3: routine_create_options
            	    {
            	        FOLLOWPUSH(FOLLOW_routine_create_options_in_procedure_body2413);
            	        routine_create_options421=routine_create_options(ctx);

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

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

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_compound_statement_in_procedure_body2416);
            compound_statement422=compound_statement(ctx);

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

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

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleprocedure_bodyEx; /* Prevent compiler warnings */
    ruleprocedure_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 procedure_body */

/**
 * $ANTLR start function_body
 * MySQL.g:743:1: function_body : ( FUNCTION_SYMBOL ( function_name OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_options )? compound_statement | udf_tail ) | AGGREGATE_SYMBOL FUNCTION_SYMBOL udf_tail );
 */
static MySQLParser_function_body_return
function_body(pMySQLParser ctx)
{
    MySQLParser_function_body_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL423;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL425;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL427;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL429;
    pANTLR3_COMMON_TOKEN    RETURNS_SYMBOL430;
    pANTLR3_COMMON_TOKEN    AGGREGATE_SYMBOL435;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL436;
    MySQLParser_function_name_return function_name424;
    #undef	RETURN_TYPE_function_name424
    #define	RETURN_TYPE_function_name424 MySQLParser_function_name_return

    MySQLParser_function_parameter_return function_parameter426;
    #undef	RETURN_TYPE_function_parameter426
    #define	RETURN_TYPE_function_parameter426 MySQLParser_function_parameter_return

    MySQLParser_function_parameter_return function_parameter428;
    #undef	RETURN_TYPE_function_parameter428
    #define	RETURN_TYPE_function_parameter428 MySQLParser_function_parameter_return

    MySQLParser_data_type_return data_type431;
    #undef	RETURN_TYPE_data_type431
    #define	RETURN_TYPE_data_type431 MySQLParser_data_type_return

    MySQLParser_routine_create_options_return routine_create_options432;
    #undef	RETURN_TYPE_routine_create_options432
    #define	RETURN_TYPE_routine_create_options432 MySQLParser_routine_create_options_return

    MySQLParser_compound_statement_return compound_statement433;
    #undef	RETURN_TYPE_compound_statement433
    #define	RETURN_TYPE_compound_statement433 MySQLParser_compound_statement_return

    MySQLParser_udf_tail_return udf_tail434;
    #undef	RETURN_TYPE_udf_tail434
    #define	RETURN_TYPE_udf_tail434 MySQLParser_udf_tail_return

    MySQLParser_udf_tail_return udf_tail437;
    #undef	RETURN_TYPE_udf_tail437
    #define	RETURN_TYPE_udf_tail437 MySQLParser_udf_tail_return

    pANTLR3_BASE_TREE FUNCTION_SYMBOL423_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL425_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL427_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL429_tree;
    pANTLR3_BASE_TREE RETURNS_SYMBOL430_tree;
    pANTLR3_BASE_TREE AGGREGATE_SYMBOL435_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL436_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FUNCTION_SYMBOL423       = NULL;
    OPEN_PAR_SYMBOL425       = NULL;
    COMMA_SYMBOL427       = NULL;
    CLOSE_PAR_SYMBOL429       = NULL;
    RETURNS_SYMBOL430       = NULL;
    AGGREGATE_SYMBOL435       = NULL;
    FUNCTION_SYMBOL436       = NULL;
    function_name424.tree = NULL;

    function_parameter426.tree = NULL;

    function_parameter428.tree = NULL;

    data_type431.tree = NULL;

    routine_create_options432.tree = NULL;

    compound_statement433.tree = NULL;

    udf_tail434.tree = NULL;

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


    FUNCTION_SYMBOL423_tree   = NULL;
    OPEN_PAR_SYMBOL425_tree   = NULL;
    COMMA_SYMBOL427_tree   = NULL;
    CLOSE_PAR_SYMBOL429_tree   = NULL;
    RETURNS_SYMBOL430_tree   = NULL;
    AGGREGATE_SYMBOL435_tree   = NULL;
    FUNCTION_SYMBOL436_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:743:14: ( FUNCTION_SYMBOL ( function_name OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_options )? compound_statement | udf_tail ) | AGGREGATE_SYMBOL FUNCTION_SYMBOL udf_tail )

            ANTLR3_UINT32 alt137;

            alt137=2;

            switch ( LA(1) )
            {
            case FUNCTION_SYMBOL:
            	{
            		alt137=1;
            	}
                break;
            case AGGREGATE_SYMBOL:
            	{
            		alt137=2;
            	}
                break;

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

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


                goto rulefunction_bodyEx;

            }

            switch (alt137)
            {
        	case 1:
        	    // MySQL.g:744:2: FUNCTION_SYMBOL ( function_name OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_options )? compound_statement | udf_tail )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FUNCTION_SYMBOL423 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_function_body2426);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_bodyEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:745:2: ( function_name OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_options )? compound_statement | udf_tail )
        	        {
        	            int alt136=2;
        	            {
        	                int LA136_0 = LA(1);
        	                if ( (LA136_0 == IDENTIFIER))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt136=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt136=2;
        	                    	}
        	                        break;

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

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


        	                        goto rulefunction_bodyEx;

        	                    }

        	                }
        	                else if ( (LA136_0 == BACK_TICK_QUOTED_ID))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt136=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt136=2;
        	                    	}
        	                        break;

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

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


        	                        goto rulefunction_bodyEx;

        	                    }

        	                }
        	                else if ( (LA136_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt136=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt136=2;
        	                    	}
        	                        break;

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

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


        	                        goto rulefunction_bodyEx;

        	                    }

        	                }
        	                else if ( (((LA136_0 >= ACTION_SYMBOL) && (LA136_0 <= SHARE_SYMBOL)) || ((LA136_0 >= SLOW_SYMBOL) && (LA136_0 <= YEAR_SYMBOL))))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt136=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt136=2;
        	                    	}
        	                        break;

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

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


        	                        goto rulefunction_bodyEx;

        	                    }

        	                }
        	                else if ( (((LA136_0 >= ACCOUNT_SYMBOL) && (LA136_0 <= XA_SYMBOL)) || LA136_0 == SHUTDOWN_SYMBOL))
        	                {
        	                    switch ( LA(2) )
        	                    {
        	                    case DOT_SYMBOL:
        	                    case OPEN_PAR_SYMBOL:
        	                    	{
        	                    		alt136=1;
        	                    	}
        	                        break;
        	                    case RETURNS_SYMBOL:
        	                    	{
        	                    		alt136=2;
        	                    	}
        	                        break;

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

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


        	                        goto rulefunction_bodyEx;

        	                    }

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


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


        	                    goto rulefunction_bodyEx;

        	                }
        	            }
        	            switch (alt136)
        	            {
        	        	case 1:
        	        	    // MySQL.g:746:3: function_name OPEN_PAR_SYMBOL ( function_parameter ( COMMA_SYMBOL function_parameter )* )? CLOSE_PAR_SYMBOL RETURNS_SYMBOL data_type ( routine_create_options )? compound_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_function_name_in_function_body2433);
        	        	        function_name424=function_name(ctx);

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

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

        	        	        OPEN_PAR_SYMBOL425 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_function_body2435);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        // MySQL.g:746:33: ( function_parameter ( COMMA_SYMBOL function_parameter )* )?
        	        	        {
        	        	            int alt134=2;
        	        	            {
        	        	                int LA134_0 = LA(1);
        	        	                if ( (((LA134_0 >= ACCOUNT_SYMBOL) && (LA134_0 <= YEAR_SYMBOL)) || LA134_0 == BACK_TICK_QUOTED_ID || LA134_0 == DOUBLE_QUOTED_TEXT || LA134_0 == IDENTIFIER))
        	        	                {
        	        	                    alt134=1;
        	        	                }
        	        	            }
        	        	            switch (alt134)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:746:34: function_parameter ( COMMA_SYMBOL function_parameter )*
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_function_parameter_in_function_body2438);
        	        	        	        function_parameter426=function_parameter(ctx);

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

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

        	        	        	        // MySQL.g:746:53: ( COMMA_SYMBOL function_parameter )*

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

        	        	        	            }

        	        	        	            switch (alt133)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:746:54: COMMA_SYMBOL function_parameter
        	        	        	        	    {
        	        	        	        	        COMMA_SYMBOL427 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_function_body2441);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto rulefunction_bodyEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

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

        	        	        	        	        FOLLOWPUSH(FOLLOW_function_parameter_in_function_body2443);
        	        	        	        	        function_parameter428=function_parameter(ctx);

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

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

        	        	        	        	    }
        	        	        	        	    break;

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


        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CLOSE_PAR_SYMBOL429 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_function_body2449);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        RETURNS_SYMBOL430 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURNS_SYMBOL, &FOLLOW_RETURNS_SYMBOL_in_function_body2451);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefunction_bodyEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	        FOLLOWPUSH(FOLLOW_data_type_in_function_body2456);
        	        	        data_type431=data_type(ctx);

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

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

        	        	        // MySQL.g:747:14: ( routine_create_options )?
        	        	        {
        	        	            int alt135=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case COMMENT_SYMBOL:
        	        	                case CONTAINS_SYMBOL:
        	        	                case LANGUAGE_SYMBOL:
        	        	                case NO_SYMBOL:
        	        	                case DETERMINISTIC_SYMBOL:
        	        	                case MODIFIES_SYMBOL:
        	        	                case NOT_SYMBOL:
        	        	                case READS_SYMBOL:
        	        	                case SQL_SYMBOL:
        	        	                	{
        	        	                		alt135=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt135)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:747:14: routine_create_options
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_routine_create_options_in_function_body2458);
        	        	        	        routine_create_options432=routine_create_options(ctx);

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

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

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_compound_statement_in_function_body2461);
        	        	        compound_statement433=compound_statement(ctx);

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

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

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:748:5: udf_tail
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_udf_tail_in_function_body2467);
        	        	        udf_tail434=udf_tail(ctx);

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

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:750:4: AGGREGATE_SYMBOL FUNCTION_SYMBOL udf_tail
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AGGREGATE_SYMBOL435 = (pANTLR3_COMMON_TOKEN) MATCHT(AGGREGATE_SYMBOL, &FOLLOW_AGGREGATE_SYMBOL_in_function_body2475);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_bodyEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FUNCTION_SYMBOL436 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_function_body2477);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefunction_bodyEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_udf_tail_in_function_body2479);
        	        udf_tail437=udf_tail(ctx);

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

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

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulefunction_bodyEx; /* Prevent compiler warnings */
    rulefunction_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 function_body */

/**
 * $ANTLR start udf_tail
 * MySQL.g:753:1: udf_tail : udf_name RETURNS_SYMBOL ( STRING_SYMBOL | INT_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_SYMBOL439;
    pANTLR3_COMMON_TOKEN    set440;
    pANTLR3_COMMON_TOKEN    SONAME_SYMBOL441;
    MySQLParser_udf_name_return udf_name438;
    #undef	RETURN_TYPE_udf_name438
    #define	RETURN_TYPE_udf_name438 MySQLParser_udf_name_return

    MySQLParser_string_literal_return string_literal442;
    #undef	RETURN_TYPE_string_literal442
    #define	RETURN_TYPE_string_literal442 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE RETURNS_SYMBOL439_tree;
    pANTLR3_BASE_TREE set440_tree;
    pANTLR3_BASE_TREE SONAME_SYMBOL441_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RETURNS_SYMBOL439       = NULL;
    set440       = NULL;
    SONAME_SYMBOL441       = NULL;
    udf_name438.tree = NULL;

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


    RETURNS_SYMBOL439_tree   = NULL;
    set440_tree   = NULL;
    SONAME_SYMBOL441_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:753:9: ( udf_name RETURNS_SYMBOL ( STRING_SYMBOL | INT_SYMBOL | REAL_SYMBOL | DECIMAL_SYMBOL ) SONAME_SYMBOL string_literal )
        // MySQL.g:754:2: udf_name RETURNS_SYMBOL ( STRING_SYMBOL | INT_SYMBOL | REAL_SYMBOL | DECIMAL_SYMBOL ) SONAME_SYMBOL string_literal
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_udf_name_in_udf_tail2489);
            udf_name438=udf_name(ctx);

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

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

            RETURNS_SYMBOL439 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURNS_SYMBOL, &FOLLOW_RETURNS_SYMBOL_in_udf_tail2491);
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            set440=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == STRING_SYMBOL || LA(1) == DECIMAL_SYMBOL || LA(1) == INT_SYMBOL || LA(1) == REAL_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set440))
                );
                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_SYMBOL441 = (pANTLR3_COMMON_TOKEN) MATCHT(SONAME_SYMBOL, &FOLLOW_SONAME_SYMBOL_in_udf_tail2509);
            if  (HASEXCEPTION())
            {
                goto ruleudf_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_string_literal_in_udf_tail2511);
            string_literal442=string_literal(ctx);

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

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal442.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_options
 * MySQL.g:757:1: routine_create_options : ( routine_create_option )+ -> ^( ROUTINE_CREATE_OPTIONS ( routine_create_option )+ ) ;
 */
static MySQLParser_routine_create_options_return
routine_create_options(pMySQLParser ctx)
{
    MySQLParser_routine_create_options_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_routine_create_option_return routine_create_option443;
    #undef	RETURN_TYPE_routine_create_option443
    #define	RETURN_TYPE_routine_create_option443 MySQLParser_routine_create_option_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_routine_create_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

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



    stream_routine_create_option   = NULL;
    #define CREATE_stream_routine_create_option  if (stream_routine_create_option == NULL) {stream_routine_create_option = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule routine_create_option"); }

    retval.tree  = NULL;

    {
        // MySQL.g:757:23: ( ( routine_create_option )+ -> ^( ROUTINE_CREATE_OPTIONS ( routine_create_option )+ ) )
        // MySQL.g:758:2: ( routine_create_option )+
        {
            // MySQL.g:758:2: ( routine_create_option )+
            {
                int cnt138=0;

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

            	}

            	switch (alt138)
            	{
            	    case 1:
            	        // MySQL.g:758:2: routine_create_option
            	        {
            	            FOLLOWPUSH(FOLLOW_routine_create_option_in_routine_create_options2520);
            	            routine_create_option443=routine_create_option(ctx);

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

            	            if ( BACKTRACKING==0 ) { CREATE_stream_routine_create_option; stream_routine_create_option->add(stream_routine_create_option, routine_create_option443.tree, NULL); }

            	        }
            	        break;

            	    default:

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

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


            		goto ruleroutine_create_optionsEx;
            	}
            	cnt138++;
                }
                loop138: ;	/* Jump to here if this rule does not match */
            }

            /* AST REWRITE
             * elements          : routine_create_option
             * 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;
            	// 758:25: -> ^( ROUTINE_CREATE_OPTIONS ( routine_create_option )+ )
            	{
            	    // MySQL.g:758:28: ^( ROUTINE_CREATE_OPTIONS ( routine_create_option )+ )
            	    {
            	        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, ROUTINE_CREATE_OPTIONS, (pANTLR3_UINT8)"ROUTINE_CREATE_OPTIONS")
            	        , root_1));

            	        if ((stream_routine_create_option == NULL || !stream_routine_create_option->hasNext(stream_routine_create_option))  )
            	        {
            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_REWRITE_EARLY_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_REWRITE_EARLY_EXCEPTION_NAME;
            	        }
            	        else
            	        {
            	        	while ( (stream_routine_create_option->hasNext(stream_routine_create_option))  ) {
            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_routine_create_option == NULL ? NULL : stream_routine_create_option->nextTree(stream_routine_create_option));

            	        	}
            	        	stream_routine_create_option->reset(stream_routine_create_option);

            	        }
            	        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 ruleroutine_create_optionsEx; /* Prevent compiler warnings */
    ruleroutine_create_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 (stream_routine_create_option != NULL) stream_routine_create_option->free(stream_routine_create_option);
    }


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

/**
 * $ANTLR start routine_create_option
 * MySQL.g:761: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_SYMBOL445;
    pANTLR3_COMMON_TOKEN    DETERMINISTIC_SYMBOL446;
    MySQLParser_routine_option_return routine_option444;
    #undef	RETURN_TYPE_routine_option444
    #define	RETURN_TYPE_routine_option444 MySQLParser_routine_option_return

    pANTLR3_BASE_TREE NOT_SYMBOL445_tree;
    pANTLR3_BASE_TREE DETERMINISTIC_SYMBOL446_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL445       = NULL;
    DETERMINISTIC_SYMBOL446       = NULL;
    routine_option444.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL445_tree   = NULL;
    DETERMINISTIC_SYMBOL446_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:761:22: ( routine_option | ( NOT_SYMBOL )? DETERMINISTIC_SYMBOL )

            ANTLR3_UINT32 alt140;

            alt140=2;

            switch ( LA(1) )
            {
            case COMMENT_SYMBOL:
            case CONTAINS_SYMBOL:
            case LANGUAGE_SYMBOL:
            case NO_SYMBOL:
            case MODIFIES_SYMBOL:
            case READS_SYMBOL:
            case SQL_SYMBOL:
            	{
            		alt140=1;
            	}
                break;
            case DETERMINISTIC_SYMBOL:
            case NOT_SYMBOL:
            	{
            		alt140=2;
            	}
                break;

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

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


                goto ruleroutine_create_optionEx;

            }

            switch (alt140)
            {
        	case 1:
        	    // MySQL.g:762:2: routine_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_routine_option_in_routine_create_option2540);
        	        routine_option444=routine_option(ctx);

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

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

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:763:4: ( NOT_SYMBOL )? DETERMINISTIC_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:763:4: ( NOT_SYMBOL )?
        	        {
        	            int alt139=2;
        	            switch ( LA(1) )
        	            {
        	                case NOT_SYMBOL:
        	                	{
        	                		alt139=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt139)
        	            {
        	        	case 1:
        	        	    // MySQL.g:763:4: NOT_SYMBOL
        	        	    {
        	        	        NOT_SYMBOL445 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_routine_create_option2545);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleroutine_create_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        DETERMINISTIC_SYMBOL446 = (pANTLR3_COMMON_TOKEN) MATCHT(DETERMINISTIC_SYMBOL, &FOLLOW_DETERMINISTIC_SYMBOL_in_routine_create_option2548);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_create_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DETERMINISTIC_SYMBOL446_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DETERMINISTIC_SYMBOL446));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DETERMINISTIC_SYMBOL446_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_alter_options
 * MySQL.g:766:1: routine_alter_options : ( routine_create_option )+ -> ^( ROUTINE_ALTER_OPTIONS ( routine_create_option )+ ) ;
 */
static MySQLParser_routine_alter_options_return
routine_alter_options(pMySQLParser ctx)
{
    MySQLParser_routine_alter_options_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_routine_create_option_return routine_create_option447;
    #undef	RETURN_TYPE_routine_create_option447
    #define	RETURN_TYPE_routine_create_option447 MySQLParser_routine_create_option_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_routine_create_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

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



    stream_routine_create_option   = NULL;
    #define CREATE_stream_routine_create_option  if (stream_routine_create_option == NULL) {stream_routine_create_option = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule routine_create_option"); }

    retval.tree  = NULL;

    {
        // MySQL.g:766:22: ( ( routine_create_option )+ -> ^( ROUTINE_ALTER_OPTIONS ( routine_create_option )+ ) )
        // MySQL.g:767:2: ( routine_create_option )+
        {
            // MySQL.g:767:2: ( routine_create_option )+
            {
                int cnt141=0;

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

            	}

            	switch (alt141)
            	{
            	    case 1:
            	        // MySQL.g:767:2: routine_create_option
            	        {
            	            FOLLOWPUSH(FOLLOW_routine_create_option_in_routine_alter_options2557);
            	            routine_create_option447=routine_create_option(ctx);

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

            	            if ( BACKTRACKING==0 ) { CREATE_stream_routine_create_option; stream_routine_create_option->add(stream_routine_create_option, routine_create_option447.tree, NULL); }

            	        }
            	        break;

            	    default:

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

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


            		goto ruleroutine_alter_optionsEx;
            	}
            	cnt141++;
                }
                loop141: ;	/* Jump to here if this rule does not match */
            }

            /* AST REWRITE
             * elements          : routine_create_option
             * 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;
            	// 767:25: -> ^( ROUTINE_ALTER_OPTIONS ( routine_create_option )+ )
            	{
            	    // MySQL.g:767:28: ^( ROUTINE_ALTER_OPTIONS ( routine_create_option )+ )
            	    {
            	        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, ROUTINE_ALTER_OPTIONS, (pANTLR3_UINT8)"ROUTINE_ALTER_OPTIONS")
            	        , root_1));

            	        if ((stream_routine_create_option == NULL || !stream_routine_create_option->hasNext(stream_routine_create_option))  )
            	        {
            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_REWRITE_EARLY_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_REWRITE_EARLY_EXCEPTION_NAME;
            	        }
            	        else
            	        {
            	        	while ( (stream_routine_create_option->hasNext(stream_routine_create_option))  ) {
            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_routine_create_option == NULL ? NULL : stream_routine_create_option->nextTree(stream_routine_create_option));

            	        	}
            	        	stream_routine_create_option->reset(stream_routine_create_option);

            	        }
            	        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 ruleroutine_alter_optionsEx; /* Prevent compiler warnings */
    ruleroutine_alter_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 (stream_routine_create_option != NULL) stream_routine_create_option->free(stream_routine_create_option);
    }


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

/**
 * $ANTLR start routine_option
 * MySQL.g:770: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_SYMBOL448;
    pANTLR3_COMMON_TOKEN    LANGUAGE_SYMBOL450;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL451;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL452;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL453;
    pANTLR3_COMMON_TOKEN    CONTAINS_SYMBOL454;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL455;
    pANTLR3_COMMON_TOKEN    READS_SYMBOL456;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL457;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL458;
    pANTLR3_COMMON_TOKEN    MODIFIES_SYMBOL459;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL460;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL461;
    pANTLR3_COMMON_TOKEN    SQL_SYMBOL462;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL463;
    pANTLR3_COMMON_TOKEN    set464;
    MySQLParser_string_literal_return string_literal449;
    #undef	RETURN_TYPE_string_literal449
    #define	RETURN_TYPE_string_literal449 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE COMMENT_SYMBOL448_tree;
    pANTLR3_BASE_TREE LANGUAGE_SYMBOL450_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL451_tree;
    pANTLR3_BASE_TREE NO_SYMBOL452_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL453_tree;
    pANTLR3_BASE_TREE CONTAINS_SYMBOL454_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL455_tree;
    pANTLR3_BASE_TREE READS_SYMBOL456_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL457_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL458_tree;
    pANTLR3_BASE_TREE MODIFIES_SYMBOL459_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL460_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL461_tree;
    pANTLR3_BASE_TREE SQL_SYMBOL462_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL463_tree;
    pANTLR3_BASE_TREE set464_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMENT_SYMBOL448       = NULL;
    LANGUAGE_SYMBOL450       = NULL;
    SQL_SYMBOL451       = NULL;
    NO_SYMBOL452       = NULL;
    SQL_SYMBOL453       = NULL;
    CONTAINS_SYMBOL454       = NULL;
    SQL_SYMBOL455       = NULL;
    READS_SYMBOL456       = NULL;
    SQL_SYMBOL457       = NULL;
    DATA_SYMBOL458       = NULL;
    MODIFIES_SYMBOL459       = NULL;
    SQL_SYMBOL460       = NULL;
    DATA_SYMBOL461       = NULL;
    SQL_SYMBOL462       = NULL;
    SECURITY_SYMBOL463       = NULL;
    set464       = NULL;
    string_literal449.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMENT_SYMBOL448_tree   = NULL;
    LANGUAGE_SYMBOL450_tree   = NULL;
    SQL_SYMBOL451_tree   = NULL;
    NO_SYMBOL452_tree   = NULL;
    SQL_SYMBOL453_tree   = NULL;
    CONTAINS_SYMBOL454_tree   = NULL;
    SQL_SYMBOL455_tree   = NULL;
    READS_SYMBOL456_tree   = NULL;
    SQL_SYMBOL457_tree   = NULL;
    DATA_SYMBOL458_tree   = NULL;
    MODIFIES_SYMBOL459_tree   = NULL;
    SQL_SYMBOL460_tree   = NULL;
    DATA_SYMBOL461_tree   = NULL;
    SQL_SYMBOL462_tree   = NULL;
    SECURITY_SYMBOL463_tree   = NULL;
    set464_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:770: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 alt142;

            alt142=7;

            switch ( LA(1) )
            {
            case COMMENT_SYMBOL:
            	{
            		alt142=1;
            	}
                break;
            case LANGUAGE_SYMBOL:
            	{
            		alt142=2;
            	}
                break;
            case NO_SYMBOL:
            	{
            		alt142=3;
            	}
                break;
            case CONTAINS_SYMBOL:
            	{
            		alt142=4;
            	}
                break;
            case READS_SYMBOL:
            	{
            		alt142=5;
            	}
                break;
            case MODIFIES_SYMBOL:
            	{
            		alt142=6;
            	}
                break;
            case SQL_SYMBOL:
            	{
            		alt142=7;
            	}
                break;

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

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


                goto ruleroutine_optionEx;

            }

            switch (alt142)
            {
        	case 1:
        	    // MySQL.g:771:2: COMMENT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL448 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_routine_option2577);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        FOLLOWPUSH(FOLLOW_string_literal_in_routine_option2579);
        	        string_literal449=string_literal(ctx);

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

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

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


        	        LANGUAGE_SYMBOL450 = (pANTLR3_COMMON_TOKEN) MATCHT(LANGUAGE_SYMBOL, &FOLLOW_LANGUAGE_SYMBOL_in_routine_option2584);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        SQL_SYMBOL451 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2586);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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


        	        NO_SYMBOL452 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_routine_option2591);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        SQL_SYMBOL453 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2593);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

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


        	        CONTAINS_SYMBOL454 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTAINS_SYMBOL, &FOLLOW_CONTAINS_SYMBOL_in_routine_option2598);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        SQL_SYMBOL455 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2600);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:775:4: READS_SYMBOL SQL_SYMBOL DATA_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READS_SYMBOL456 = (pANTLR3_COMMON_TOKEN) MATCHT(READS_SYMBOL, &FOLLOW_READS_SYMBOL_in_routine_option2605);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        SQL_SYMBOL457 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2607);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        DATA_SYMBOL458 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_routine_option2609);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:776:4: MODIFIES_SYMBOL SQL_SYMBOL DATA_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MODIFIES_SYMBOL459 = (pANTLR3_COMMON_TOKEN) MATCHT(MODIFIES_SYMBOL, &FOLLOW_MODIFIES_SYMBOL_in_routine_option2614);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        SQL_SYMBOL460 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2616);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        DATA_SYMBOL461 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_routine_option2618);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:777:4: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_SYMBOL462 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_routine_option2623);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        SECURITY_SYMBOL463 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_routine_option2625);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleroutine_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        set464=(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, set464))
        	            );
        	            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:780:1: create_index : CREATE_SYMBOL ^ create_index_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_index_return
create_index(pMySQLParser ctx)
{
    MySQLParser_create_index_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL465;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL467;
    pANTLR3_COMMON_TOKEN    EOF468;
    MySQLParser_create_index_tail_return create_index_tail466;
    #undef	RETURN_TYPE_create_index_tail466
    #define	RETURN_TYPE_create_index_tail466 MySQLParser_create_index_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL465_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL467_tree;
    pANTLR3_BASE_TREE EOF468_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL465       = NULL;
    SEMICOLON_SYMBOL467       = NULL;
    EOF468       = NULL;
    create_index_tail466.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL465_tree   = NULL;
    SEMICOLON_SYMBOL467_tree   = NULL;
    EOF468_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:780:13: ( CREATE_SYMBOL ^ create_index_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:781:2: CREATE_SYMBOL ^ create_index_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL465 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_index2643);
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL465_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL465))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL465_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_index_tail_in_create_index2646);
            create_index_tail466=create_index_tail(ctx);

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

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

            // MySQL.g:781:35: ( SEMICOLON_SYMBOL )?
            {
                int alt143=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt143=1;
                    	}
                        break;
                }

                switch (alt143)
                {
            	case 1:
            	    // MySQL.g:781:35: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL467 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_index2648);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_indexEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            EOF468 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_index2651);
            if  (HASEXCEPTION())
            {
                goto rulecreate_indexEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

        }

    }

    // 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_index_tail
 * MySQL.g:784:1: create_index_tail : ( online_option )? ( ( UNIQUE_SYMBOL )? INDEX_SYMBOL index_name ( index_type )? create_index_target ( normal_index_option )* ( index_lock_algorithm )? | FULLTEXT_SYMBOL INDEX_SYMBOL index_name create_index_target ( fulltext_index_option )* ( index_lock_algorithm )? | SPATIAL_SYMBOL INDEX_SYMBOL index_name create_index_target ( spatial_index_option )* ( index_lock_algorithm )? ) ;
 */
static MySQLParser_create_index_tail_return
create_index_tail(pMySQLParser ctx)
{
    MySQLParser_create_index_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL470;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL471;
    pANTLR3_COMMON_TOKEN    FULLTEXT_SYMBOL477;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL478;
    pANTLR3_COMMON_TOKEN    SPATIAL_SYMBOL483;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL484;
    MySQLParser_online_option_return online_option469;
    #undef	RETURN_TYPE_online_option469
    #define	RETURN_TYPE_online_option469 MySQLParser_online_option_return

    MySQLParser_index_name_return index_name472;
    #undef	RETURN_TYPE_index_name472
    #define	RETURN_TYPE_index_name472 MySQLParser_index_name_return

    MySQLParser_index_type_return index_type473;
    #undef	RETURN_TYPE_index_type473
    #define	RETURN_TYPE_index_type473 MySQLParser_index_type_return

    MySQLParser_create_index_target_return create_index_target474;
    #undef	RETURN_TYPE_create_index_target474
    #define	RETURN_TYPE_create_index_target474 MySQLParser_create_index_target_return

    MySQLParser_normal_index_option_return normal_index_option475;
    #undef	RETURN_TYPE_normal_index_option475
    #define	RETURN_TYPE_normal_index_option475 MySQLParser_normal_index_option_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm476;
    #undef	RETURN_TYPE_index_lock_algorithm476
    #define	RETURN_TYPE_index_lock_algorithm476 MySQLParser_index_lock_algorithm_return

    MySQLParser_index_name_return index_name479;
    #undef	RETURN_TYPE_index_name479
    #define	RETURN_TYPE_index_name479 MySQLParser_index_name_return

    MySQLParser_create_index_target_return create_index_target480;
    #undef	RETURN_TYPE_create_index_target480
    #define	RETURN_TYPE_create_index_target480 MySQLParser_create_index_target_return

    MySQLParser_fulltext_index_option_return fulltext_index_option481;
    #undef	RETURN_TYPE_fulltext_index_option481
    #define	RETURN_TYPE_fulltext_index_option481 MySQLParser_fulltext_index_option_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm482;
    #undef	RETURN_TYPE_index_lock_algorithm482
    #define	RETURN_TYPE_index_lock_algorithm482 MySQLParser_index_lock_algorithm_return

    MySQLParser_index_name_return index_name485;
    #undef	RETURN_TYPE_index_name485
    #define	RETURN_TYPE_index_name485 MySQLParser_index_name_return

    MySQLParser_create_index_target_return create_index_target486;
    #undef	RETURN_TYPE_create_index_target486
    #define	RETURN_TYPE_create_index_target486 MySQLParser_create_index_target_return

    MySQLParser_spatial_index_option_return spatial_index_option487;
    #undef	RETURN_TYPE_spatial_index_option487
    #define	RETURN_TYPE_spatial_index_option487 MySQLParser_spatial_index_option_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm488;
    #undef	RETURN_TYPE_index_lock_algorithm488
    #define	RETURN_TYPE_index_lock_algorithm488 MySQLParser_index_lock_algorithm_return

    pANTLR3_BASE_TREE UNIQUE_SYMBOL470_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL471_tree;
    pANTLR3_BASE_TREE FULLTEXT_SYMBOL477_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL478_tree;
    pANTLR3_BASE_TREE SPATIAL_SYMBOL483_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL484_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNIQUE_SYMBOL470       = NULL;
    INDEX_SYMBOL471       = NULL;
    FULLTEXT_SYMBOL477       = NULL;
    INDEX_SYMBOL478       = NULL;
    SPATIAL_SYMBOL483       = NULL;
    INDEX_SYMBOL484       = NULL;
    online_option469.tree = NULL;

    index_name472.tree = NULL;

    index_type473.tree = NULL;

    create_index_target474.tree = NULL;

    normal_index_option475.tree = NULL;

    index_lock_algorithm476.tree = NULL;

    index_name479.tree = NULL;

    create_index_target480.tree = NULL;

    fulltext_index_option481.tree = NULL;

    index_lock_algorithm482.tree = NULL;

    index_name485.tree = NULL;

    create_index_target486.tree = NULL;

    spatial_index_option487.tree = NULL;

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


    UNIQUE_SYMBOL470_tree   = NULL;
    INDEX_SYMBOL471_tree   = NULL;
    FULLTEXT_SYMBOL477_tree   = NULL;
    INDEX_SYMBOL478_tree   = NULL;
    SPATIAL_SYMBOL483_tree   = NULL;
    INDEX_SYMBOL484_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:784:18: ( ( online_option )? ( ( UNIQUE_SYMBOL )? INDEX_SYMBOL index_name ( index_type )? create_index_target ( normal_index_option )* ( index_lock_algorithm )? | FULLTEXT_SYMBOL INDEX_SYMBOL index_name create_index_target ( fulltext_index_option )* ( index_lock_algorithm )? | SPATIAL_SYMBOL INDEX_SYMBOL index_name create_index_target ( spatial_index_option )* ( index_lock_algorithm )? ) )
        // MySQL.g:785:2: ( online_option )? ( ( UNIQUE_SYMBOL )? INDEX_SYMBOL index_name ( index_type )? create_index_target ( normal_index_option )* ( index_lock_algorithm )? | FULLTEXT_SYMBOL INDEX_SYMBOL index_name create_index_target ( fulltext_index_option )* ( index_lock_algorithm )? | SPATIAL_SYMBOL INDEX_SYMBOL index_name create_index_target ( spatial_index_option )* ( index_lock_algorithm )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:785:2: ( online_option )?
            {
                int alt144=2;
                switch ( LA(1) )
                {
                    case OFFLINE_SYMBOL:
                    case ONLINE_SYMBOL:
                    	{
                    		alt144=1;
                    	}
                        break;
                }

                switch (alt144)
                {
            	case 1:
            	    // MySQL.g:785:2: online_option
            	    {
            	        FOLLOWPUSH(FOLLOW_online_option_in_create_index_tail2660);
            	        online_option469=online_option(ctx);

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

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

            	    }
            	    break;

                }
            }

            // MySQL.g:786:2: ( ( UNIQUE_SYMBOL )? INDEX_SYMBOL index_name ( index_type )? create_index_target ( normal_index_option )* ( index_lock_algorithm )? | FULLTEXT_SYMBOL INDEX_SYMBOL index_name create_index_target ( fulltext_index_option )* ( index_lock_algorithm )? | SPATIAL_SYMBOL INDEX_SYMBOL index_name create_index_target ( spatial_index_option )* ( index_lock_algorithm )? )
            {
                int alt153=3;
                switch ( LA(1) )
                {
                case INDEX_SYMBOL:
                case UNIQUE_SYMBOL:
                	{
                		alt153=1;
                	}
                    break;
                case FULLTEXT_SYMBOL:
                	{
                		alt153=2;
                	}
                    break;
                case SPATIAL_SYMBOL:
                	{
                		alt153=3;
                	}
                    break;

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

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


                    goto rulecreate_index_tailEx;

                }

                switch (alt153)
                {
            	case 1:
            	    // MySQL.g:787:3: ( UNIQUE_SYMBOL )? INDEX_SYMBOL index_name ( index_type )? create_index_target ( normal_index_option )* ( index_lock_algorithm )?
            	    {
            	        // MySQL.g:787:3: ( UNIQUE_SYMBOL )?
            	        {
            	            int alt145=2;
            	            switch ( LA(1) )
            	            {
            	                case UNIQUE_SYMBOL:
            	                	{
            	                		alt145=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt145)
            	            {
            	        	case 1:
            	        	    // MySQL.g:787:3: UNIQUE_SYMBOL
            	        	    {
            	        	        UNIQUE_SYMBOL470 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_create_index_tail2668);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_index_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INDEX_SYMBOL471 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_index_tail2671);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_index_name_in_create_index_tail2673);
            	        index_name472=index_name(ctx);

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

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

            	        // MySQL.g:787:42: ( index_type )?
            	        {
            	            int alt146=2;
            	            switch ( LA(1) )
            	            {
            	                case TYPE_SYMBOL:
            	                case USING_SYMBOL:
            	                	{
            	                		alt146=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt146)
            	            {
            	        	case 1:
            	        	    // MySQL.g:787:42: index_type
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_type_in_create_index_tail2675);
            	        	        index_type473=index_type(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_create_index_target_in_create_index_tail2678);
            	        create_index_target474=create_index_target(ctx);

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

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

            	        // MySQL.g:787:74: ( normal_index_option )*

            	        for (;;)
            	        {
            	            int alt147=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMENT_SYMBOL:
            	            case KEY_BLOCK_SIZE_SYMBOL:
            	            case TYPE_SYMBOL:
            	            case USING_SYMBOL:
            	            	{
            	            		alt147=1;
            	            	}
            	                break;

            	            }

            	            switch (alt147)
            	            {
            	        	case 1:
            	        	    // MySQL.g:787:74: normal_index_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_normal_index_option_in_create_index_tail2680);
            	        	        normal_index_option475=normal_index_option(ctx);

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

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

            	        	    }
            	        	    break;

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


            	        // MySQL.g:787:95: ( index_lock_algorithm )?
            	        {
            	            int alt148=2;
            	            {
            	                int LA148_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA148_0 == ALGORITHM_SYMBOL || LA148_0 == LOCK_SYMBOL))
            	                {
            	                    alt148=1;
            	                }
            	            }
            	            switch (alt148)
            	            {
            	        	case 1:
            	        	    // MySQL.g:787:95: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_create_index_tail2683);
            	        	        index_lock_algorithm476=index_lock_algorithm(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:788:5: FULLTEXT_SYMBOL INDEX_SYMBOL index_name create_index_target ( fulltext_index_option )* ( index_lock_algorithm )?
            	    {
            	        FULLTEXT_SYMBOL477 = (pANTLR3_COMMON_TOKEN) MATCHT(FULLTEXT_SYMBOL, &FOLLOW_FULLTEXT_SYMBOL_in_create_index_tail2690);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        INDEX_SYMBOL478 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_index_tail2692);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_index_name_in_create_index_tail2694);
            	        index_name479=index_name(ctx);

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

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

            	        FOLLOWPUSH(FOLLOW_create_index_target_in_create_index_tail2696);
            	        create_index_target480=create_index_target(ctx);

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

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

            	        // MySQL.g:788:65: ( fulltext_index_option )*

            	        for (;;)
            	        {
            	            int alt149=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMENT_SYMBOL:
            	            case KEY_BLOCK_SIZE_SYMBOL:
            	            case WITH_SYMBOL:
            	            	{
            	            		alt149=1;
            	            	}
            	                break;

            	            }

            	            switch (alt149)
            	            {
            	        	case 1:
            	        	    // MySQL.g:788:65: fulltext_index_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_fulltext_index_option_in_create_index_tail2698);
            	        	        fulltext_index_option481=fulltext_index_option(ctx);

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

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

            	        	    }
            	        	    break;

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


            	        // MySQL.g:788:88: ( index_lock_algorithm )?
            	        {
            	            int alt150=2;
            	            {
            	                int LA150_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA150_0 == ALGORITHM_SYMBOL || LA150_0 == LOCK_SYMBOL))
            	                {
            	                    alt150=1;
            	                }
            	            }
            	            switch (alt150)
            	            {
            	        	case 1:
            	        	    // MySQL.g:788:88: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_create_index_tail2701);
            	        	        index_lock_algorithm482=index_lock_algorithm(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:789:5: SPATIAL_SYMBOL INDEX_SYMBOL index_name create_index_target ( spatial_index_option )* ( index_lock_algorithm )?
            	    {
            	        SPATIAL_SYMBOL483 = (pANTLR3_COMMON_TOKEN) MATCHT(SPATIAL_SYMBOL, &FOLLOW_SPATIAL_SYMBOL_in_create_index_tail2708);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        INDEX_SYMBOL484 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_index_tail2710);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_index_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	        FOLLOWPUSH(FOLLOW_index_name_in_create_index_tail2712);
            	        index_name485=index_name(ctx);

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

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

            	        FOLLOWPUSH(FOLLOW_create_index_target_in_create_index_tail2714);
            	        create_index_target486=create_index_target(ctx);

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

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

            	        // MySQL.g:789:64: ( spatial_index_option )*

            	        for (;;)
            	        {
            	            int alt151=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMENT_SYMBOL:
            	            case KEY_BLOCK_SIZE_SYMBOL:
            	            	{
            	            		alt151=1;
            	            	}
            	                break;

            	            }

            	            switch (alt151)
            	            {
            	        	case 1:
            	        	    // MySQL.g:789:64: spatial_index_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_spatial_index_option_in_create_index_tail2716);
            	        	        spatial_index_option487=spatial_index_option(ctx);

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

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

            	        	    }
            	        	    break;

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


            	        // MySQL.g:789:86: ( index_lock_algorithm )?
            	        {
            	            int alt152=2;
            	            {
            	                int LA152_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA152_0 == ALGORITHM_SYMBOL || LA152_0 == LOCK_SYMBOL))
            	                {
            	                    alt152=1;
            	                }
            	            }
            	            switch (alt152)
            	            {
            	        	case 1:
            	        	    // MySQL.g:789:86: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_create_index_tail2719);
            	        	        index_lock_algorithm488=index_lock_algorithm(ctx);

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

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

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_index_tailEx; /* Prevent compiler warnings */
    rulecreate_index_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 create_index_tail */

/**
 * $ANTLR start create_index_target
 * MySQL.g:793:1: create_index_target : ON_SYMBOL ^ table_ref index_columns ;
 */
static MySQLParser_create_index_target_return
create_index_target(pMySQLParser ctx)
{
    MySQLParser_create_index_target_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ON_SYMBOL489;
    MySQLParser_table_ref_return table_ref490;
    #undef	RETURN_TYPE_table_ref490
    #define	RETURN_TYPE_table_ref490 MySQLParser_table_ref_return

    MySQLParser_index_columns_return index_columns491;
    #undef	RETURN_TYPE_index_columns491
    #define	RETURN_TYPE_index_columns491 MySQLParser_index_columns_return

    pANTLR3_BASE_TREE ON_SYMBOL489_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL489       = NULL;
    table_ref490.tree = NULL;

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


    ON_SYMBOL489_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:793:20: ( ON_SYMBOL ^ table_ref index_columns )
        // MySQL.g:794:2: ON_SYMBOL ^ table_ref index_columns
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ON_SYMBOL489 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_index_target2732);
            if  (HASEXCEPTION())
            {
                goto rulecreate_index_targetEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL489_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL489))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ON_SYMBOL489_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_create_index_target2735);
            table_ref490=table_ref(ctx);

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

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

            FOLLOWPUSH(FOLLOW_index_columns_in_create_index_target2737);
            index_columns491=index_columns(ctx);

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

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

        }

    }

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


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_target */

/**
 * $ANTLR start create_logfile_group
 * MySQL.g:797:1: create_logfile_group : CREATE_SYMBOL ^ create_logfile_group_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
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    CREATE_SYMBOL492;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL494;
    pANTLR3_COMMON_TOKEN    EOF495;
    MySQLParser_create_logfile_group_tail_return create_logfile_group_tail493;
    #undef	RETURN_TYPE_create_logfile_group_tail493
    #define	RETURN_TYPE_create_logfile_group_tail493 MySQLParser_create_logfile_group_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL492_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL494_tree;
    pANTLR3_BASE_TREE EOF495_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL492       = NULL;
    SEMICOLON_SYMBOL494       = NULL;
    EOF495       = NULL;
    create_logfile_group_tail493.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL492_tree   = NULL;
    SEMICOLON_SYMBOL494_tree   = NULL;
    EOF495_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:797:21: ( CREATE_SYMBOL ^ create_logfile_group_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:798:2: CREATE_SYMBOL ^ create_logfile_group_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL492 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_logfile_group2747);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL492_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL492))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL492_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_logfile_group_tail_in_create_logfile_group2750);
            create_logfile_group_tail493=create_logfile_group_tail(ctx);

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

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

            // MySQL.g:798:43: ( SEMICOLON_SYMBOL )?
            {
                int alt154=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt154=1;
                    	}
                        break;
                }

                switch (alt154)
                {
            	case 1:
            	    // MySQL.g:798:43: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL494 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_logfile_group2752);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_logfile_groupEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

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

            	    }
            	    break;

                }
            }

            EOF495 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_logfile_group2755);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_groupEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF495_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF495));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF495_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_logfile_group_tail
 * MySQL.g:801:1: create_logfile_group_tail : LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_name ADD_SYMBOL ( UNDOFILE_SYMBOL | REDOFILE_SYMBOL ) string_literal ( logfile_group_options )? ;
 */
static MySQLParser_create_logfile_group_tail_return
create_logfile_group_tail(pMySQLParser ctx)
{
    MySQLParser_create_logfile_group_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL496;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL497;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL499;
    pANTLR3_COMMON_TOKEN    set500;
    MySQLParser_logfile_group_name_return logfile_group_name498;
    #undef	RETURN_TYPE_logfile_group_name498
    #define	RETURN_TYPE_logfile_group_name498 MySQLParser_logfile_group_name_return

    MySQLParser_string_literal_return string_literal501;
    #undef	RETURN_TYPE_string_literal501
    #define	RETURN_TYPE_string_literal501 MySQLParser_string_literal_return

    MySQLParser_logfile_group_options_return logfile_group_options502;
    #undef	RETURN_TYPE_logfile_group_options502
    #define	RETURN_TYPE_logfile_group_options502 MySQLParser_logfile_group_options_return

    pANTLR3_BASE_TREE LOGFILE_SYMBOL496_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL497_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL499_tree;
    pANTLR3_BASE_TREE set500_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOGFILE_SYMBOL496       = NULL;
    GROUP_SYMBOL497       = NULL;
    ADD_SYMBOL499       = NULL;
    set500       = NULL;
    logfile_group_name498.tree = NULL;

    string_literal501.tree = NULL;

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


    LOGFILE_SYMBOL496_tree   = NULL;
    GROUP_SYMBOL497_tree   = NULL;
    ADD_SYMBOL499_tree   = NULL;
    set500_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:801:26: ( LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_name ADD_SYMBOL ( UNDOFILE_SYMBOL | REDOFILE_SYMBOL ) string_literal ( logfile_group_options )? )
        // MySQL.g:802:2: LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_name ADD_SYMBOL ( UNDOFILE_SYMBOL | REDOFILE_SYMBOL ) string_literal ( logfile_group_options )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOGFILE_SYMBOL496 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_create_logfile_group_tail2764);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_group_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            GROUP_SYMBOL497 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_create_logfile_group_tail2766);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_group_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            FOLLOWPUSH(FOLLOW_logfile_group_name_in_create_logfile_group_tail2768);
            logfile_group_name498=logfile_group_name(ctx);

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

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

            ADD_SYMBOL499 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_create_logfile_group_tail2770);
            if  (HASEXCEPTION())
            {
                goto rulecreate_logfile_group_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

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

            set500=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == REDOFILE_SYMBOL || LA(1) == UNDOFILE_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_logfile_group_tailEx;
            }


            FOLLOWPUSH(FOLLOW_string_literal_in_create_logfile_group_tail2780);
            string_literal501=string_literal(ctx);

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

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

            // MySQL.g:803:3: ( logfile_group_options )?
            {
                int alt155=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    case ENGINE_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case STORAGE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case WAIT_SYMBOL:
                    	{
                    		alt155=1;
                    	}
                        break;
                }

                switch (alt155)
                {
            	case 1:
            	    // MySQL.g:803:3: logfile_group_options
            	    {
            	        FOLLOWPUSH(FOLLOW_logfile_group_options_in_create_logfile_group_tail2784);
            	        logfile_group_options502=logfile_group_options(ctx);

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

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

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_logfile_group_tailEx; /* Prevent compiler warnings */
    rulecreate_logfile_group_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 create_logfile_group_tail */

/**
 * $ANTLR start logfile_group_options
 * MySQL.g:806:1: logfile_group_options : ( logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* ) -> ^( LOGFILE_GROUP_OPTIONS_TOKEN logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* ) ;
 */
static MySQLParser_logfile_group_options_return
logfile_group_options(pMySQLParser ctx)
{
    MySQLParser_logfile_group_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL504;
    MySQLParser_logfile_group_option_return logfile_group_option503;
    #undef	RETURN_TYPE_logfile_group_option503
    #define	RETURN_TYPE_logfile_group_option503 MySQLParser_logfile_group_option_return

    MySQLParser_logfile_group_option_return logfile_group_option505;
    #undef	RETURN_TYPE_logfile_group_option505
    #define	RETURN_TYPE_logfile_group_option505 MySQLParser_logfile_group_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL504_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_logfile_group_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL504       = NULL;
    logfile_group_option503.tree = NULL;

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


    COMMA_SYMBOL504_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_logfile_group_option   = NULL;
    #define CREATE_stream_logfile_group_option  if (stream_logfile_group_option == NULL) {stream_logfile_group_option = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule logfile_group_option"); }

    retval.tree  = NULL;

    {
        // MySQL.g:806:22: ( ( logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* ) -> ^( LOGFILE_GROUP_OPTIONS_TOKEN logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* ) )
        // MySQL.g:807:2: ( logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* )
        {
            // MySQL.g:807:2: ( logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* )
            // MySQL.g:807:3: logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )*
            {
                FOLLOWPUSH(FOLLOW_logfile_group_option_in_logfile_group_options2795);
                logfile_group_option503=logfile_group_option(ctx);

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

                if ( BACKTRACKING==0 ) { CREATE_stream_logfile_group_option; stream_logfile_group_option->add(stream_logfile_group_option, logfile_group_option503.tree, NULL); }

                // MySQL.g:807:24: ( ( COMMA_SYMBOL )? logfile_group_option )*

                for (;;)
                {
                    int alt157=2;
                    switch ( LA(1) )
                    {
                    case COMMENT_SYMBOL:
                    case ENGINE_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case REDO_BUFFER_SIZE_SYMBOL:
                    case STORAGE_SYMBOL:
                    case UNDO_BUFFER_SIZE_SYMBOL:
                    case WAIT_SYMBOL:
                    case COMMA_SYMBOL:
                    	{
                    		alt157=1;
                    	}
                        break;

                    }

                    switch (alt157)
                    {
                	case 1:
                	    // MySQL.g:807:25: ( COMMA_SYMBOL )? logfile_group_option
                	    {
                	        // MySQL.g:807:25: ( COMMA_SYMBOL )?
                	        {
                	            int alt156=2;
                	            switch ( LA(1) )
                	            {
                	                case COMMA_SYMBOL:
                	                	{
                	                		alt156=1;
                	                	}
                	                    break;
                	            }

                	            switch (alt156)
                	            {
                	        	case 1:
                	        	    // MySQL.g:807:25: COMMA_SYMBOL
                	        	    {
                	        	        COMMA_SYMBOL504 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_logfile_group_options2798);
                	        	        if  (HASEXCEPTION())
                	        	        {
                	        	            goto rulelogfile_group_optionsEx;
                	        	        }
                	        	        if (HASFAILED())
                	        	        {
                	        	            return retval;
                	        	        }
                	        	         
                	        	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL504, NULL); }


                	        	    }
                	        	    break;

                	            }
                	        }

                	        FOLLOWPUSH(FOLLOW_logfile_group_option_in_logfile_group_options2801);
                	        logfile_group_option505=logfile_group_option(ctx);

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

                	        if ( BACKTRACKING==0 ) { CREATE_stream_logfile_group_option; stream_logfile_group_option->add(stream_logfile_group_option, logfile_group_option505.tree, NULL); }

                	    }
                	    break;

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


            }


            /* AST REWRITE
             * elements          : COMMA_SYMBOL, logfile_group_option, logfile_group_option
             * 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;
            	// 808:3: -> ^( LOGFILE_GROUP_OPTIONS_TOKEN logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* )
            	{
            	    // MySQL.g:808:6: ^( LOGFILE_GROUP_OPTIONS_TOKEN logfile_group_option ( ( COMMA_SYMBOL )? logfile_group_option )* )
            	    {
            	        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, LOGFILE_GROUP_OPTIONS_TOKEN, (pANTLR3_UINT8)"LOGFILE_GROUP_OPTIONS_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_logfile_group_option == NULL ? NULL : stream_logfile_group_option->nextTree(stream_logfile_group_option));

            	        // MySQL.g:808:57: ( ( COMMA_SYMBOL )? logfile_group_option )*
            	        {
            	        	while ( (stream_logfile_group_option != NULL && stream_logfile_group_option->hasNext(stream_logfile_group_option))  )
            	        	{
            	        		// MySQL.g:808:58: ( COMMA_SYMBOL )?
            	        		{
            	        			if ( (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)
            	        				);

            	        			}
            	        			if ( stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);

            	        		}

            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_logfile_group_option == NULL ? NULL : stream_logfile_group_option->nextTree(stream_logfile_group_option));

            	        	}
            	        	if (stream_logfile_group_option != NULL) stream_logfile_group_option->reset(stream_logfile_group_option);

            	        }

            	        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 rulelogfile_group_optionsEx; /* Prevent compiler warnings */
    rulelogfile_group_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 (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_logfile_group_option != NULL) stream_logfile_group_option->free(stream_logfile_group_option);
    }


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

/**
 * $ANTLR start logfile_group_option
 * MySQL.g:811:1: logfile_group_option : ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | ( UNDO_BUFFER_SIZE_SYMBOL | REDO_BUFFER_SIZE_SYMBOL ) ( EQUAL_OPERATOR )? size_number | NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number | ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) | COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref );
 */
static MySQLParser_logfile_group_option_return
logfile_group_option(pMySQLParser ctx)
{
    MySQLParser_logfile_group_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL506;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR507;
    pANTLR3_COMMON_TOKEN    set509;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR510;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL512;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR513;
    pANTLR3_COMMON_TOKEN    set515;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL516;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR517;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL519;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL520;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR521;
    MySQLParser_size_number_return size_number508;
    #undef	RETURN_TYPE_size_number508
    #define	RETURN_TYPE_size_number508 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number511;
    #undef	RETURN_TYPE_size_number511
    #define	RETURN_TYPE_size_number511 MySQLParser_size_number_return

    MySQLParser_real_ulong_number_return real_ulong_number514;
    #undef	RETURN_TYPE_real_ulong_number514
    #define	RETURN_TYPE_real_ulong_number514 MySQLParser_real_ulong_number_return

    MySQLParser_string_literal_return string_literal518;
    #undef	RETURN_TYPE_string_literal518
    #define	RETURN_TYPE_string_literal518 MySQLParser_string_literal_return

    MySQLParser_engine_ref_return engine_ref522;
    #undef	RETURN_TYPE_engine_ref522
    #define	RETURN_TYPE_engine_ref522 MySQLParser_engine_ref_return

    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL506_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR507_tree;
    pANTLR3_BASE_TREE set509_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR510_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL512_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR513_tree;
    pANTLR3_BASE_TREE set515_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL516_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR517_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL519_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL520_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR521_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INITIAL_SIZE_SYMBOL506       = NULL;
    EQUAL_OPERATOR507       = NULL;
    set509       = NULL;
    EQUAL_OPERATOR510       = NULL;
    NODEGROUP_SYMBOL512       = NULL;
    EQUAL_OPERATOR513       = NULL;
    set515       = NULL;
    COMMENT_SYMBOL516       = NULL;
    EQUAL_OPERATOR517       = NULL;
    STORAGE_SYMBOL519       = NULL;
    ENGINE_SYMBOL520       = NULL;
    EQUAL_OPERATOR521       = NULL;
    size_number508.tree = NULL;

    size_number511.tree = NULL;

    real_ulong_number514.tree = NULL;

    string_literal518.tree = NULL;

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


    INITIAL_SIZE_SYMBOL506_tree   = NULL;
    EQUAL_OPERATOR507_tree   = NULL;
    set509_tree   = NULL;
    EQUAL_OPERATOR510_tree   = NULL;
    NODEGROUP_SYMBOL512_tree   = NULL;
    EQUAL_OPERATOR513_tree   = NULL;
    set515_tree   = NULL;
    COMMENT_SYMBOL516_tree   = NULL;
    EQUAL_OPERATOR517_tree   = NULL;
    STORAGE_SYMBOL519_tree   = NULL;
    ENGINE_SYMBOL520_tree   = NULL;
    EQUAL_OPERATOR521_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:811:21: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | ( UNDO_BUFFER_SIZE_SYMBOL | REDO_BUFFER_SIZE_SYMBOL ) ( EQUAL_OPERATOR )? size_number | NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number | ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) | COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref )

            ANTLR3_UINT32 alt164;

            alt164=6;

            switch ( LA(1) )
            {
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt164=1;
            	}
                break;
            case REDO_BUFFER_SIZE_SYMBOL:
            case UNDO_BUFFER_SIZE_SYMBOL:
            	{
            		alt164=2;
            	}
                break;
            case NODEGROUP_SYMBOL:
            	{
            		alt164=3;
            	}
                break;
            case NO_WAIT_SYMBOL:
            case WAIT_SYMBOL:
            	{
            		alt164=4;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt164=5;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt164=6;
            	}
                break;

            default:
                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 rulelogfile_group_optionEx;

            }

            switch (alt164)
            {
        	case 1:
        	    // MySQL.g:812:2: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL506 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_logfile_group_option2831);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

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

        	        // MySQL.g:812:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt158=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt158=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt158)
        	            {
        	        	case 1:
        	        	    // MySQL.g:812:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR507 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2833);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

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

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_logfile_group_option2836);
        	        size_number508=size_number(ctx);

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

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

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:813:4: ( UNDO_BUFFER_SIZE_SYMBOL | REDO_BUFFER_SIZE_SYMBOL ) ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set509=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == REDO_BUFFER_SIZE_SYMBOL || LA(1) == UNDO_BUFFER_SIZE_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 rulelogfile_group_optionEx;
        	        }


        	        // MySQL.g:813:56: ( EQUAL_OPERATOR )?
        	        {
        	            int alt159=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt159=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt159)
        	            {
        	        	case 1:
        	        	    // MySQL.g:813:56: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR510 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2849);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR510_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR510));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR510_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_logfile_group_option2852);
        	        size_number511=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number511.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:814:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NODEGROUP_SYMBOL512 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_logfile_group_option2857);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NODEGROUP_SYMBOL512_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL512));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL512_tree);
        	        }

        	        // MySQL.g:814:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt160=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt160=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt160)
        	            {
        	        	case 1:
        	        	    // MySQL.g:814:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR513 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2859);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR513_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR513));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR513_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_logfile_group_option2862);
        	        real_ulong_number514=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number514.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:815:4: ( WAIT_SYMBOL | NO_WAIT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set515=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == NO_WAIT_SYMBOL || LA(1) == WAIT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set515))
        	            );
        	            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 rulelogfile_group_optionEx;
        	        }


        	    }
        	    break;
        	case 5:
        	    // MySQL.g:816:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL516 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_logfile_group_option2878);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL516_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL516));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL516_tree);
        	        }

        	        // MySQL.g:816:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt161=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt161=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt161)
        	            {
        	        	case 1:
        	        	    // MySQL.g:816:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR517 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2880);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR517_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR517));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR517_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_logfile_group_option2883);
        	        string_literal518=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal518.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:817:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:817:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt162=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt162=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt162)
        	            {
        	        	case 1:
        	        	    // MySQL.g:817:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL519 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_logfile_group_option2888);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STORAGE_SYMBOL519_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL519));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL519_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL520 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_logfile_group_option2891);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL520_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL520));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL520_tree);
        	        }

        	        // MySQL.g:817:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt163=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt163=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt163)
        	            {
        	        	case 1:
        	        	    // MySQL.g:817:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR521 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_logfile_group_option2893);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelogfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR521_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR521));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR521_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_logfile_group_option2896);
        	        engine_ref522=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref522.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulelogfile_group_optionEx; /* Prevent compiler warnings */
    rulelogfile_group_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 logfile_group_option */

/**
 * $ANTLR start create_server
 * MySQL.g:820:1: create_server : CREATE_SYMBOL ^ create_server_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_server_return
create_server(pMySQLParser ctx)
{
    MySQLParser_create_server_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL523;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL525;
    pANTLR3_COMMON_TOKEN    EOF526;
    MySQLParser_create_server_tail_return create_server_tail524;
    #undef	RETURN_TYPE_create_server_tail524
    #define	RETURN_TYPE_create_server_tail524 MySQLParser_create_server_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL523_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL525_tree;
    pANTLR3_BASE_TREE EOF526_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL523       = NULL;
    SEMICOLON_SYMBOL525       = NULL;
    EOF526       = NULL;
    create_server_tail524.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL523_tree   = NULL;
    SEMICOLON_SYMBOL525_tree   = NULL;
    EOF526_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:820:14: ( CREATE_SYMBOL ^ create_server_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:821:2: CREATE_SYMBOL ^ create_server_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL523 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_server2907);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL523_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL523))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL523_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_server_tail_in_create_server2910);
            create_server_tail524=create_server_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_server_tail524.tree);

            // MySQL.g:821:36: ( SEMICOLON_SYMBOL )?
            {
                int alt165=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt165=1;
                    	}
                        break;
                }

                switch (alt165)
                {
            	case 1:
            	    // MySQL.g:821:36: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL525 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_server2912);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_serverEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL525_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL525));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL525_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF526 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_server2915);
            if  (HASEXCEPTION())
            {
                goto rulecreate_serverEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF526_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF526));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF526_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_server_tail
 * MySQL.g:824:1: create_server_tail : SERVER_SYMBOL server_name FOREIGN_SYMBOL DATA_SYMBOL WRAPPER_SYMBOL text_or_identifier server_options ;
 */
static MySQLParser_create_server_tail_return
create_server_tail(pMySQLParser ctx)
{
    MySQLParser_create_server_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SERVER_SYMBOL527;
    pANTLR3_COMMON_TOKEN    FOREIGN_SYMBOL529;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL530;
    pANTLR3_COMMON_TOKEN    WRAPPER_SYMBOL531;
    MySQLParser_server_name_return server_name528;
    #undef	RETURN_TYPE_server_name528
    #define	RETURN_TYPE_server_name528 MySQLParser_server_name_return

    MySQLParser_text_or_identifier_return text_or_identifier532;
    #undef	RETURN_TYPE_text_or_identifier532
    #define	RETURN_TYPE_text_or_identifier532 MySQLParser_text_or_identifier_return

    MySQLParser_server_options_return server_options533;
    #undef	RETURN_TYPE_server_options533
    #define	RETURN_TYPE_server_options533 MySQLParser_server_options_return

    pANTLR3_BASE_TREE SERVER_SYMBOL527_tree;
    pANTLR3_BASE_TREE FOREIGN_SYMBOL529_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL530_tree;
    pANTLR3_BASE_TREE WRAPPER_SYMBOL531_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SERVER_SYMBOL527       = NULL;
    FOREIGN_SYMBOL529       = NULL;
    DATA_SYMBOL530       = NULL;
    WRAPPER_SYMBOL531       = NULL;
    server_name528.tree = NULL;

    text_or_identifier532.tree = NULL;

    server_options533.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SERVER_SYMBOL527_tree   = NULL;
    FOREIGN_SYMBOL529_tree   = NULL;
    DATA_SYMBOL530_tree   = NULL;
    WRAPPER_SYMBOL531_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:824:19: ( SERVER_SYMBOL server_name FOREIGN_SYMBOL DATA_SYMBOL WRAPPER_SYMBOL text_or_identifier server_options )
        // MySQL.g:825:2: SERVER_SYMBOL server_name FOREIGN_SYMBOL DATA_SYMBOL WRAPPER_SYMBOL text_or_identifier server_options
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SERVER_SYMBOL527 = (pANTLR3_COMMON_TOKEN) MATCHT(SERVER_SYMBOL, &FOLLOW_SERVER_SYMBOL_in_create_server_tail2924);
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SERVER_SYMBOL527_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERVER_SYMBOL527));
            ADAPTOR->addChild(ADAPTOR, root_0, SERVER_SYMBOL527_tree);
            }

            FOLLOWPUSH(FOLLOW_server_name_in_create_server_tail2926);
            server_name528=server_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_name528.tree);

            FOREIGN_SYMBOL529 = (pANTLR3_COMMON_TOKEN) MATCHT(FOREIGN_SYMBOL, &FOLLOW_FOREIGN_SYMBOL_in_create_server_tail2930);
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOREIGN_SYMBOL529_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOREIGN_SYMBOL529));
            ADAPTOR->addChild(ADAPTOR, root_0, FOREIGN_SYMBOL529_tree);
            }

            DATA_SYMBOL530 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_create_server_tail2932);
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATA_SYMBOL530_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL530));
            ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL530_tree);
            }

            WRAPPER_SYMBOL531 = (pANTLR3_COMMON_TOKEN) MATCHT(WRAPPER_SYMBOL, &FOLLOW_WRAPPER_SYMBOL_in_create_server_tail2934);
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WRAPPER_SYMBOL531_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WRAPPER_SYMBOL531));
            ADAPTOR->addChild(ADAPTOR, root_0, WRAPPER_SYMBOL531_tree);
            }

            FOLLOWPUSH(FOLLOW_text_or_identifier_in_create_server_tail2936);
            text_or_identifier532=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier532.tree);

            FOLLOWPUSH(FOLLOW_server_options_in_create_server_tail2938);
            server_options533=server_options(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_server_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_options533.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_server_tailEx; /* Prevent compiler warnings */
    rulecreate_server_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 create_server_tail */

/**
 * $ANTLR start server_options
 * MySQL.g:829:1: server_options : OPTIONS_SYMBOL ^ OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_server_options_return
server_options(pMySQLParser ctx)
{
    MySQLParser_server_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPTIONS_SYMBOL534;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL535;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL537;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL539;
    MySQLParser_server_option_return server_option536;
    #undef	RETURN_TYPE_server_option536
    #define	RETURN_TYPE_server_option536 MySQLParser_server_option_return

    MySQLParser_server_option_return server_option538;
    #undef	RETURN_TYPE_server_option538
    #define	RETURN_TYPE_server_option538 MySQLParser_server_option_return

    pANTLR3_BASE_TREE OPTIONS_SYMBOL534_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL535_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL537_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL539_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPTIONS_SYMBOL534       = NULL;
    OPEN_PAR_SYMBOL535       = NULL;
    COMMA_SYMBOL537       = NULL;
    CLOSE_PAR_SYMBOL539       = NULL;
    server_option536.tree = NULL;

    server_option538.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPTIONS_SYMBOL534_tree   = NULL;
    OPEN_PAR_SYMBOL535_tree   = NULL;
    COMMA_SYMBOL537_tree   = NULL;
    CLOSE_PAR_SYMBOL539_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:829:15: ( OPTIONS_SYMBOL ^ OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL )
        // MySQL.g:830:2: OPTIONS_SYMBOL ^ OPEN_PAR_SYMBOL server_option ( COMMA_SYMBOL server_option )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPTIONS_SYMBOL534 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIONS_SYMBOL, &FOLLOW_OPTIONS_SYMBOL_in_server_options2947);
            if  (HASEXCEPTION())
            {
                goto ruleserver_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPTIONS_SYMBOL534_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIONS_SYMBOL534))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, OPTIONS_SYMBOL534_tree, root_0));
            }

            OPEN_PAR_SYMBOL535 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_server_options2950);
            if  (HASEXCEPTION())
            {
                goto ruleserver_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL535_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL535));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL535_tree);
            }

            FOLLOWPUSH(FOLLOW_server_option_in_server_options2952);
            server_option536=server_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleserver_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_option536.tree);

            // MySQL.g:830:48: ( COMMA_SYMBOL server_option )*

            for (;;)
            {
                int alt166=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt166=1;
                	}
                    break;

                }

                switch (alt166)
                {
            	case 1:
            	    // MySQL.g:830:49: COMMA_SYMBOL server_option
            	    {
            	        COMMA_SYMBOL537 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_server_options2955);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleserver_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL537_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL537));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL537_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_server_option_in_server_options2957);
            	        server_option538=server_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleserver_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_option538.tree);

            	    }
            	    break;

            	default:
            	    goto loop166;	/* break out of the loop */
            	    break;
                }
            }
            loop166: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL539 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_server_options2961);
            if  (HASEXCEPTION())
            {
                goto ruleserver_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL539_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL539));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL539_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleserver_optionsEx; /* Prevent compiler warnings */
    ruleserver_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 server_options */

/**
 * $ANTLR start server_option
 * MySQL.g:834: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 ulong_number );
 */
static MySQLParser_server_option_return
server_option(pMySQLParser ctx)
{
    MySQLParser_server_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    HOST_SYMBOL540;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL542;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL544;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL546;
    pANTLR3_COMMON_TOKEN    SOCKET_SYMBOL548;
    pANTLR3_COMMON_TOKEN    OWNER_SYMBOL550;
    pANTLR3_COMMON_TOKEN    PORT_SYMBOL552;
    MySQLParser_string_literal_return string_literal541;
    #undef	RETURN_TYPE_string_literal541
    #define	RETURN_TYPE_string_literal541 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal543;
    #undef	RETURN_TYPE_string_literal543
    #define	RETURN_TYPE_string_literal543 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal545;
    #undef	RETURN_TYPE_string_literal545
    #define	RETURN_TYPE_string_literal545 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal547;
    #undef	RETURN_TYPE_string_literal547
    #define	RETURN_TYPE_string_literal547 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal549;
    #undef	RETURN_TYPE_string_literal549
    #define	RETURN_TYPE_string_literal549 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal551;
    #undef	RETURN_TYPE_string_literal551
    #define	RETURN_TYPE_string_literal551 MySQLParser_string_literal_return

    MySQLParser_ulong_number_return ulong_number553;
    #undef	RETURN_TYPE_ulong_number553
    #define	RETURN_TYPE_ulong_number553 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE HOST_SYMBOL540_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL542_tree;
    pANTLR3_BASE_TREE USER_SYMBOL544_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL546_tree;
    pANTLR3_BASE_TREE SOCKET_SYMBOL548_tree;
    pANTLR3_BASE_TREE OWNER_SYMBOL550_tree;
    pANTLR3_BASE_TREE PORT_SYMBOL552_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HOST_SYMBOL540       = NULL;
    DATABASE_SYMBOL542       = NULL;
    USER_SYMBOL544       = NULL;
    PASSWORD_SYMBOL546       = NULL;
    SOCKET_SYMBOL548       = NULL;
    OWNER_SYMBOL550       = NULL;
    PORT_SYMBOL552       = NULL;
    string_literal541.tree = NULL;

    string_literal543.tree = NULL;

    string_literal545.tree = NULL;

    string_literal547.tree = NULL;

    string_literal549.tree = NULL;

    string_literal551.tree = NULL;

    ulong_number553.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HOST_SYMBOL540_tree   = NULL;
    DATABASE_SYMBOL542_tree   = NULL;
    USER_SYMBOL544_tree   = NULL;
    PASSWORD_SYMBOL546_tree   = NULL;
    SOCKET_SYMBOL548_tree   = NULL;
    OWNER_SYMBOL550_tree   = NULL;
    PORT_SYMBOL552_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:834: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 ulong_number )

            ANTLR3_UINT32 alt167;

            alt167=7;

            switch ( LA(1) )
            {
            case HOST_SYMBOL:
            	{
            		alt167=1;
            	}
                break;
            case DATABASE_SYMBOL:
            	{
            		alt167=2;
            	}
                break;
            case USER_SYMBOL:
            	{
            		alt167=3;
            	}
                break;
            case PASSWORD_SYMBOL:
            	{
            		alt167=4;
            	}
                break;
            case SOCKET_SYMBOL:
            	{
            		alt167=5;
            	}
                break;
            case OWNER_SYMBOL:
            	{
            		alt167=6;
            	}
                break;
            case PORT_SYMBOL:
            	{
            		alt167=7;
            	}
                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 ruleserver_optionEx;

            }

            switch (alt167)
            {
        	case 1:
        	    // MySQL.g:835:2: HOST_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOST_SYMBOL540 = (pANTLR3_COMMON_TOKEN) MATCHT(HOST_SYMBOL, &FOLLOW_HOST_SYMBOL_in_server_option2971);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOST_SYMBOL540_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOST_SYMBOL540));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOST_SYMBOL540_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option2973);
        	        string_literal541=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal541.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:836:4: DATABASE_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATABASE_SYMBOL542 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_server_option2978);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASE_SYMBOL542_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL542));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL542_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option2980);
        	        string_literal543=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal543.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:837:4: USER_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_SYMBOL544 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_server_option2985);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_SYMBOL544_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL544));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL544_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option2987);
        	        string_literal545=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal545.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:838:4: PASSWORD_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL546 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_server_option2992);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL546_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL546));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL546_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option2994);
        	        string_literal547=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal547.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:839:4: SOCKET_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SOCKET_SYMBOL548 = (pANTLR3_COMMON_TOKEN) MATCHT(SOCKET_SYMBOL, &FOLLOW_SOCKET_SYMBOL_in_server_option2999);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SOCKET_SYMBOL548_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOCKET_SYMBOL548));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SOCKET_SYMBOL548_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option3001);
        	        string_literal549=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal549.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:840:4: OWNER_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OWNER_SYMBOL550 = (pANTLR3_COMMON_TOKEN) MATCHT(OWNER_SYMBOL, &FOLLOW_OWNER_SYMBOL_in_server_option3006);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OWNER_SYMBOL550_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OWNER_SYMBOL550));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OWNER_SYMBOL550_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_server_option3008);
        	        string_literal551=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal551.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:841:4: PORT_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PORT_SYMBOL552 = (pANTLR3_COMMON_TOKEN) MATCHT(PORT_SYMBOL, &FOLLOW_PORT_SYMBOL_in_server_option3013);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PORT_SYMBOL552_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PORT_SYMBOL552));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PORT_SYMBOL552_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_server_option3015);
        	        ulong_number553=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleserver_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number553.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 create_table
 * MySQL.g:844:1: create_table : CREATE_SYMBOL ^ create_table_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_table_return
create_table(pMySQLParser ctx)
{
    MySQLParser_create_table_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL554;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL556;
    pANTLR3_COMMON_TOKEN    EOF557;
    MySQLParser_create_table_tail_return create_table_tail555;
    #undef	RETURN_TYPE_create_table_tail555
    #define	RETURN_TYPE_create_table_tail555 MySQLParser_create_table_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL554_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL556_tree;
    pANTLR3_BASE_TREE EOF557_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL554       = NULL;
    SEMICOLON_SYMBOL556       = NULL;
    EOF557       = NULL;
    create_table_tail555.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL554_tree   = NULL;
    SEMICOLON_SYMBOL556_tree   = NULL;
    EOF557_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:844:13: ( CREATE_SYMBOL ^ create_table_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:845:2: CREATE_SYMBOL ^ create_table_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL554 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_table3025);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL554_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL554))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL554_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_table_tail_in_create_table3028);
            create_table_tail555=create_table_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_tail555.tree);

            // MySQL.g:845:35: ( SEMICOLON_SYMBOL )?
            {
                int alt168=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt168=1;
                    	}
                        break;
                }

                switch (alt168)
                {
            	case 1:
            	    // MySQL.g:845:35: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL556 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_table3030);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL556));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL556_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF557 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_table3033);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF557_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF557));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF557_tree);
            }

        }

    }

    // 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_tail
 * MySQL.g:848:1: create_table_tail : ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( if_not_exists )? table_name ( OPEN_PAR_SYMBOL ( create_field_list 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_ref | OPEN_PAR_SYMBOL LIKE_SYMBOL table_ref CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_create_table_tail_return
create_table_tail(pMySQLParser ctx)
{
    MySQLParser_create_table_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TEMPORARY_SYMBOL558;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL559;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL562;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL564;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL570;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL575;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL577;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL578;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL580;
    MySQLParser_if_not_exists_return if_not_exists560;
    #undef	RETURN_TYPE_if_not_exists560
    #define	RETURN_TYPE_if_not_exists560 MySQLParser_if_not_exists_return

    MySQLParser_table_name_return table_name561;
    #undef	RETURN_TYPE_table_name561
    #define	RETURN_TYPE_table_name561 MySQLParser_table_name_return

    MySQLParser_create_field_list_return create_field_list563;
    #undef	RETURN_TYPE_create_field_list563
    #define	RETURN_TYPE_create_field_list563 MySQLParser_create_field_list_return

    MySQLParser_create_table_options_return create_table_options565;
    #undef	RETURN_TYPE_create_table_options565
    #define	RETURN_TYPE_create_table_options565 MySQLParser_create_table_options_return

    MySQLParser_partitioning_return partitioning566;
    #undef	RETURN_TYPE_partitioning566
    #define	RETURN_TYPE_partitioning566 MySQLParser_partitioning_return

    MySQLParser_table_creation_source_return table_creation_source567;
    #undef	RETURN_TYPE_table_creation_source567
    #define	RETURN_TYPE_table_creation_source567 MySQLParser_table_creation_source_return

    MySQLParser_partitioning_return partitioning568;
    #undef	RETURN_TYPE_partitioning568
    #define	RETURN_TYPE_partitioning568 MySQLParser_partitioning_return

    MySQLParser_create_select_return create_select569;
    #undef	RETURN_TYPE_create_select569
    #define	RETURN_TYPE_create_select569 MySQLParser_create_select_return

    MySQLParser_union_clause_return union_clause571;
    #undef	RETURN_TYPE_union_clause571
    #define	RETURN_TYPE_union_clause571 MySQLParser_union_clause_return

    MySQLParser_create_table_options_return create_table_options572;
    #undef	RETURN_TYPE_create_table_options572
    #define	RETURN_TYPE_create_table_options572 MySQLParser_create_table_options_return

    MySQLParser_partitioning_return partitioning573;
    #undef	RETURN_TYPE_partitioning573
    #define	RETURN_TYPE_partitioning573 MySQLParser_partitioning_return

    MySQLParser_table_creation_source_return table_creation_source574;
    #undef	RETURN_TYPE_table_creation_source574
    #define	RETURN_TYPE_table_creation_source574 MySQLParser_table_creation_source_return

    MySQLParser_table_ref_return table_ref576;
    #undef	RETURN_TYPE_table_ref576
    #define	RETURN_TYPE_table_ref576 MySQLParser_table_ref_return

    MySQLParser_table_ref_return table_ref579;
    #undef	RETURN_TYPE_table_ref579
    #define	RETURN_TYPE_table_ref579 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE TEMPORARY_SYMBOL558_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL559_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL562_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL564_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL570_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL575_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL577_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL578_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL580_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TEMPORARY_SYMBOL558       = NULL;
    TABLE_SYMBOL559       = NULL;
    OPEN_PAR_SYMBOL562       = NULL;
    CLOSE_PAR_SYMBOL564       = NULL;
    CLOSE_PAR_SYMBOL570       = NULL;
    LIKE_SYMBOL575       = NULL;
    OPEN_PAR_SYMBOL577       = NULL;
    LIKE_SYMBOL578       = NULL;
    CLOSE_PAR_SYMBOL580       = NULL;
    if_not_exists560.tree = NULL;

    table_name561.tree = NULL;

    create_field_list563.tree = NULL;

    create_table_options565.tree = NULL;

    partitioning566.tree = NULL;

    table_creation_source567.tree = NULL;

    partitioning568.tree = NULL;

    create_select569.tree = NULL;

    union_clause571.tree = NULL;

    create_table_options572.tree = NULL;

    partitioning573.tree = NULL;

    table_creation_source574.tree = NULL;

    table_ref576.tree = NULL;

    table_ref579.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TEMPORARY_SYMBOL558_tree   = NULL;
    TABLE_SYMBOL559_tree   = NULL;
    OPEN_PAR_SYMBOL562_tree   = NULL;
    CLOSE_PAR_SYMBOL564_tree   = NULL;
    CLOSE_PAR_SYMBOL570_tree   = NULL;
    LIKE_SYMBOL575_tree   = NULL;
    OPEN_PAR_SYMBOL577_tree   = NULL;
    LIKE_SYMBOL578_tree   = NULL;
    CLOSE_PAR_SYMBOL580_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:848:18: ( ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( if_not_exists )? table_name ( OPEN_PAR_SYMBOL ( create_field_list 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_ref | OPEN_PAR_SYMBOL LIKE_SYMBOL table_ref CLOSE_PAR_SYMBOL ) )
        // MySQL.g:849:2: ( TEMPORARY_SYMBOL )? TABLE_SYMBOL ( if_not_exists )? table_name ( OPEN_PAR_SYMBOL ( create_field_list 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_ref | OPEN_PAR_SYMBOL LIKE_SYMBOL table_ref CLOSE_PAR_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:849:2: ( TEMPORARY_SYMBOL )?
            {
                int alt169=2;
                switch ( LA(1) )
                {
                    case TEMPORARY_SYMBOL:
                    	{
                    		alt169=1;
                    	}
                        break;
                }

                switch (alt169)
                {
            	case 1:
            	    // MySQL.g:849:2: TEMPORARY_SYMBOL
            	    {
            	        TEMPORARY_SYMBOL558 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_create_table_tail3042);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TEMPORARY_SYMBOL558_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL558));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL558_tree);
            	        }

            	    }
            	    break;

                }
            }

            TABLE_SYMBOL559 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_create_table_tail3045);
            if  (HASEXCEPTION())
            {
                goto rulecreate_table_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL559_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL559));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL559_tree);
            }

            // MySQL.g:849:33: ( if_not_exists )?
            {
                int alt170=2;
                switch ( LA(1) )
                {
                    case IF_SYMBOL:
                    	{
                    		alt170=1;
                    	}
                        break;
                }

                switch (alt170)
                {
            	case 1:
            	    // MySQL.g:849:33: if_not_exists
            	    {
            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_table_tail3047);
            	        if_not_exists560=if_not_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_not_exists560.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_name_in_create_table_tail3050);
            table_name561=table_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_table_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_name561.tree);

            // MySQL.g:850:3: ( OPEN_PAR_SYMBOL ( create_field_list 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_ref | OPEN_PAR_SYMBOL LIKE_SYMBOL table_ref CLOSE_PAR_SYMBOL )
            {
                int alt178=4;
                {
                    int LA178_0 = LA(1);
                    if ( (LA178_0 == OPEN_PAR_SYMBOL))
                    {
                        {
                            int LA178_1 = LA(2);
                            if ( (LA178_1 == LIKE_SYMBOL))
                            {
                                alt178=4;
                            }
                            else if ( (((LA178_1 >= ACCOUNT_SYMBOL) && (LA178_1 <= YEAR_SYMBOL)) || LA178_1 == BACK_TICK_QUOTED_ID || LA178_1 == CHECK_SYMBOL || LA178_1 == CONSTRAINT_SYMBOL || LA178_1 == DOT_SYMBOL || LA178_1 == DOUBLE_QUOTED_TEXT || LA178_1 == FOREIGN_SYMBOL || LA178_1 == FULLTEXT_SYMBOL || LA178_1 == IDENTIFIER || LA178_1 == INDEX_SYMBOL || LA178_1 == KEY_SYMBOL || LA178_1 == PRIMARY_SYMBOL || LA178_1 == SPATIAL_SYMBOL || LA178_1 == UNIQUE_SYMBOL))
                            {
                                alt178=1;
                            }
                            else if ( (LA178_1 == SELECT_SYMBOL))
                            {
                                alt178=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 178;
                                EXCEPTION->state        = 1;


                                goto rulecreate_table_tailEx;

                            }
                        }
                    }
                    else if ( (((LA178_0 >= CHARSET_SYMBOL) && (LA178_0 <= CHECKSUM_SYMBOL)) || LA178_0 == COMMENT_SYMBOL || LA178_0 == PARTITION_SYMBOL || LA178_0 == AUTO_INCREMENT_SYMBOL || LA178_0 == AVG_ROW_LENGTH_SYMBOL || LA178_0 == COMPRESSION_SYMBOL || LA178_0 == CONNECTION_SYMBOL || LA178_0 == DATA_SYMBOL || LA178_0 == DELAY_KEY_WRITE_SYMBOL || LA178_0 == ENGINE_SYMBOL || LA178_0 == INSERT_METHOD_SYMBOL || LA178_0 == KEY_BLOCK_SIZE_SYMBOL || LA178_0 == MAX_ROWS_SYMBOL || LA178_0 == MIN_ROWS_SYMBOL || LA178_0 == PACK_KEYS_SYMBOL || LA178_0 == PASSWORD_SYMBOL || LA178_0 == ROW_FORMAT_SYMBOL || ((LA178_0 >= STATS_AUTO_RECALC_SYMBOL) && (LA178_0 <= STATS_SAMPLE_PAGES_SYMBOL)) || LA178_0 == STORAGE_SYMBOL || ((LA178_0 >= TABLE_CHECKSUM_SYMBOL) && (LA178_0 <= TABLESPACE_SYMBOL)) || LA178_0 == TYPE_SYMBOL || LA178_0 == AS_SYMBOL || LA178_0 == CHAR_SYMBOL || LA178_0 == COLLATE_SYMBOL || LA178_0 == DEFAULT_SYMBOL || LA178_0 == IGNORE_SYMBOL || LA178_0 == INDEX_SYMBOL || LA178_0 == REPLACE_SYMBOL || LA178_0 == SELECT_SYMBOL || LA178_0 == UNION_SYMBOL))
                    {
                        alt178=2;
                    }
                    else if ( (LA178_0 == LIKE_SYMBOL))
                    {
                        alt178=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 178;
                        EXCEPTION->state        = 0;


                        goto rulecreate_table_tailEx;

                    }
                }
                switch (alt178)
                {
            	case 1:
            	    // MySQL.g:851:4: OPEN_PAR_SYMBOL ( create_field_list CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? )
            	    {
            	        OPEN_PAR_SYMBOL562 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3059);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL562_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL562));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL562_tree);
            	        }

            	        // MySQL.g:852:5: ( create_field_list CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )? | partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )? )
            	        {
            	            int alt175=2;
            	            {
            	                int LA175_0 = LA(1);
            	                if ( (((LA175_0 >= ACCOUNT_SYMBOL) && (LA175_0 <= PARSER_SYMBOL)) || ((LA175_0 >= PORT_SYMBOL) && (LA175_0 <= YEAR_SYMBOL)) || LA175_0 == BACK_TICK_QUOTED_ID || LA175_0 == CHECK_SYMBOL || LA175_0 == CONSTRAINT_SYMBOL || LA175_0 == DOT_SYMBOL || LA175_0 == DOUBLE_QUOTED_TEXT || LA175_0 == FOREIGN_SYMBOL || LA175_0 == FULLTEXT_SYMBOL || LA175_0 == IDENTIFIER || LA175_0 == INDEX_SYMBOL || LA175_0 == KEY_SYMBOL || LA175_0 == PRIMARY_SYMBOL || LA175_0 == SPATIAL_SYMBOL || LA175_0 == UNIQUE_SYMBOL))
            	                {
            	                    alt175=1;
            	                }
            	                else if ( (LA175_0 == PARTITION_SYMBOL))
            	                {
            	                    {
            	                        int LA175_6 = LA(2);
            	                        if ( (LA175_6 == BY_SYMBOL))
            	                        {
            	                            alt175=2;
            	                        }
            	                        else if ( (LA175_6 == BIT_SYMBOL || ((LA175_6 >= BOOL_SYMBOL) && (LA175_6 <= BOOLEAN_SYMBOL)) || ((LA175_6 >= DATETIME_SYMBOL) && (LA175_6 <= DATE_SYMBOL)) || LA175_6 == ENUM_SYMBOL || LA175_6 == FIXED_SYMBOL || ((LA175_6 >= GEOMETRY_SYMBOL) && (LA175_6 <= GEOMETRYCOLLECTION_SYMBOL)) || LA175_6 == JSON_SYMBOL || LA175_6 == LINESTRING_SYMBOL || ((LA175_6 >= MULTILINESTRING_SYMBOL) && (LA175_6 <= MULTIPOLYGON_SYMBOL)) || ((LA175_6 >= NATIONAL_SYMBOL) && (LA175_6 <= NCHAR_SYMBOL)) || LA175_6 == NVARCHAR_SYMBOL || ((LA175_6 >= POINT_SYMBOL) && (LA175_6 <= POLYGON_SYMBOL)) || LA175_6 == SERIAL_SYMBOL || LA175_6 == TEXT_SYMBOL || LA175_6 == TIMESTAMP_SYMBOL || LA175_6 == TIME_SYMBOL || LA175_6 == YEAR_SYMBOL || ((LA175_6 >= BIGINT_SYMBOL) && (LA175_6 <= BINARY_SYMBOL)) || LA175_6 == BLOB_SYMBOL || LA175_6 == CHAR_SYMBOL || LA175_6 == DECIMAL_SYMBOL || LA175_6 == DOT_SYMBOL || LA175_6 == DOUBLE_SYMBOL || LA175_6 == FLOAT_SYMBOL || LA175_6 == INT_SYMBOL || ((LA175_6 >= LONGBLOB_SYMBOL) && (LA175_6 <= LONGTEXT_SYMBOL)) || LA175_6 == LONG_SYMBOL || ((LA175_6 >= MEDIUMBLOB_SYMBOL) && (LA175_6 <= MEDIUMTEXT_SYMBOL)) || LA175_6 == NUMERIC_SYMBOL || LA175_6 == REAL_SYMBOL || LA175_6 == SET_SYMBOL || LA175_6 == SMALLINT_SYMBOL || ((LA175_6 >= TINYBLOB_SYMBOL) && (LA175_6 <= TINYTEXT_SYMBOL)) || LA175_6 == VARBINARY_SYMBOL || LA175_6 == VARCHAR_SYMBOL))
            	                        {
            	                            alt175=1;
            	                        }
            	                        else
            	                        {
            	                            if (BACKTRACKING>0)
            	                            {
            	                                FAILEDFLAG = ANTLR3_TRUE;
            	                                return retval;
            	                            }


            	                            CONSTRUCTEX();
            	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                            EXCEPTION->message      = (void *)"";
            	                            EXCEPTION->decisionNum  = 175;
            	                            EXCEPTION->state        = 6;


            	                            goto rulecreate_table_tailEx;

            	                        }
            	                    }
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 175;
            	                    EXCEPTION->state        = 0;


            	                    goto rulecreate_table_tailEx;

            	                }
            	            }
            	            switch (alt175)
            	            {
            	        	case 1:
            	        	    // MySQL.g:853:6: create_field_list CLOSE_PAR_SYMBOL ( create_table_options )? ( partitioning )? ( table_creation_source )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_field_list_in_create_table_tail3072);
            	        	        create_field_list563=create_field_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_field_list563.tree);

            	        	        CLOSE_PAR_SYMBOL564 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3074);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL564_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL564));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL564_tree);
            	        	        }

            	        	        // MySQL.g:853:41: ( create_table_options )?
            	        	        {
            	        	            int alt171=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case CHARSET_SYMBOL:
            	        	                case CHECKSUM_SYMBOL:
            	        	                case COMMENT_SYMBOL:
            	        	                case AUTO_INCREMENT_SYMBOL:
            	        	                case AVG_ROW_LENGTH_SYMBOL:
            	        	                case COMPRESSION_SYMBOL:
            	        	                case CONNECTION_SYMBOL:
            	        	                case DATA_SYMBOL:
            	        	                case DELAY_KEY_WRITE_SYMBOL:
            	        	                case ENGINE_SYMBOL:
            	        	                case INSERT_METHOD_SYMBOL:
            	        	                case KEY_BLOCK_SIZE_SYMBOL:
            	        	                case MAX_ROWS_SYMBOL:
            	        	                case MIN_ROWS_SYMBOL:
            	        	                case PACK_KEYS_SYMBOL:
            	        	                case PASSWORD_SYMBOL:
            	        	                case ROW_FORMAT_SYMBOL:
            	        	                case STATS_AUTO_RECALC_SYMBOL:
            	        	                case STATS_PERSISTENT_SYMBOL:
            	        	                case STATS_SAMPLE_PAGES_SYMBOL:
            	        	                case STORAGE_SYMBOL:
            	        	                case TABLE_CHECKSUM_SYMBOL:
            	        	                case TABLESPACE_SYMBOL:
            	        	                case TYPE_SYMBOL:
            	        	                case CHAR_SYMBOL:
            	        	                case COLLATE_SYMBOL:
            	        	                case DEFAULT_SYMBOL:
            	        	                case INDEX_SYMBOL:
            	        	                case UNION_SYMBOL:
            	        	                	{
            	        	                		alt171=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt171)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:853:41: create_table_options
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_create_table_options_in_create_table_tail3076);
            	        	        	        create_table_options565=create_table_options(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_table_tailEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_options565.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:853:63: ( partitioning )?
            	        	        {
            	        	            int alt172=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case PARTITION_SYMBOL:
            	        	                	{
            	        	                		alt172=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt172)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:853:63: partitioning
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table_tail3079);
            	        	        	        partitioning566=partitioning(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_table_tailEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning566.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:853:77: ( table_creation_source )?
            	        	        {
            	        	            int alt173=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AS_SYMBOL:
            	        	                case IGNORE_SYMBOL:
            	        	                case OPEN_PAR_SYMBOL:
            	        	                case REPLACE_SYMBOL:
            	        	                case SELECT_SYMBOL:
            	        	                	{
            	        	                		alt173=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt173)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:853:77: table_creation_source
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_table_creation_source_in_create_table_tail3082);
            	        	        	        table_creation_source567=table_creation_source(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_table_tailEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_creation_source567.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:854:8: partitioning create_select CLOSE_PAR_SYMBOL ( union_clause )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table_tail3092);
            	        	        partitioning568=partitioning(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning568.tree);

            	        	        FOLLOWPUSH(FOLLOW_create_select_in_create_table_tail3094);
            	        	        create_select569=create_select(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select569.tree);

            	        	        CLOSE_PAR_SYMBOL570 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3096);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL570_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL570));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL570_tree);
            	        	        }

            	        	        // MySQL.g:854:52: ( union_clause )?
            	        	        {
            	        	            int alt174=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case UNION_SYMBOL:
            	        	                	{
            	        	                		alt174=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt174)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:854:52: union_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_create_table_tail3098);
            	        	        	        union_clause571=union_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulecreate_table_tailEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause571.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:856:6: ( create_table_options )? ( partitioning )? table_creation_source
            	    {
            	        // MySQL.g:856:6: ( create_table_options )?
            	        {
            	            int alt176=2;
            	            switch ( LA(1) )
            	            {
            	                case CHARSET_SYMBOL:
            	                case CHECKSUM_SYMBOL:
            	                case COMMENT_SYMBOL:
            	                case AUTO_INCREMENT_SYMBOL:
            	                case AVG_ROW_LENGTH_SYMBOL:
            	                case COMPRESSION_SYMBOL:
            	                case CONNECTION_SYMBOL:
            	                case DATA_SYMBOL:
            	                case DELAY_KEY_WRITE_SYMBOL:
            	                case ENGINE_SYMBOL:
            	                case INSERT_METHOD_SYMBOL:
            	                case KEY_BLOCK_SIZE_SYMBOL:
            	                case MAX_ROWS_SYMBOL:
            	                case MIN_ROWS_SYMBOL:
            	                case PACK_KEYS_SYMBOL:
            	                case PASSWORD_SYMBOL:
            	                case ROW_FORMAT_SYMBOL:
            	                case STATS_AUTO_RECALC_SYMBOL:
            	                case STATS_PERSISTENT_SYMBOL:
            	                case STATS_SAMPLE_PAGES_SYMBOL:
            	                case STORAGE_SYMBOL:
            	                case TABLE_CHECKSUM_SYMBOL:
            	                case TABLESPACE_SYMBOL:
            	                case TYPE_SYMBOL:
            	                case CHAR_SYMBOL:
            	                case COLLATE_SYMBOL:
            	                case DEFAULT_SYMBOL:
            	                case INDEX_SYMBOL:
            	                case UNION_SYMBOL:
            	                	{
            	                		alt176=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt176)
            	            {
            	        	case 1:
            	        	    // MySQL.g:856:6: create_table_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_create_table_options_in_create_table_tail3112);
            	        	        create_table_options572=create_table_options(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_table_options572.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:856:28: ( partitioning )?
            	        {
            	            int alt177=2;
            	            switch ( LA(1) )
            	            {
            	                case PARTITION_SYMBOL:
            	                	{
            	                		alt177=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt177)
            	            {
            	        	case 1:
            	        	    // MySQL.g:856:28: partitioning
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_partitioning_in_create_table_tail3115);
            	        	        partitioning573=partitioning(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_tailEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partitioning573.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_table_creation_source_in_create_table_tail3118);
            	        table_creation_source574=table_creation_source(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_creation_source574.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:857:6: LIKE_SYMBOL table_ref
            	    {
            	        LIKE_SYMBOL575 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_create_table_tail3125);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL575_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL575));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL575_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_create_table_tail3127);
            	        table_ref576=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref576.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:858:6: OPEN_PAR_SYMBOL LIKE_SYMBOL table_ref CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL577 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table_tail3134);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL577_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL577));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL577_tree);
            	        }

            	        LIKE_SYMBOL578 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_create_table_tail3136);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL578_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL578));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL578_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_create_table_tail3138);
            	        table_ref579=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref579.tree);

            	        CLOSE_PAR_SYMBOL580 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_tail3140);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_table_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL580_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL580));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL580_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_table_tailEx; /* Prevent compiler warnings */
    rulecreate_table_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 create_table_tail */

/**
 * $ANTLR start create_field_list
 * MySQL.g:862:1: create_field_list : create_item ( COMMA_SYMBOL create_item )* ;
 */
static MySQLParser_create_field_list_return
create_field_list(pMySQLParser ctx)
{
    MySQLParser_create_field_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL582;
    MySQLParser_create_item_return create_item581;
    #undef	RETURN_TYPE_create_item581
    #define	RETURN_TYPE_create_item581 MySQLParser_create_item_return

    MySQLParser_create_item_return create_item583;
    #undef	RETURN_TYPE_create_item583
    #define	RETURN_TYPE_create_item583 MySQLParser_create_item_return

    pANTLR3_BASE_TREE COMMA_SYMBOL582_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL582       = NULL;
    create_item581.tree = NULL;

    create_item583.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL582_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:862:18: ( create_item ( COMMA_SYMBOL create_item )* )
        // MySQL.g:863:2: create_item ( COMMA_SYMBOL create_item )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_item_in_create_field_list3153);
            create_item581=create_item(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_field_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_item581.tree);

            // MySQL.g:863:14: ( COMMA_SYMBOL create_item )*

            for (;;)
            {
                int alt179=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt179=1;
                	}
                    break;

                }

                switch (alt179)
                {
            	case 1:
            	    // MySQL.g:863:15: COMMA_SYMBOL create_item
            	    {
            	        COMMA_SYMBOL582 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_field_list3156);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_field_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL582_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL582));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL582_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_create_item_in_create_field_list3158);
            	        create_item583=create_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_field_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_item583.tree);

            	    }
            	    break;

            	default:
            	    goto loop179;	/* break out of the loop */
            	    break;
                }
            }
            loop179: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_field_listEx; /* Prevent compiler warnings */
    rulecreate_field_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 create_field_list */

/**
 * $ANTLR start create_item
 * MySQL.g:866:1: create_item : create_field_list_item -> ^( CREATE_ITEM_TOKEN create_field_list_item ) ;
 */
static MySQLParser_create_item_return
create_item(pMySQLParser ctx)
{
    MySQLParser_create_item_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_create_field_list_item_return create_field_list_item584;
    #undef	RETURN_TYPE_create_field_list_item584
    #define	RETURN_TYPE_create_field_list_item584 MySQLParser_create_field_list_item_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_create_field_list_item;
    /* Initialize rule variables
     */

    root_0 = NULL;

    create_field_list_item584.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_create_field_list_item   = NULL;
    #define CREATE_stream_create_field_list_item  if (stream_create_field_list_item == NULL) {stream_create_field_list_item = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule create_field_list_item"); }

    retval.tree  = NULL;

    {
        // MySQL.g:866:12: ( create_field_list_item -> ^( CREATE_ITEM_TOKEN create_field_list_item ) )
        // MySQL.g:867:2: create_field_list_item
        {
            FOLLOWPUSH(FOLLOW_create_field_list_item_in_create_item3169);
            create_field_list_item584=create_field_list_item(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_create_field_list_item; stream_create_field_list_item->add(stream_create_field_list_item, create_field_list_item584.tree, NULL); }

            /* AST REWRITE
             * elements          : create_field_list_item
             * 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;
            	// 867:25: -> ^( CREATE_ITEM_TOKEN create_field_list_item )
            	{
            	    // MySQL.g:867:28: ^( CREATE_ITEM_TOKEN create_field_list_item )
            	    {
            	        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, CREATE_ITEM_TOKEN, (pANTLR3_UINT8)"CREATE_ITEM_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_create_field_list_item == NULL ? NULL : stream_create_field_list_item->nextTree(stream_create_field_list_item));

            	        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 rulecreate_itemEx; /* Prevent compiler warnings */
    rulecreate_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_create_field_list_item != NULL) stream_create_field_list_item->free(stream_create_field_list_item);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end create_item */

/**
 * $ANTLR start create_field_list_item
 * MySQL.g:870:1: create_field_list_item : ( column_definition | key_def );
 */
static MySQLParser_create_field_list_item_return
create_field_list_item(pMySQLParser ctx)
{
    MySQLParser_create_field_list_item_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_column_definition_return column_definition585;
    #undef	RETURN_TYPE_column_definition585
    #define	RETURN_TYPE_column_definition585 MySQLParser_column_definition_return

    MySQLParser_key_def_return key_def586;
    #undef	RETURN_TYPE_key_def586
    #define	RETURN_TYPE_key_def586 MySQLParser_key_def_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    column_definition585.tree = NULL;

    key_def586.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:870:23: ( column_definition | key_def )

            ANTLR3_UINT32 alt180;

            alt180=2;

            {
                int LA180_0 = LA(1);
                if ( (((LA180_0 >= ACCOUNT_SYMBOL) && (LA180_0 <= YEAR_SYMBOL)) || LA180_0 == BACK_TICK_QUOTED_ID || LA180_0 == DOT_SYMBOL || LA180_0 == DOUBLE_QUOTED_TEXT || LA180_0 == IDENTIFIER))
                {
                    alt180=1;
                }
                else if ( (LA180_0 == CHECK_SYMBOL || LA180_0 == CONSTRAINT_SYMBOL || LA180_0 == FOREIGN_SYMBOL || LA180_0 == FULLTEXT_SYMBOL || LA180_0 == INDEX_SYMBOL || LA180_0 == KEY_SYMBOL || LA180_0 == PRIMARY_SYMBOL || LA180_0 == SPATIAL_SYMBOL || LA180_0 == UNIQUE_SYMBOL))
                {
                    alt180=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 180;
                    EXCEPTION->state        = 0;


                    goto rulecreate_field_list_itemEx;

                }
            }
            switch (alt180)
            {
        	case 1:
        	    // MySQL.g:871:2: column_definition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_column_definition_in_create_field_list_item3186);
        	        column_definition585=column_definition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_field_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_definition585.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:872:4: key_def
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_key_def_in_create_field_list_item3191);
        	        key_def586=key_def(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_field_list_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_def586.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecreate_field_list_itemEx; /* Prevent compiler warnings */
    rulecreate_field_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 create_field_list_item */

/**
 * $ANTLR start table_creation_source
 * MySQL.g:875:1: table_creation_source : ( REPLACE_SYMBOL | IGNORE_SYMBOL )? ( AS_SYMBOL )? ( create_select ( union_clause )? | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? ) ;
 */
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    set587;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL588;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL591;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL593;
    MySQLParser_create_select_return create_select589;
    #undef	RETURN_TYPE_create_select589
    #define	RETURN_TYPE_create_select589 MySQLParser_create_select_return

    MySQLParser_union_clause_return union_clause590;
    #undef	RETURN_TYPE_union_clause590
    #define	RETURN_TYPE_union_clause590 MySQLParser_union_clause_return

    MySQLParser_create_select_return create_select592;
    #undef	RETURN_TYPE_create_select592
    #define	RETURN_TYPE_create_select592 MySQLParser_create_select_return

    MySQLParser_union_or_order_by_or_limit_return union_or_order_by_or_limit594;
    #undef	RETURN_TYPE_union_or_order_by_or_limit594
    #define	RETURN_TYPE_union_or_order_by_or_limit594 MySQLParser_union_or_order_by_or_limit_return

    pANTLR3_BASE_TREE set587_tree;
    pANTLR3_BASE_TREE AS_SYMBOL588_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL591_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL593_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set587       = NULL;
    AS_SYMBOL588       = NULL;
    OPEN_PAR_SYMBOL591       = NULL;
    CLOSE_PAR_SYMBOL593       = NULL;
    create_select589.tree = NULL;

    union_clause590.tree = NULL;

    create_select592.tree = NULL;

    union_or_order_by_or_limit594.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set587_tree   = NULL;
    AS_SYMBOL588_tree   = NULL;
    OPEN_PAR_SYMBOL591_tree   = NULL;
    CLOSE_PAR_SYMBOL593_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:875:22: ( ( REPLACE_SYMBOL | IGNORE_SYMBOL )? ( AS_SYMBOL )? ( create_select ( union_clause )? | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? ) )
        // MySQL.g:876:2: ( REPLACE_SYMBOL | IGNORE_SYMBOL )? ( AS_SYMBOL )? ( create_select ( union_clause )? | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:876:2: ( REPLACE_SYMBOL | IGNORE_SYMBOL )?
            {
                int alt181=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    case REPLACE_SYMBOL:
                    	{
                    		alt181=1;
                    	}
                        break;
                }

                switch (alt181)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set587=(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, set587))
            	            );
            	            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:876:36: ( AS_SYMBOL )?
            {
                int alt182=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    	{
                    		alt182=1;
                    	}
                        break;
                }

                switch (alt182)
                {
            	case 1:
            	    // MySQL.g:876:36: AS_SYMBOL
            	    {
            	        AS_SYMBOL588 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_table_creation_source3210);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AS_SYMBOL588_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL588));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL588_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:877:2: ( create_select ( union_clause )? | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? )
            {
                int alt185=2;
                switch ( LA(1) )
                {
                case SELECT_SYMBOL:
                	{
                		alt185=1;
                	}
                    break;
                case OPEN_PAR_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 ruletable_creation_sourceEx;

                }

                switch (alt185)
                {
            	case 1:
            	    // MySQL.g:878:3: create_select ( union_clause )?
            	    {
            	        FOLLOWPUSH(FOLLOW_create_select_in_table_creation_source3218);
            	        create_select589=create_select(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select589.tree);

            	        // MySQL.g:878:17: ( union_clause )?
            	        {
            	            int alt183=2;
            	            switch ( LA(1) )
            	            {
            	                case UNION_SYMBOL:
            	                	{
            	                		alt183=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt183)
            	            {
            	        	case 1:
            	        	    // MySQL.g:878:17: union_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_union_clause_in_table_creation_source3220);
            	        	        union_clause590=union_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletable_creation_sourceEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause590.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:879:5: OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )?
            	    {
            	        OPEN_PAR_SYMBOL591 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_table_creation_source3227);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL591_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL591));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL591_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_create_select_in_table_creation_source3229);
            	        create_select592=create_select(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select592.tree);

            	        CLOSE_PAR_SYMBOL593 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_table_creation_source3231);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_creation_sourceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL593_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL593));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL593_tree);
            	        }

            	        // MySQL.g:879:52: ( union_or_order_by_or_limit )?
            	        {
            	            int alt184=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                case ORDER_SYMBOL:
            	                case UNION_SYMBOL:
            	                	{
            	                		alt184=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt184)
            	            {
            	        	case 1:
            	        	    // MySQL.g:879:52: union_or_order_by_or_limit
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_union_or_order_by_or_limit_in_table_creation_source3233);
            	        	        union_or_order_by_or_limit594=union_or_order_by_or_limit(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletable_creation_sourceEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_or_order_by_or_limit594.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    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:884:1: create_select : SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression ;
 */
static MySQLParser_create_select_return
create_select(pMySQLParser ctx)
{
    MySQLParser_create_select_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL595;
    MySQLParser_select_option_return select_option596;
    #undef	RETURN_TYPE_select_option596
    #define	RETURN_TYPE_select_option596 MySQLParser_select_option_return

    MySQLParser_select_item_list_return select_item_list597;
    #undef	RETURN_TYPE_select_item_list597
    #define	RETURN_TYPE_select_item_list597 MySQLParser_select_item_list_return

    MySQLParser_table_expression_return table_expression598;
    #undef	RETURN_TYPE_table_expression598
    #define	RETURN_TYPE_table_expression598 MySQLParser_table_expression_return

    pANTLR3_BASE_TREE SELECT_SYMBOL595_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL595       = NULL;
    select_option596.tree = NULL;

    select_item_list597.tree = NULL;

    table_expression598.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL595_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:884:14: ( SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression )
        // MySQL.g:885:2: SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SELECT_SYMBOL595 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_create_select3247);
            if  (HASEXCEPTION())
            {
                goto rulecreate_selectEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SELECT_SYMBOL595_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL595));
            ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL595_tree);
            }

            // MySQL.g:885:16: ( options {greedy=true; } : select_option )*

            for (;;)
            {
                int alt186=2;
                switch ( LA(1) )
                {
                case SQL_BUFFER_RESULT_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA186_96 = LA(2);
                		    if ( (LA186_96 == DOT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == OPEN_PAR_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MOD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MINUS_OPERATOR || LA186_96 == PLUS_OPERATOR))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == NOT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == SOUNDS_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == IDENTIFIER))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == DATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == ASCII_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == BITWISE_NOT_OPERATOR || LA186_96 == INTERVAL_SYMBOL || LA186_96 == LOGICAL_NOT_OPERATOR || LA186_96 == NCHAR_TEXT || LA186_96 == NOT2_SYMBOL || LA186_96 == SINGLE_QUOTED_TEXT || LA186_96 == UNDERSCORE_CHARSET))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == DECIMAL_NUMBER || LA186_96 == FLOAT_NUMBER || LA186_96 == HEX_NUMBER || LA186_96 == INT_NUMBER || LA186_96 == LONG_NUMBER || LA186_96 == ULONGLONG_NUMBER))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == TIME_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == TIMESTAMP_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == DAY_SYMBOL || LA186_96 == FALSE_SYMBOL || LA186_96 == NULL2_SYMBOL || LA186_96 == NULL_SYMBOL || LA186_96 == TRUE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == BIN_NUMBER || LA186_96 == CHAR_SYMBOL || LA186_96 == CURRENT_USER_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == HOUR_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MINUTE_SYMBOL || LA186_96 == INSERT_SYMBOL || LA186_96 == LEFT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MONTH_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == SECOND_SYMBOL || LA186_96 == RIGHT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == USER_SYMBOL || LA186_96 == TRIM_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == YEAR_SYMBOL || LA186_96 == VALUES_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == ADDDATE_SYMBOL || LA186_96 == SUBDATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == GET_FORMAT_SYMBOL || LA186_96 == CURDATE_SYMBOL || LA186_96 == CURTIME_SYMBOL || LA186_96 == DATE_ADD_SYMBOL || LA186_96 == DATE_SUB_SYMBOL || LA186_96 == EXTRACT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (((LA186_96 >= TIMESTAMP_ADD_SYMBOL) && (LA186_96 <= TIMESTAMP_DIFF_SYMBOL)) || LA186_96 == NOW_SYMBOL || LA186_96 == POSITION_SYMBOL || LA186_96 == SUBSTRING_SYMBOL || LA186_96 == SYSDATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == COALESCE_SYMBOL || ((LA186_96 >= UTC_DATE_SYMBOL) && (LA186_96 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == CHARSET_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == FORMAT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == COLLATION_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MICROSECOND_SYMBOL || LA186_96 == DATABASE_SYMBOL || LA186_96 == IF_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == TRUNCATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MULT_OPERATOR))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == PASSWORD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == QUARTER_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == REVERSE_SYMBOL || ((LA186_96 >= REPEAT_SYMBOL) && (LA186_96 <= REPLACE_SYMBOL))))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == ROW_COUNT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == WEEK_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == CONTAINS_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == LINESTRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MULTIPOINT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == POINT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == POLYGON_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == AVG_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == ACCOUNT_SYMBOL || ((LA186_96 >= ALWAYS_SYMBOL) && (LA186_96 <= CACHE_SYMBOL)) || ((LA186_96 >= CHECKSUM_SYMBOL) && (LA186_96 <= COMMIT_SYMBOL)) || ((LA186_96 >= DEALLOCATE_SYMBOL) && (LA186_96 <= FOLLOWS_SYMBOL)) || ((LA186_96 >= GROUP_REPLICATION_SYMBOL) && (LA186_96 <= STOP_SYMBOL)) || ((LA186_96 >= UNICODE_SYMBOL) && (LA186_96 <= XA_SYMBOL)) || LA186_96 == SHUTDOWN_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == ROW_SYMBOL || ((LA186_96 >= AT_AT_SIGN_SYMBOL) && (LA186_96 <= AT_TEXT_SUFFIX)) || ((LA186_96 >= BIT_AND_SYMBOL) && (LA186_96 <= BIT_XOR_SYMBOL)) || LA186_96 == COUNT_SYMBOL || LA186_96 == EXISTS_SYMBOL || LA186_96 == GROUP_CONCAT_SYMBOL || LA186_96 == MAX_SYMBOL || LA186_96 == MIN_SYMBOL || LA186_96 == PARAM_MARKER || LA186_96 == STDDEV_SAMP_SYMBOL || LA186_96 == STD_SYMBOL || LA186_96 == SUM_SYMBOL || LA186_96 == VARIANCE_SYMBOL || LA186_96 == VAR_SAMP_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == SQL_BUFFER_RESULT_SYMBOL || LA186_96 == BINARY_SYMBOL || ((LA186_96 >= CASE_SYMBOL) && (LA186_96 <= CAST_SYMBOL)) || LA186_96 == CONVERT_SYMBOL || LA186_96 == MATCH_SYMBOL || LA186_96 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == SQL_NO_CACHE_SYMBOL || LA186_96 == ALL_SYMBOL || LA186_96 == DISTINCT_SYMBOL || LA186_96 == HIGH_PRIORITY_SYMBOL || ((LA186_96 >= SQL_BIG_RESULT_SYMBOL) && (LA186_96 <= SQL_SMALL_RESULT_SYMBOL)) || LA186_96 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == SQL_CACHE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_96 == ACTION_SYMBOL || ((LA186_96 >= AFTER_SYMBOL) && (LA186_96 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA186_96 >= BINLOG_SYMBOL) && (LA186_96 <= CLASS_ORIGIN_SYMBOL)) || LA186_96 == CODE_SYMBOL || ((LA186_96 >= COLUMN_NAME_SYMBOL) && (LA186_96 <= DATETIME_SYMBOL)) || ((LA186_96 >= DEFAULT_AUTH_SYMBOL) && (LA186_96 <= GEOMETRY_SYMBOL)) || ((LA186_96 >= GRANTS_SYMBOL) && (LA186_96 <= HOSTS_SYMBOL)) || ((LA186_96 >= IDENTIFIED_SYMBOL) && (LA186_96 <= LEVEL_SYMBOL)) || ((LA186_96 >= LIST_SYMBOL) && (LA186_96 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA186_96 >= MAX_SIZE_SYMBOL) && (LA186_96 <= MESSAGE_TEXT_SYMBOL)) || LA186_96 == MIGRATE_SYMBOL || ((LA186_96 >= MIN_ROWS_SYMBOL) && (LA186_96 <= MODE_SYMBOL)) || ((LA186_96 >= MUTEX_SYMBOL) && (LA186_96 <= OFFSET_SYMBOL)) || ((LA186_96 >= ONE_SHOT_SYMBOL) && (LA186_96 <= PARTITIONS_SYMBOL)) || ((LA186_96 >= PHASE_SYMBOL) && (LA186_96 <= PLUGINS_SYMBOL)) || ((LA186_96 >= PRESERVE_SYMBOL) && (LA186_96 <= PROXY_SYMBOL)) || ((LA186_96 >= QUERY_SYMBOL) && (LA186_96 <= RETURNS_SYMBOL)) || ((LA186_96 >= ROLLUP_SYMBOL) && (LA186_96 <= ROWS_SYMBOL)) || LA186_96 == ROW_FORMAT_SYMBOL || ((LA186_96 >= RTREE_SYMBOL) && (LA186_96 <= SCHEMA_NAME_SYMBOL)) || ((LA186_96 >= SERIAL_SYMBOL) && (LA186_96 <= SHARE_SYMBOL)) || ((LA186_96 >= SLOW_SYMBOL) && (LA186_96 <= SNAPSHOT_SYMBOL)) || ((LA186_96 >= SOURCE_SYMBOL) && (LA186_96 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA186_96 >= SQL_THREAD_SYMBOL) && (LA186_96 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA186_96 >= SUBJECT_SYMBOL) && (LA186_96 <= TRIGGERS_SYMBOL)) || ((LA186_96 >= TYPES_SYMBOL) && (LA186_96 <= USER_RESOURCES_SYMBOL)) || ((LA186_96 >= USE_FRM_SYMBOL) && (LA186_96 <= WAIT_SYMBOL)) || LA186_96 == WORK_SYMBOL || ((LA186_96 >= X509_SYMBOL) && (LA186_96 <= XML_SYMBOL))))
                		    {
                		        alt186=1;
                		    }

                		}
                	}
                    break;
                case SQL_NO_CACHE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA186_104 = LA(2);
                		    if ( (LA186_104 == DOT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == OPEN_PAR_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MOD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MINUS_OPERATOR || LA186_104 == PLUS_OPERATOR))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == NOT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == SOUNDS_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == IDENTIFIER))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == DATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == ASCII_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == BITWISE_NOT_OPERATOR || LA186_104 == INTERVAL_SYMBOL || LA186_104 == LOGICAL_NOT_OPERATOR || LA186_104 == NCHAR_TEXT || LA186_104 == NOT2_SYMBOL || LA186_104 == SINGLE_QUOTED_TEXT || LA186_104 == UNDERSCORE_CHARSET))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == DECIMAL_NUMBER || LA186_104 == FLOAT_NUMBER || LA186_104 == HEX_NUMBER || LA186_104 == INT_NUMBER || LA186_104 == LONG_NUMBER || LA186_104 == ULONGLONG_NUMBER))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == TIME_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == TIMESTAMP_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == DAY_SYMBOL || LA186_104 == FALSE_SYMBOL || LA186_104 == NULL2_SYMBOL || LA186_104 == NULL_SYMBOL || LA186_104 == TRUE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == BIN_NUMBER || LA186_104 == CHAR_SYMBOL || LA186_104 == CURRENT_USER_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == HOUR_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MINUTE_SYMBOL || LA186_104 == INSERT_SYMBOL || LA186_104 == LEFT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MONTH_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == SECOND_SYMBOL || LA186_104 == RIGHT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == USER_SYMBOL || LA186_104 == TRIM_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == YEAR_SYMBOL || LA186_104 == VALUES_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == ADDDATE_SYMBOL || LA186_104 == SUBDATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == GET_FORMAT_SYMBOL || LA186_104 == CURDATE_SYMBOL || LA186_104 == CURTIME_SYMBOL || LA186_104 == DATE_ADD_SYMBOL || LA186_104 == DATE_SUB_SYMBOL || LA186_104 == EXTRACT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (((LA186_104 >= TIMESTAMP_ADD_SYMBOL) && (LA186_104 <= TIMESTAMP_DIFF_SYMBOL)) || LA186_104 == NOW_SYMBOL || LA186_104 == POSITION_SYMBOL || LA186_104 == SUBSTRING_SYMBOL || LA186_104 == SYSDATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == COALESCE_SYMBOL || ((LA186_104 >= UTC_DATE_SYMBOL) && (LA186_104 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == CHARSET_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == FORMAT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == COLLATION_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MICROSECOND_SYMBOL || LA186_104 == DATABASE_SYMBOL || LA186_104 == IF_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == TRUNCATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MULT_OPERATOR))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == PASSWORD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == QUARTER_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == REVERSE_SYMBOL || ((LA186_104 >= REPEAT_SYMBOL) && (LA186_104 <= REPLACE_SYMBOL))))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == ROW_COUNT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == WEEK_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == CONTAINS_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == LINESTRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MULTIPOINT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == POINT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == POLYGON_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == AVG_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == ACCOUNT_SYMBOL || ((LA186_104 >= ALWAYS_SYMBOL) && (LA186_104 <= CACHE_SYMBOL)) || ((LA186_104 >= CHECKSUM_SYMBOL) && (LA186_104 <= COMMIT_SYMBOL)) || ((LA186_104 >= DEALLOCATE_SYMBOL) && (LA186_104 <= FOLLOWS_SYMBOL)) || ((LA186_104 >= GROUP_REPLICATION_SYMBOL) && (LA186_104 <= STOP_SYMBOL)) || ((LA186_104 >= UNICODE_SYMBOL) && (LA186_104 <= XA_SYMBOL)) || LA186_104 == SHUTDOWN_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == ROW_SYMBOL || ((LA186_104 >= AT_AT_SIGN_SYMBOL) && (LA186_104 <= AT_TEXT_SUFFIX)) || ((LA186_104 >= BIT_AND_SYMBOL) && (LA186_104 <= BIT_XOR_SYMBOL)) || LA186_104 == COUNT_SYMBOL || LA186_104 == EXISTS_SYMBOL || LA186_104 == GROUP_CONCAT_SYMBOL || LA186_104 == MAX_SYMBOL || LA186_104 == MIN_SYMBOL || LA186_104 == PARAM_MARKER || LA186_104 == STDDEV_SAMP_SYMBOL || LA186_104 == STD_SYMBOL || LA186_104 == SUM_SYMBOL || LA186_104 == VARIANCE_SYMBOL || LA186_104 == VAR_SAMP_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == SQL_BUFFER_RESULT_SYMBOL || LA186_104 == BINARY_SYMBOL || ((LA186_104 >= CASE_SYMBOL) && (LA186_104 <= CAST_SYMBOL)) || LA186_104 == CONVERT_SYMBOL || LA186_104 == MATCH_SYMBOL || LA186_104 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == SQL_NO_CACHE_SYMBOL || LA186_104 == ALL_SYMBOL || LA186_104 == DISTINCT_SYMBOL || LA186_104 == HIGH_PRIORITY_SYMBOL || ((LA186_104 >= SQL_BIG_RESULT_SYMBOL) && (LA186_104 <= SQL_SMALL_RESULT_SYMBOL)) || LA186_104 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == SQL_CACHE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_104 == ACTION_SYMBOL || ((LA186_104 >= AFTER_SYMBOL) && (LA186_104 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA186_104 >= BINLOG_SYMBOL) && (LA186_104 <= CLASS_ORIGIN_SYMBOL)) || LA186_104 == CODE_SYMBOL || ((LA186_104 >= COLUMN_NAME_SYMBOL) && (LA186_104 <= DATETIME_SYMBOL)) || ((LA186_104 >= DEFAULT_AUTH_SYMBOL) && (LA186_104 <= GEOMETRY_SYMBOL)) || ((LA186_104 >= GRANTS_SYMBOL) && (LA186_104 <= HOSTS_SYMBOL)) || ((LA186_104 >= IDENTIFIED_SYMBOL) && (LA186_104 <= LEVEL_SYMBOL)) || ((LA186_104 >= LIST_SYMBOL) && (LA186_104 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA186_104 >= MAX_SIZE_SYMBOL) && (LA186_104 <= MESSAGE_TEXT_SYMBOL)) || LA186_104 == MIGRATE_SYMBOL || ((LA186_104 >= MIN_ROWS_SYMBOL) && (LA186_104 <= MODE_SYMBOL)) || ((LA186_104 >= MUTEX_SYMBOL) && (LA186_104 <= OFFSET_SYMBOL)) || ((LA186_104 >= ONE_SHOT_SYMBOL) && (LA186_104 <= PARTITIONS_SYMBOL)) || ((LA186_104 >= PHASE_SYMBOL) && (LA186_104 <= PLUGINS_SYMBOL)) || ((LA186_104 >= PRESERVE_SYMBOL) && (LA186_104 <= PROXY_SYMBOL)) || ((LA186_104 >= QUERY_SYMBOL) && (LA186_104 <= RETURNS_SYMBOL)) || ((LA186_104 >= ROLLUP_SYMBOL) && (LA186_104 <= ROWS_SYMBOL)) || LA186_104 == ROW_FORMAT_SYMBOL || ((LA186_104 >= RTREE_SYMBOL) && (LA186_104 <= SCHEMA_NAME_SYMBOL)) || ((LA186_104 >= SERIAL_SYMBOL) && (LA186_104 <= SHARE_SYMBOL)) || ((LA186_104 >= SLOW_SYMBOL) && (LA186_104 <= SNAPSHOT_SYMBOL)) || ((LA186_104 >= SOURCE_SYMBOL) && (LA186_104 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA186_104 >= SQL_THREAD_SYMBOL) && (LA186_104 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA186_104 >= SUBJECT_SYMBOL) && (LA186_104 <= TRIGGERS_SYMBOL)) || ((LA186_104 >= TYPES_SYMBOL) && (LA186_104 <= USER_RESOURCES_SYMBOL)) || ((LA186_104 >= USE_FRM_SYMBOL) && (LA186_104 <= WAIT_SYMBOL)) || LA186_104 == WORK_SYMBOL || ((LA186_104 >= X509_SYMBOL) && (LA186_104 <= XML_SYMBOL))))
                		    {
                		        alt186=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_SMALL_RESULT_SYMBOL:
                case STRAIGHT_JOIN_SYMBOL:
                	{
                		alt186=1;
                	}
                    break;
                case SQL_CACHE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA186_106 = LA(2);
                		    if ( (LA186_106 == DOT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == OPEN_PAR_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MOD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MINUS_OPERATOR || LA186_106 == PLUS_OPERATOR))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == NOT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == SOUNDS_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == IDENTIFIER))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == DATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == ASCII_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == BITWISE_NOT_OPERATOR || LA186_106 == INTERVAL_SYMBOL || LA186_106 == LOGICAL_NOT_OPERATOR || LA186_106 == NCHAR_TEXT || LA186_106 == NOT2_SYMBOL || LA186_106 == SINGLE_QUOTED_TEXT || LA186_106 == UNDERSCORE_CHARSET))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == DECIMAL_NUMBER || LA186_106 == FLOAT_NUMBER || LA186_106 == HEX_NUMBER || LA186_106 == INT_NUMBER || LA186_106 == LONG_NUMBER || LA186_106 == ULONGLONG_NUMBER))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == TIME_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == TIMESTAMP_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == DAY_SYMBOL || LA186_106 == FALSE_SYMBOL || LA186_106 == NULL2_SYMBOL || LA186_106 == NULL_SYMBOL || LA186_106 == TRUE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == BIN_NUMBER || LA186_106 == CHAR_SYMBOL || LA186_106 == CURRENT_USER_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == HOUR_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MINUTE_SYMBOL || LA186_106 == INSERT_SYMBOL || LA186_106 == LEFT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MONTH_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == SECOND_SYMBOL || LA186_106 == RIGHT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == USER_SYMBOL || LA186_106 == TRIM_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == YEAR_SYMBOL || LA186_106 == VALUES_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == ADDDATE_SYMBOL || LA186_106 == SUBDATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == GET_FORMAT_SYMBOL || LA186_106 == CURDATE_SYMBOL || LA186_106 == CURTIME_SYMBOL || LA186_106 == DATE_ADD_SYMBOL || LA186_106 == DATE_SUB_SYMBOL || LA186_106 == EXTRACT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (((LA186_106 >= TIMESTAMP_ADD_SYMBOL) && (LA186_106 <= TIMESTAMP_DIFF_SYMBOL)) || LA186_106 == NOW_SYMBOL || LA186_106 == POSITION_SYMBOL || LA186_106 == SUBSTRING_SYMBOL || LA186_106 == SYSDATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == COALESCE_SYMBOL || ((LA186_106 >= UTC_DATE_SYMBOL) && (LA186_106 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == CHARSET_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == FORMAT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == COLLATION_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MICROSECOND_SYMBOL || LA186_106 == DATABASE_SYMBOL || LA186_106 == IF_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == TRUNCATE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MULT_OPERATOR))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == PASSWORD_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == QUARTER_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == REVERSE_SYMBOL || ((LA186_106 >= REPEAT_SYMBOL) && (LA186_106 <= REPLACE_SYMBOL))))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == ROW_COUNT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == WEEK_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == CONTAINS_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == LINESTRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MULTIPOINT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == POINT_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == POLYGON_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == AVG_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == ACCOUNT_SYMBOL || ((LA186_106 >= ALWAYS_SYMBOL) && (LA186_106 <= CACHE_SYMBOL)) || ((LA186_106 >= CHECKSUM_SYMBOL) && (LA186_106 <= COMMIT_SYMBOL)) || ((LA186_106 >= DEALLOCATE_SYMBOL) && (LA186_106 <= FOLLOWS_SYMBOL)) || ((LA186_106 >= GROUP_REPLICATION_SYMBOL) && (LA186_106 <= STOP_SYMBOL)) || ((LA186_106 >= UNICODE_SYMBOL) && (LA186_106 <= XA_SYMBOL)) || LA186_106 == SHUTDOWN_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == ROW_SYMBOL || ((LA186_106 >= AT_AT_SIGN_SYMBOL) && (LA186_106 <= AT_TEXT_SUFFIX)) || ((LA186_106 >= BIT_AND_SYMBOL) && (LA186_106 <= BIT_XOR_SYMBOL)) || LA186_106 == COUNT_SYMBOL || LA186_106 == EXISTS_SYMBOL || LA186_106 == GROUP_CONCAT_SYMBOL || LA186_106 == MAX_SYMBOL || LA186_106 == MIN_SYMBOL || LA186_106 == PARAM_MARKER || LA186_106 == STDDEV_SAMP_SYMBOL || LA186_106 == STD_SYMBOL || LA186_106 == SUM_SYMBOL || LA186_106 == VARIANCE_SYMBOL || LA186_106 == VAR_SAMP_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == SQL_BUFFER_RESULT_SYMBOL || LA186_106 == BINARY_SYMBOL || ((LA186_106 >= CASE_SYMBOL) && (LA186_106 <= CAST_SYMBOL)) || LA186_106 == CONVERT_SYMBOL || LA186_106 == MATCH_SYMBOL || LA186_106 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == SQL_NO_CACHE_SYMBOL || LA186_106 == ALL_SYMBOL || LA186_106 == DISTINCT_SYMBOL || LA186_106 == HIGH_PRIORITY_SYMBOL || ((LA186_106 >= SQL_BIG_RESULT_SYMBOL) && (LA186_106 <= SQL_SMALL_RESULT_SYMBOL)) || LA186_106 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == SQL_CACHE_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt186=1;
                		    }
                		    else if ( (LA186_106 == ACTION_SYMBOL || ((LA186_106 >= AFTER_SYMBOL) && (LA186_106 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA186_106 >= BINLOG_SYMBOL) && (LA186_106 <= CLASS_ORIGIN_SYMBOL)) || LA186_106 == CODE_SYMBOL || ((LA186_106 >= COLUMN_NAME_SYMBOL) && (LA186_106 <= DATETIME_SYMBOL)) || ((LA186_106 >= DEFAULT_AUTH_SYMBOL) && (LA186_106 <= GEOMETRY_SYMBOL)) || ((LA186_106 >= GRANTS_SYMBOL) && (LA186_106 <= HOSTS_SYMBOL)) || ((LA186_106 >= IDENTIFIED_SYMBOL) && (LA186_106 <= LEVEL_SYMBOL)) || ((LA186_106 >= LIST_SYMBOL) && (LA186_106 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA186_106 >= MAX_SIZE_SYMBOL) && (LA186_106 <= MESSAGE_TEXT_SYMBOL)) || LA186_106 == MIGRATE_SYMBOL || ((LA186_106 >= MIN_ROWS_SYMBOL) && (LA186_106 <= MODE_SYMBOL)) || ((LA186_106 >= MUTEX_SYMBOL) && (LA186_106 <= OFFSET_SYMBOL)) || ((LA186_106 >= ONE_SHOT_SYMBOL) && (LA186_106 <= PARTITIONS_SYMBOL)) || ((LA186_106 >= PHASE_SYMBOL) && (LA186_106 <= PLUGINS_SYMBOL)) || ((LA186_106 >= PRESERVE_SYMBOL) && (LA186_106 <= PROXY_SYMBOL)) || ((LA186_106 >= QUERY_SYMBOL) && (LA186_106 <= RETURNS_SYMBOL)) || ((LA186_106 >= ROLLUP_SYMBOL) && (LA186_106 <= ROWS_SYMBOL)) || LA186_106 == ROW_FORMAT_SYMBOL || ((LA186_106 >= RTREE_SYMBOL) && (LA186_106 <= SCHEMA_NAME_SYMBOL)) || ((LA186_106 >= SERIAL_SYMBOL) && (LA186_106 <= SHARE_SYMBOL)) || ((LA186_106 >= SLOW_SYMBOL) && (LA186_106 <= SNAPSHOT_SYMBOL)) || ((LA186_106 >= SOURCE_SYMBOL) && (LA186_106 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA186_106 >= SQL_THREAD_SYMBOL) && (LA186_106 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA186_106 >= SUBJECT_SYMBOL) && (LA186_106 <= TRIGGERS_SYMBOL)) || ((LA186_106 >= TYPES_SYMBOL) && (LA186_106 <= USER_RESOURCES_SYMBOL)) || ((LA186_106 >= USE_FRM_SYMBOL) && (LA186_106 <= WAIT_SYMBOL)) || LA186_106 == WORK_SYMBOL || ((LA186_106 >= X509_SYMBOL) && (LA186_106 <= XML_SYMBOL))))
                		    {
                		        alt186=1;
                		    }

                		}
                	}
                    break;
                case MAX_STATEMENT_TIME_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case EQUAL_OPERATOR:
                			{
                				{
                				   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                				    */
                				    int LA186_538 = LA(3);
                				    if ( ((SERVER_VERSION >= 50704 && SERVER_VERSION < 50708)))
                				    {
                				        alt186=1;
                				    }

                				}
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt186)
                {
            	case 1:
            	    // MySQL.g:885:46: select_option
            	    {
            	        FOLLOWPUSH(FOLLOW_select_option_in_create_select3263);
            	        select_option596=select_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_selectEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_option596.tree);

            	    }
            	    break;

            	default:
            	    goto loop186;	/* break out of the loop */
            	    break;
                }
            }
            loop186: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_select_item_list_in_create_select3267);
            select_item_list597=select_item_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_selectEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list597.tree);

            FOLLOWPUSH(FOLLOW_table_expression_in_create_select3269);
            table_expression598=table_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_selectEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_expression598.tree);

        }

    }

    // 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:888:1: create_tablespace : CREATE_SYMBOL ^ create_tablespace_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_tablespace_return
create_tablespace(pMySQLParser ctx)
{
    MySQLParser_create_tablespace_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL599;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL601;
    pANTLR3_COMMON_TOKEN    EOF602;
    MySQLParser_create_tablespace_tail_return create_tablespace_tail600;
    #undef	RETURN_TYPE_create_tablespace_tail600
    #define	RETURN_TYPE_create_tablespace_tail600 MySQLParser_create_tablespace_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL599_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL601_tree;
    pANTLR3_BASE_TREE EOF602_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL599       = NULL;
    SEMICOLON_SYMBOL601       = NULL;
    EOF602       = NULL;
    create_tablespace_tail600.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL599_tree   = NULL;
    SEMICOLON_SYMBOL601_tree   = NULL;
    EOF602_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:888:18: ( CREATE_SYMBOL ^ create_tablespace_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:889:2: CREATE_SYMBOL ^ create_tablespace_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL599 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_tablespace3279);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL599_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL599))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL599_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_create_tablespace_tail_in_create_tablespace3282);
            create_tablespace_tail600=create_tablespace_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_tablespace_tail600.tree);

            // MySQL.g:889:40: ( SEMICOLON_SYMBOL )?
            {
                int alt187=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt187=1;
                    	}
                        break;
                }

                switch (alt187)
                {
            	case 1:
            	    // MySQL.g:889:40: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL601 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_tablespace3284);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespaceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL601_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL601));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL601_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF602 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_tablespace3287);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespaceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF602_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF602));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF602_tree);
            }

        }

    }

    // 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 create_tablespace_tail
 * MySQL.g:892:1: create_tablespace_tail : TABLESPACE_SYMBOL tablespace_name ADD_SYMBOL DATAFILE_SYMBOL string_literal ( USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref )? ( tablespace_options )? ;
 */
static MySQLParser_create_tablespace_tail_return
create_tablespace_tail(pMySQLParser ctx)
{
    MySQLParser_create_tablespace_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL603;
    pANTLR3_COMMON_TOKEN    ADD_SYMBOL605;
    pANTLR3_COMMON_TOKEN    DATAFILE_SYMBOL606;
    pANTLR3_COMMON_TOKEN    USE_SYMBOL608;
    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL609;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL610;
    MySQLParser_tablespace_name_return tablespace_name604;
    #undef	RETURN_TYPE_tablespace_name604
    #define	RETURN_TYPE_tablespace_name604 MySQLParser_tablespace_name_return

    MySQLParser_string_literal_return string_literal607;
    #undef	RETURN_TYPE_string_literal607
    #define	RETURN_TYPE_string_literal607 MySQLParser_string_literal_return

    MySQLParser_logfile_group_ref_return logfile_group_ref611;
    #undef	RETURN_TYPE_logfile_group_ref611
    #define	RETURN_TYPE_logfile_group_ref611 MySQLParser_logfile_group_ref_return

    MySQLParser_tablespace_options_return tablespace_options612;
    #undef	RETURN_TYPE_tablespace_options612
    #define	RETURN_TYPE_tablespace_options612 MySQLParser_tablespace_options_return

    pANTLR3_BASE_TREE TABLESPACE_SYMBOL603_tree;
    pANTLR3_BASE_TREE ADD_SYMBOL605_tree;
    pANTLR3_BASE_TREE DATAFILE_SYMBOL606_tree;
    pANTLR3_BASE_TREE USE_SYMBOL608_tree;
    pANTLR3_BASE_TREE LOGFILE_SYMBOL609_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL610_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLESPACE_SYMBOL603       = NULL;
    ADD_SYMBOL605       = NULL;
    DATAFILE_SYMBOL606       = NULL;
    USE_SYMBOL608       = NULL;
    LOGFILE_SYMBOL609       = NULL;
    GROUP_SYMBOL610       = NULL;
    tablespace_name604.tree = NULL;

    string_literal607.tree = NULL;

    logfile_group_ref611.tree = NULL;

    tablespace_options612.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TABLESPACE_SYMBOL603_tree   = NULL;
    ADD_SYMBOL605_tree   = NULL;
    DATAFILE_SYMBOL606_tree   = NULL;
    USE_SYMBOL608_tree   = NULL;
    LOGFILE_SYMBOL609_tree   = NULL;
    GROUP_SYMBOL610_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:892:23: ( TABLESPACE_SYMBOL tablespace_name ADD_SYMBOL DATAFILE_SYMBOL string_literal ( USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref )? ( tablespace_options )? )
        // MySQL.g:893:2: TABLESPACE_SYMBOL tablespace_name ADD_SYMBOL DATAFILE_SYMBOL string_literal ( USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref )? ( tablespace_options )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TABLESPACE_SYMBOL603 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_create_tablespace_tail3296);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLESPACE_SYMBOL603_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL603));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL603_tree);
            }

            FOLLOWPUSH(FOLLOW_tablespace_name_in_create_tablespace_tail3298);
            tablespace_name604=tablespace_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, tablespace_name604.tree);

            ADD_SYMBOL605 = (pANTLR3_COMMON_TOKEN) MATCHT(ADD_SYMBOL, &FOLLOW_ADD_SYMBOL_in_create_tablespace_tail3300);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ADD_SYMBOL605_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ADD_SYMBOL605));
            ADAPTOR->addChild(ADAPTOR, root_0, ADD_SYMBOL605_tree);
            }

            DATAFILE_SYMBOL606 = (pANTLR3_COMMON_TOKEN) MATCHT(DATAFILE_SYMBOL, &FOLLOW_DATAFILE_SYMBOL_in_create_tablespace_tail3302);
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DATAFILE_SYMBOL606_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATAFILE_SYMBOL606));
            ADAPTOR->addChild(ADAPTOR, root_0, DATAFILE_SYMBOL606_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_create_tablespace_tail3304);
            string_literal607=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_tablespace_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal607.tree);

            // MySQL.g:894:3: ( USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref )?
            {
                int alt188=2;
                switch ( LA(1) )
                {
                    case USE_SYMBOL:
                    	{
                    		alt188=1;
                    	}
                        break;
                }

                switch (alt188)
                {
            	case 1:
            	    // MySQL.g:894:4: USE_SYMBOL LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref
            	    {
            	        USE_SYMBOL608 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_create_tablespace_tail3309);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        USE_SYMBOL608_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USE_SYMBOL608));
            	        ADAPTOR->addChild(ADAPTOR, root_0, USE_SYMBOL608_tree);
            	        }

            	        LOGFILE_SYMBOL609 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_create_tablespace_tail3311);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOGFILE_SYMBOL609_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL609));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL609_tree);
            	        }

            	        GROUP_SYMBOL610 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_create_tablespace_tail3313);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GROUP_SYMBOL610_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL610));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL610_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_logfile_group_ref_in_create_tablespace_tail3315);
            	        logfile_group_ref611=logfile_group_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logfile_group_ref611.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:894:63: ( tablespace_options )?
            {
                int alt189=2;
                switch ( LA(1) )
                {
                    case COMMENT_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case ENGINE_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FILE_BLOCK_SIZE_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case WAIT_SYMBOL:
                    	{
                    		alt189=1;
                    	}
                        break;
                }

                switch (alt189)
                {
            	case 1:
            	    // MySQL.g:894:63: tablespace_options
            	    {
            	        FOLLOWPUSH(FOLLOW_tablespace_options_in_create_tablespace_tail3319);
            	        tablespace_options612=tablespace_options(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_tablespace_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, tablespace_options612.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_tablespace_tailEx; /* Prevent compiler warnings */
    rulecreate_tablespace_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 create_tablespace_tail */

/**
 * $ANTLR start tablespace_options
 * MySQL.g:897:1: tablespace_options : ( tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* ) -> ^( TABLESPACE_OPTIONS_TOKEN tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* ) ;
 */
static MySQLParser_tablespace_options_return
tablespace_options(pMySQLParser ctx)
{
    MySQLParser_tablespace_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL614;
    MySQLParser_tablespace_option_return tablespace_option613;
    #undef	RETURN_TYPE_tablespace_option613
    #define	RETURN_TYPE_tablespace_option613 MySQLParser_tablespace_option_return

    MySQLParser_tablespace_option_return tablespace_option615;
    #undef	RETURN_TYPE_tablespace_option615
    #define	RETURN_TYPE_tablespace_option615 MySQLParser_tablespace_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL614_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_tablespace_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL614       = NULL;
    tablespace_option613.tree = NULL;

    tablespace_option615.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL614_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_tablespace_option   = NULL;
    #define CREATE_stream_tablespace_option  if (stream_tablespace_option == NULL) {stream_tablespace_option = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule tablespace_option"); }

    retval.tree  = NULL;

    {
        // MySQL.g:897:19: ( ( tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* ) -> ^( TABLESPACE_OPTIONS_TOKEN tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* ) )
        // MySQL.g:898:2: ( tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* )
        {
            // MySQL.g:898:2: ( tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* )
            // MySQL.g:898:3: tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )*
            {
                FOLLOWPUSH(FOLLOW_tablespace_option_in_tablespace_options3330);
                tablespace_option613=tablespace_option(ctx);

                FOLLOWPOP();
                if  (HASEXCEPTION())
                {
                    goto ruletablespace_optionsEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) { CREATE_stream_tablespace_option; stream_tablespace_option->add(stream_tablespace_option, tablespace_option613.tree, NULL); }

                // MySQL.g:898:21: ( ( COMMA_SYMBOL )? tablespace_option )*

                for (;;)
                {
                    int alt191=2;
                    switch ( LA(1) )
                    {
                    case COMMENT_SYMBOL:
                    case AUTOEXTEND_SIZE_SYMBOL:
                    case ENGINE_SYMBOL:
                    case EXTENT_SIZE_SYMBOL:
                    case FILE_BLOCK_SIZE_SYMBOL:
                    case INITIAL_SIZE_SYMBOL:
                    case MAX_SIZE_SYMBOL:
                    case NO_WAIT_SYMBOL:
                    case NODEGROUP_SYMBOL:
                    case STORAGE_SYMBOL:
                    case WAIT_SYMBOL:
                    case COMMA_SYMBOL:
                    	{
                    		alt191=1;
                    	}
                        break;

                    }

                    switch (alt191)
                    {
                	case 1:
                	    // MySQL.g:898:22: ( COMMA_SYMBOL )? tablespace_option
                	    {
                	        // MySQL.g:898:22: ( COMMA_SYMBOL )?
                	        {
                	            int alt190=2;
                	            switch ( LA(1) )
                	            {
                	                case COMMA_SYMBOL:
                	                	{
                	                		alt190=1;
                	                	}
                	                    break;
                	            }

                	            switch (alt190)
                	            {
                	        	case 1:
                	        	    // MySQL.g:898:22: COMMA_SYMBOL
                	        	    {
                	        	        COMMA_SYMBOL614 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_tablespace_options3333);
                	        	        if  (HASEXCEPTION())
                	        	        {
                	        	            goto ruletablespace_optionsEx;
                	        	        }
                	        	        if (HASFAILED())
                	        	        {
                	        	            return retval;
                	        	        }
                	        	         
                	        	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL614, NULL); }


                	        	    }
                	        	    break;

                	            }
                	        }

                	        FOLLOWPUSH(FOLLOW_tablespace_option_in_tablespace_options3336);
                	        tablespace_option615=tablespace_option(ctx);

                	        FOLLOWPOP();
                	        if  (HASEXCEPTION())
                	        {
                	            goto ruletablespace_optionsEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) { CREATE_stream_tablespace_option; stream_tablespace_option->add(stream_tablespace_option, tablespace_option615.tree, NULL); }

                	    }
                	    break;

                	default:
                	    goto loop191;	/* break out of the loop */
                	    break;
                    }
                }
                loop191: ; /* Jump out to here if this rule does not match */


            }


            /* AST REWRITE
             * elements          : tablespace_option, tablespace_option, 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;
            	// 899:3: -> ^( TABLESPACE_OPTIONS_TOKEN tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* )
            	{
            	    // MySQL.g:899:6: ^( TABLESPACE_OPTIONS_TOKEN tablespace_option ( ( COMMA_SYMBOL )? tablespace_option )* )
            	    {
            	        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, TABLESPACE_OPTIONS_TOKEN, (pANTLR3_UINT8)"TABLESPACE_OPTIONS_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_tablespace_option == NULL ? NULL : stream_tablespace_option->nextTree(stream_tablespace_option));

            	        // MySQL.g:899:51: ( ( COMMA_SYMBOL )? tablespace_option )*
            	        {
            	        	while ( (stream_tablespace_option != NULL && stream_tablespace_option->hasNext(stream_tablespace_option))  )
            	        	{
            	        		// MySQL.g:899:52: ( COMMA_SYMBOL )?
            	        		{
            	        			if ( (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)
            	        				);

            	        			}
            	        			if ( stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);

            	        		}

            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_tablespace_option == NULL ? NULL : stream_tablespace_option->nextTree(stream_tablespace_option));

            	        	}
            	        	if (stream_tablespace_option != NULL) stream_tablespace_option->reset(stream_tablespace_option);

            	        }

            	        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 ruletablespace_optionsEx; /* Prevent compiler warnings */
    ruletablespace_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 (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_tablespace_option != NULL) stream_tablespace_option->free(stream_tablespace_option);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end tablespace_options */

/**
 * $ANTLR start tablespace_option
 * MySQL.g:902:1: tablespace_option : ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | EXTENT_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref | ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) | COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal |{...}? FILE_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number );
 */
static MySQLParser_tablespace_option_return
tablespace_option(pMySQLParser ctx)
{
    MySQLParser_tablespace_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INITIAL_SIZE_SYMBOL616;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR617;
    pANTLR3_COMMON_TOKEN    AUTOEXTEND_SIZE_SYMBOL619;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR620;
    pANTLR3_COMMON_TOKEN    MAX_SIZE_SYMBOL622;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR623;
    pANTLR3_COMMON_TOKEN    EXTENT_SIZE_SYMBOL625;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR626;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL628;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR629;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL631;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL632;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR633;
    pANTLR3_COMMON_TOKEN    set635;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL636;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR637;
    pANTLR3_COMMON_TOKEN    FILE_BLOCK_SIZE_SYMBOL639;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR640;
    MySQLParser_size_number_return size_number618;
    #undef	RETURN_TYPE_size_number618
    #define	RETURN_TYPE_size_number618 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number621;
    #undef	RETURN_TYPE_size_number621
    #define	RETURN_TYPE_size_number621 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number624;
    #undef	RETURN_TYPE_size_number624
    #define	RETURN_TYPE_size_number624 MySQLParser_size_number_return

    MySQLParser_size_number_return size_number627;
    #undef	RETURN_TYPE_size_number627
    #define	RETURN_TYPE_size_number627 MySQLParser_size_number_return

    MySQLParser_real_ulong_number_return real_ulong_number630;
    #undef	RETURN_TYPE_real_ulong_number630
    #define	RETURN_TYPE_real_ulong_number630 MySQLParser_real_ulong_number_return

    MySQLParser_engine_ref_return engine_ref634;
    #undef	RETURN_TYPE_engine_ref634
    #define	RETURN_TYPE_engine_ref634 MySQLParser_engine_ref_return

    MySQLParser_string_literal_return string_literal638;
    #undef	RETURN_TYPE_string_literal638
    #define	RETURN_TYPE_string_literal638 MySQLParser_string_literal_return

    MySQLParser_size_number_return size_number641;
    #undef	RETURN_TYPE_size_number641
    #define	RETURN_TYPE_size_number641 MySQLParser_size_number_return

    pANTLR3_BASE_TREE INITIAL_SIZE_SYMBOL616_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR617_tree;
    pANTLR3_BASE_TREE AUTOEXTEND_SIZE_SYMBOL619_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR620_tree;
    pANTLR3_BASE_TREE MAX_SIZE_SYMBOL622_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR623_tree;
    pANTLR3_BASE_TREE EXTENT_SIZE_SYMBOL625_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR626_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL628_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR629_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL631_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL632_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR633_tree;
    pANTLR3_BASE_TREE set635_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL636_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR637_tree;
    pANTLR3_BASE_TREE FILE_BLOCK_SIZE_SYMBOL639_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR640_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INITIAL_SIZE_SYMBOL616       = NULL;
    EQUAL_OPERATOR617       = NULL;
    AUTOEXTEND_SIZE_SYMBOL619       = NULL;
    EQUAL_OPERATOR620       = NULL;
    MAX_SIZE_SYMBOL622       = NULL;
    EQUAL_OPERATOR623       = NULL;
    EXTENT_SIZE_SYMBOL625       = NULL;
    EQUAL_OPERATOR626       = NULL;
    NODEGROUP_SYMBOL628       = NULL;
    EQUAL_OPERATOR629       = NULL;
    STORAGE_SYMBOL631       = NULL;
    ENGINE_SYMBOL632       = NULL;
    EQUAL_OPERATOR633       = NULL;
    set635       = NULL;
    COMMENT_SYMBOL636       = NULL;
    EQUAL_OPERATOR637       = NULL;
    FILE_BLOCK_SIZE_SYMBOL639       = NULL;
    EQUAL_OPERATOR640       = NULL;
    size_number618.tree = NULL;

    size_number621.tree = NULL;

    size_number624.tree = NULL;

    size_number627.tree = NULL;

    real_ulong_number630.tree = NULL;

    engine_ref634.tree = NULL;

    string_literal638.tree = NULL;

    size_number641.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INITIAL_SIZE_SYMBOL616_tree   = NULL;
    EQUAL_OPERATOR617_tree   = NULL;
    AUTOEXTEND_SIZE_SYMBOL619_tree   = NULL;
    EQUAL_OPERATOR620_tree   = NULL;
    MAX_SIZE_SYMBOL622_tree   = NULL;
    EQUAL_OPERATOR623_tree   = NULL;
    EXTENT_SIZE_SYMBOL625_tree   = NULL;
    EQUAL_OPERATOR626_tree   = NULL;
    NODEGROUP_SYMBOL628_tree   = NULL;
    EQUAL_OPERATOR629_tree   = NULL;
    STORAGE_SYMBOL631_tree   = NULL;
    ENGINE_SYMBOL632_tree   = NULL;
    EQUAL_OPERATOR633_tree   = NULL;
    set635_tree   = NULL;
    COMMENT_SYMBOL636_tree   = NULL;
    EQUAL_OPERATOR637_tree   = NULL;
    FILE_BLOCK_SIZE_SYMBOL639_tree   = NULL;
    EQUAL_OPERATOR640_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:902:18: ( INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | EXTENT_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number | NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref | ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) | COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal |{...}? FILE_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number )

            ANTLR3_UINT32 alt201;

            alt201=9;

            switch ( LA(1) )
            {
            case INITIAL_SIZE_SYMBOL:
            	{
            		alt201=1;
            	}
                break;
            case AUTOEXTEND_SIZE_SYMBOL:
            	{
            		alt201=2;
            	}
                break;
            case MAX_SIZE_SYMBOL:
            	{
            		alt201=3;
            	}
                break;
            case EXTENT_SIZE_SYMBOL:
            	{
            		alt201=4;
            	}
                break;
            case NODEGROUP_SYMBOL:
            	{
            		alt201=5;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt201=6;
            	}
                break;
            case NO_WAIT_SYMBOL:
            case WAIT_SYMBOL:
            	{
            		alt201=7;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt201=8;
            	}
                break;
            case FILE_BLOCK_SIZE_SYMBOL:
            	{
            		alt201=9;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 201;
                EXCEPTION->state        = 0;


                goto ruletablespace_optionEx;

            }

            switch (alt201)
            {
        	case 1:
        	    // MySQL.g:903:2: INITIAL_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INITIAL_SIZE_SYMBOL616 = (pANTLR3_COMMON_TOKEN) MATCHT(INITIAL_SIZE_SYMBOL, &FOLLOW_INITIAL_SIZE_SYMBOL_in_tablespace_option3366);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INITIAL_SIZE_SYMBOL616_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INITIAL_SIZE_SYMBOL616));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INITIAL_SIZE_SYMBOL616_tree);
        	        }

        	        // MySQL.g:903:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt192=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt192=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt192)
        	            {
        	        	case 1:
        	        	    // MySQL.g:903:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR617 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3368);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR617_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR617));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR617_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3371);
        	        size_number618=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number618.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:904:4: AUTOEXTEND_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTOEXTEND_SIZE_SYMBOL619 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTOEXTEND_SIZE_SYMBOL, &FOLLOW_AUTOEXTEND_SIZE_SYMBOL_in_tablespace_option3376);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTOEXTEND_SIZE_SYMBOL619_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTOEXTEND_SIZE_SYMBOL619));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTOEXTEND_SIZE_SYMBOL619_tree);
        	        }

        	        // MySQL.g:904:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt193=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt193=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt193)
        	            {
        	        	case 1:
        	        	    // MySQL.g:904:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR620 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3378);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR620_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR620));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR620_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3381);
        	        size_number621=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number621.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:905:4: MAX_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SIZE_SYMBOL622 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SIZE_SYMBOL, &FOLLOW_MAX_SIZE_SYMBOL_in_tablespace_option3386);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_SIZE_SYMBOL622_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_SIZE_SYMBOL622));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_SIZE_SYMBOL622_tree);
        	        }

        	        // MySQL.g:905:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt194=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt194=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt194)
        	            {
        	        	case 1:
        	        	    // MySQL.g:905:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR623 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3388);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR623_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR623));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR623_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3391);
        	        size_number624=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number624.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:906:4: EXTENT_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTENT_SIZE_SYMBOL625 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENT_SIZE_SYMBOL, &FOLLOW_EXTENT_SIZE_SYMBOL_in_tablespace_option3396);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTENT_SIZE_SYMBOL625_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENT_SIZE_SYMBOL625));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENT_SIZE_SYMBOL625_tree);
        	        }

        	        // MySQL.g:906:23: ( EQUAL_OPERATOR )?
        	        {
        	            int alt195=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt195=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt195)
        	            {
        	        	case 1:
        	        	    // MySQL.g:906:23: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR626 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3398);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR626_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR626));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR626_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3401);
        	        size_number627=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number627.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:907:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NODEGROUP_SYMBOL628 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_tablespace_option3406);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NODEGROUP_SYMBOL628_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL628));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL628_tree);
        	        }

        	        // MySQL.g:907:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt196=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt196=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt196)
        	            {
        	        	case 1:
        	        	    // MySQL.g:907:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR629 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3408);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR629_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR629));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR629_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_tablespace_option3411);
        	        real_ulong_number630=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number630.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:908:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:908:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt197=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt197=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt197)
        	            {
        	        	case 1:
        	        	    // MySQL.g:908:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL631 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_tablespace_option3416);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STORAGE_SYMBOL631_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL631));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL631_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL632 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_tablespace_option3419);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL632_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL632));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL632_tree);
        	        }

        	        // MySQL.g:908:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt198=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt198=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt198)
        	            {
        	        	case 1:
        	        	    // MySQL.g:908:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR633 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3421);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR633_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR633));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR633_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_tablespace_option3424);
        	        engine_ref634=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref634.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:909:4: ( WAIT_SYMBOL | NO_WAIT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set635=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == NO_WAIT_SYMBOL || LA(1) == WAIT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set635))
        	            );
        	            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 ruletablespace_optionEx;
        	        }


        	    }
        	    break;
        	case 8:
        	    // MySQL.g:910:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL636 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_tablespace_option3440);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL636_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL636));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL636_tree);
        	        }

        	        // MySQL.g:910:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt199=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt199=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt199)
        	            {
        	        	case 1:
        	        	    // MySQL.g:910:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR637 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3442);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR637_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR637));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR637_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_tablespace_option3445);
        	        string_literal638=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal638.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:911:4: {...}? FILE_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? size_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50707)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50707";
        	                EXCEPTION->ruleName	 = (void *)"tablespace_option";


        	        }

        	        FILE_BLOCK_SIZE_SYMBOL639 = (pANTLR3_COMMON_TOKEN) MATCHT(FILE_BLOCK_SIZE_SYMBOL, &FOLLOW_FILE_BLOCK_SIZE_SYMBOL_in_tablespace_option3452);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FILE_BLOCK_SIZE_SYMBOL639_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FILE_BLOCK_SIZE_SYMBOL639));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FILE_BLOCK_SIZE_SYMBOL639_tree);
        	        }

        	        // MySQL.g:911:54: ( EQUAL_OPERATOR )?
        	        {
        	            int alt200=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt200=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt200)
        	            {
        	        	case 1:
        	        	    // MySQL.g:911:54: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR640 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_tablespace_option3454);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletablespace_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR640_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR640));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR640_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_size_number_in_tablespace_option3457);
        	        size_number641=size_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletablespace_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, size_number641.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:914:1: create_trigger : create_with_definer create_trigger_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_trigger_return
create_trigger(pMySQLParser ctx)
{
    MySQLParser_create_trigger_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL644;
    pANTLR3_COMMON_TOKEN    EOF645;
    MySQLParser_create_with_definer_return create_with_definer642;
    #undef	RETURN_TYPE_create_with_definer642
    #define	RETURN_TYPE_create_with_definer642 MySQLParser_create_with_definer_return

    MySQLParser_create_trigger_tail_return create_trigger_tail643;
    #undef	RETURN_TYPE_create_trigger_tail643
    #define	RETURN_TYPE_create_trigger_tail643 MySQLParser_create_trigger_tail_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL644_tree;
    pANTLR3_BASE_TREE EOF645_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL644       = NULL;
    EOF645       = NULL;
    create_with_definer642.tree = NULL;

    create_trigger_tail643.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL644_tree   = NULL;
    EOF645_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:914:15: ( create_with_definer create_trigger_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:915:2: create_with_definer create_trigger_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_create_with_definer_in_create_trigger3467);
            create_with_definer642=create_with_definer(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_with_definer642.tree);

            FOLLOWPUSH(FOLLOW_create_trigger_tail_in_create_trigger3469);
            create_trigger_tail643=create_trigger_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_trigger_tail643.tree);

            // MySQL.g:915:42: ( SEMICOLON_SYMBOL )?
            {
                int alt202=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt202=1;
                    	}
                        break;
                }

                switch (alt202)
                {
            	case 1:
            	    // MySQL.g:915:42: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL644 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_trigger3471);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_triggerEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL644_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL644));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL644_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF645 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_trigger3474);
            if  (HASEXCEPTION())
            {
                goto rulecreate_triggerEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF645_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF645));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF645_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_trigger_tail
 * MySQL.g:918:1: create_trigger_tail : TRIGGER_SYMBOL trigger_name ( BEFORE_SYMBOL | AFTER_SYMBOL ) ( INSERT_SYMBOL | UPDATE_SYMBOL | DELETE_SYMBOL ) ON_SYMBOL table_ref FOR_SYMBOL EACH_SYMBOL ROW_SYMBOL ( trigger_follows_precedes_clause )? compound_statement ;
 */
static MySQLParser_create_trigger_tail_return
create_trigger_tail(pMySQLParser ctx)
{
    MySQLParser_create_trigger_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL646;
    pANTLR3_COMMON_TOKEN    set648;
    pANTLR3_COMMON_TOKEN    set649;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL650;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL652;
    pANTLR3_COMMON_TOKEN    EACH_SYMBOL653;
    pANTLR3_COMMON_TOKEN    ROW_SYMBOL654;
    MySQLParser_trigger_name_return trigger_name647;
    #undef	RETURN_TYPE_trigger_name647
    #define	RETURN_TYPE_trigger_name647 MySQLParser_trigger_name_return

    MySQLParser_table_ref_return table_ref651;
    #undef	RETURN_TYPE_table_ref651
    #define	RETURN_TYPE_table_ref651 MySQLParser_table_ref_return

    MySQLParser_trigger_follows_precedes_clause_return trigger_follows_precedes_clause655;
    #undef	RETURN_TYPE_trigger_follows_precedes_clause655
    #define	RETURN_TYPE_trigger_follows_precedes_clause655 MySQLParser_trigger_follows_precedes_clause_return

    MySQLParser_compound_statement_return compound_statement656;
    #undef	RETURN_TYPE_compound_statement656
    #define	RETURN_TYPE_compound_statement656 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE TRIGGER_SYMBOL646_tree;
    pANTLR3_BASE_TREE set648_tree;
    pANTLR3_BASE_TREE set649_tree;
    pANTLR3_BASE_TREE ON_SYMBOL650_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL652_tree;
    pANTLR3_BASE_TREE EACH_SYMBOL653_tree;
    pANTLR3_BASE_TREE ROW_SYMBOL654_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRIGGER_SYMBOL646       = NULL;
    set648       = NULL;
    set649       = NULL;
    ON_SYMBOL650       = NULL;
    FOR_SYMBOL652       = NULL;
    EACH_SYMBOL653       = NULL;
    ROW_SYMBOL654       = NULL;
    trigger_name647.tree = NULL;

    table_ref651.tree = NULL;

    trigger_follows_precedes_clause655.tree = NULL;

    compound_statement656.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRIGGER_SYMBOL646_tree   = NULL;
    set648_tree   = NULL;
    set649_tree   = NULL;
    ON_SYMBOL650_tree   = NULL;
    FOR_SYMBOL652_tree   = NULL;
    EACH_SYMBOL653_tree   = NULL;
    ROW_SYMBOL654_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:918:20: ( TRIGGER_SYMBOL trigger_name ( BEFORE_SYMBOL | AFTER_SYMBOL ) ( INSERT_SYMBOL | UPDATE_SYMBOL | DELETE_SYMBOL ) ON_SYMBOL table_ref FOR_SYMBOL EACH_SYMBOL ROW_SYMBOL ( trigger_follows_precedes_clause )? compound_statement )
        // MySQL.g:919:2: TRIGGER_SYMBOL trigger_name ( BEFORE_SYMBOL | AFTER_SYMBOL ) ( INSERT_SYMBOL | UPDATE_SYMBOL | DELETE_SYMBOL ) ON_SYMBOL table_ref FOR_SYMBOL EACH_SYMBOL ROW_SYMBOL ( trigger_follows_precedes_clause )? compound_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TRIGGER_SYMBOL646 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_create_trigger_tail3483);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRIGGER_SYMBOL646_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL646));
            ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL646_tree);
            }

            FOLLOWPUSH(FOLLOW_trigger_name_in_create_trigger_tail3485);
            trigger_name647=trigger_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trigger_name647.tree);

            set648=(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, set648))
                );
                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_trigger_tailEx;
            }


            set649=(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, set649))
                );
                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_trigger_tailEx;
            }


            ON_SYMBOL650 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_create_trigger_tail3509);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL650_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL650));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL650_tree);
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_create_trigger_tail3511);
            table_ref651=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref651.tree);

            FOR_SYMBOL652 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_create_trigger_tail3513);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL652_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL652));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL652_tree);
            }

            EACH_SYMBOL653 = (pANTLR3_COMMON_TOKEN) MATCHT(EACH_SYMBOL, &FOLLOW_EACH_SYMBOL_in_create_trigger_tail3515);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EACH_SYMBOL653_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EACH_SYMBOL653));
            ADAPTOR->addChild(ADAPTOR, root_0, EACH_SYMBOL653_tree);
            }

            ROW_SYMBOL654 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_SYMBOL, &FOLLOW_ROW_SYMBOL_in_create_trigger_tail3517);
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ROW_SYMBOL654_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_SYMBOL654));
            ADAPTOR->addChild(ADAPTOR, root_0, ROW_SYMBOL654_tree);
            }

            // MySQL.g:920:57: ( trigger_follows_precedes_clause )?
            {
                int alt203=2;
                switch ( LA(1) )
                {
                    case FOLLOWS_SYMBOL:
                    case PRECEDES_SYMBOL:
                    	{
                    		alt203=1;
                    	}
                        break;
                }

                switch (alt203)
                {
            	case 1:
            	    // MySQL.g:920:57: trigger_follows_precedes_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_trigger_follows_precedes_clause_in_create_trigger_tail3519);
            	        trigger_follows_precedes_clause655=trigger_follows_precedes_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_trigger_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trigger_follows_precedes_clause655.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_compound_statement_in_create_trigger_tail3522);
            compound_statement656=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_trigger_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement656.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_trigger_tailEx; /* Prevent compiler warnings */
    rulecreate_trigger_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 create_trigger_tail */

/**
 * $ANTLR start trigger_follows_precedes_clause
 * MySQL.g:923:1: trigger_follows_precedes_clause :{...}? ( FOLLOWS_SYMBOL | PRECEDES_SYMBOL ) text_or_identifier ;
 */
static MySQLParser_trigger_follows_precedes_clause_return
trigger_follows_precedes_clause(pMySQLParser ctx)
{
    MySQLParser_trigger_follows_precedes_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set657;
    MySQLParser_text_or_identifier_return text_or_identifier658;
    #undef	RETURN_TYPE_text_or_identifier658
    #define	RETURN_TYPE_text_or_identifier658 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE set657_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set657       = NULL;
    text_or_identifier658.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set657_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:923:32: ({...}? ( FOLLOWS_SYMBOL | PRECEDES_SYMBOL ) text_or_identifier )
        // MySQL.g:924:2: {...}? ( FOLLOWS_SYMBOL | PRECEDES_SYMBOL ) text_or_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50700)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50700";
                    EXCEPTION->ruleName	 = (void *)"trigger_follows_precedes_clause";


            }

            set657=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == FOLLOWS_SYMBOL || LA(1) == PRECEDES_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set657))
                );
                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 ruletrigger_follows_precedes_clauseEx;
            }


            FOLLOWPUSH(FOLLOW_text_or_identifier_in_trigger_follows_precedes_clause3541);
            text_or_identifier658=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletrigger_follows_precedes_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier658.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletrigger_follows_precedes_clauseEx; /* Prevent compiler warnings */
    ruletrigger_follows_precedes_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 trigger_follows_precedes_clause */

/**
 * $ANTLR start create_view
 * MySQL.g:927:1: create_view : CREATE_SYMBOL ^ ( OR_SYMBOL REPLACE_SYMBOL )? ( view_algorithm )? ( definer_clause )? create_view_tail ( SEMICOLON_SYMBOL )? EOF ;
 */
static MySQLParser_create_view_return
create_view(pMySQLParser ctx)
{
    MySQLParser_create_view_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL659;
    pANTLR3_COMMON_TOKEN    OR_SYMBOL660;
    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL661;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL665;
    pANTLR3_COMMON_TOKEN    EOF666;
    MySQLParser_view_algorithm_return view_algorithm662;
    #undef	RETURN_TYPE_view_algorithm662
    #define	RETURN_TYPE_view_algorithm662 MySQLParser_view_algorithm_return

    MySQLParser_definer_clause_return definer_clause663;
    #undef	RETURN_TYPE_definer_clause663
    #define	RETURN_TYPE_definer_clause663 MySQLParser_definer_clause_return

    MySQLParser_create_view_tail_return create_view_tail664;
    #undef	RETURN_TYPE_create_view_tail664
    #define	RETURN_TYPE_create_view_tail664 MySQLParser_create_view_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL659_tree;
    pANTLR3_BASE_TREE OR_SYMBOL660_tree;
    pANTLR3_BASE_TREE REPLACE_SYMBOL661_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL665_tree;
    pANTLR3_BASE_TREE EOF666_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL659       = NULL;
    OR_SYMBOL660       = NULL;
    REPLACE_SYMBOL661       = NULL;
    SEMICOLON_SYMBOL665       = NULL;
    EOF666       = NULL;
    view_algorithm662.tree = NULL;

    definer_clause663.tree = NULL;

    create_view_tail664.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL659_tree   = NULL;
    OR_SYMBOL660_tree   = NULL;
    REPLACE_SYMBOL661_tree   = NULL;
    SEMICOLON_SYMBOL665_tree   = NULL;
    EOF666_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:927:12: ( CREATE_SYMBOL ^ ( OR_SYMBOL REPLACE_SYMBOL )? ( view_algorithm )? ( definer_clause )? create_view_tail ( SEMICOLON_SYMBOL )? EOF )
        // MySQL.g:928:2: CREATE_SYMBOL ^ ( OR_SYMBOL REPLACE_SYMBOL )? ( view_algorithm )? ( definer_clause )? create_view_tail ( SEMICOLON_SYMBOL )? EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL659 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_view3553);
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL659_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL659))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL659_tree, root_0));
            }

            // MySQL.g:928:17: ( OR_SYMBOL REPLACE_SYMBOL )?
            {
                int alt204=2;
                switch ( LA(1) )
                {
                    case OR_SYMBOL:
                    	{
                    		alt204=1;
                    	}
                        break;
                }

                switch (alt204)
                {
            	case 1:
            	    // MySQL.g:928:18: OR_SYMBOL REPLACE_SYMBOL
            	    {
            	        OR_SYMBOL660 = (pANTLR3_COMMON_TOKEN) MATCHT(OR_SYMBOL, &FOLLOW_OR_SYMBOL_in_create_view3557);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OR_SYMBOL660_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OR_SYMBOL660));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OR_SYMBOL660_tree);
            	        }

            	        REPLACE_SYMBOL661 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_create_view3559);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        REPLACE_SYMBOL661_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL661));
            	        ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL661_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:928:45: ( view_algorithm )?
            {
                int alt205=2;
                switch ( LA(1) )
                {
                    case ALGORITHM_SYMBOL:
                    	{
                    		alt205=1;
                    	}
                        break;
                }

                switch (alt205)
                {
            	case 1:
            	    // MySQL.g:928:45: view_algorithm
            	    {
            	        FOLLOWPUSH(FOLLOW_view_algorithm_in_create_view3563);
            	        view_algorithm662=view_algorithm(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_algorithm662.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:928:62: ( definer_clause )?
            {
                int alt206=2;
                switch ( LA(1) )
                {
                    case DEFINER_SYMBOL:
                    	{
                    		alt206=1;
                    	}
                        break;
                }

                switch (alt206)
                {
            	case 1:
            	    // MySQL.g:928:62: definer_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_definer_clause_in_create_view3567);
            	        definer_clause663=definer_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, definer_clause663.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_create_view_tail_in_create_view3570);
            create_view_tail664=create_view_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_view_tail664.tree);

            // MySQL.g:928:95: ( SEMICOLON_SYMBOL )?
            {
                int alt207=2;
                switch ( LA(1) )
                {
                    case SEMICOLON_SYMBOL:
                    	{
                    		alt207=1;
                    	}
                        break;
                }

                switch (alt207)
                {
            	case 1:
            	    // MySQL.g:928:95: SEMICOLON_SYMBOL
            	    {
            	        SEMICOLON_SYMBOL665 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_create_view3572);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_viewEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SEMICOLON_SYMBOL665_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL665));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL665_tree);
            	        }

            	    }
            	    break;

                }
            }

            EOF666 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_create_view3575);
            if  (HASEXCEPTION())
            {
                goto rulecreate_viewEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF666_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF666));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF666_tree);
            }

        }

    }

    // 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 create_view_tail
 * MySQL.g:931:1: create_view_tail : ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL view_name ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )? ;
 */
static MySQLParser_create_view_tail_return
create_view_tail(pMySQLParser ctx)
{
    MySQLParser_create_view_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SQL_SYMBOL667;
    pANTLR3_COMMON_TOKEN    SECURITY_SYMBOL668;
    pANTLR3_COMMON_TOKEN    set669;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL670;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL673;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL675;
    pANTLR3_COMMON_TOKEN    set676;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL677;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL678;
    MySQLParser_view_name_return view_name671;
    #undef	RETURN_TYPE_view_name671
    #define	RETURN_TYPE_view_name671 MySQLParser_view_name_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses672;
    #undef	RETURN_TYPE_identifier_list_with_parentheses672
    #define	RETURN_TYPE_identifier_list_with_parentheses672 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_select_statement_return select_statement674;
    #undef	RETURN_TYPE_select_statement674
    #define	RETURN_TYPE_select_statement674 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE SQL_SYMBOL667_tree;
    pANTLR3_BASE_TREE SECURITY_SYMBOL668_tree;
    pANTLR3_BASE_TREE set669_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL670_tree;
    pANTLR3_BASE_TREE AS_SYMBOL673_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL675_tree;
    pANTLR3_BASE_TREE set676_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL677_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL678_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQL_SYMBOL667       = NULL;
    SECURITY_SYMBOL668       = NULL;
    set669       = NULL;
    VIEW_SYMBOL670       = NULL;
    AS_SYMBOL673       = NULL;
    WITH_SYMBOL675       = NULL;
    set676       = NULL;
    CHECK_SYMBOL677       = NULL;
    OPTION_SYMBOL678       = NULL;
    view_name671.tree = NULL;

    identifier_list_with_parentheses672.tree = NULL;

    select_statement674.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQL_SYMBOL667_tree   = NULL;
    SECURITY_SYMBOL668_tree   = NULL;
    set669_tree   = NULL;
    VIEW_SYMBOL670_tree   = NULL;
    AS_SYMBOL673_tree   = NULL;
    WITH_SYMBOL675_tree   = NULL;
    set676_tree   = NULL;
    CHECK_SYMBOL677_tree   = NULL;
    OPTION_SYMBOL678_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:931:17: ( ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL view_name ( identifier_list_with_parentheses )? AS_SYMBOL select_statement ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )? )
        // MySQL.g:932:2: ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )? VIEW_SYMBOL view_name ( 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:932:2: ( SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL ) )?
            {
                int alt208=2;
                switch ( LA(1) )
                {
                    case SQL_SYMBOL:
                    	{
                    		alt208=1;
                    	}
                        break;
                }

                switch (alt208)
                {
            	case 1:
            	    // MySQL.g:932:3: SQL_SYMBOL SECURITY_SYMBOL ( DEFINER_SYMBOL | INVOKER_SYMBOL )
            	    {
            	        SQL_SYMBOL667 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_SYMBOL, &FOLLOW_SQL_SYMBOL_in_create_view_tail3585);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQL_SYMBOL667_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_SYMBOL667));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_SYMBOL667_tree);
            	        }

            	        SECURITY_SYMBOL668 = (pANTLR3_COMMON_TOKEN) MATCHT(SECURITY_SYMBOL, &FOLLOW_SECURITY_SYMBOL_in_create_view_tail3587);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SECURITY_SYMBOL668_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECURITY_SYMBOL668));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SECURITY_SYMBOL668_tree);
            	        }

            	        set669=(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, set669))
            	            );
            	            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_view_tailEx;
            	        }


            	    }
            	    break;

                }
            }

            VIEW_SYMBOL670 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_create_view_tail3601);
            if  (HASEXCEPTION())
            {
                goto rulecreate_view_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            VIEW_SYMBOL670_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL670));
            ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL670_tree);
            }

            FOLLOWPUSH(FOLLOW_view_name_in_create_view_tail3603);
            view_name671=view_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_view_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_name671.tree);

            // MySQL.g:933:25: ( identifier_list_with_parentheses )?
            {
                int alt209=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt209=1;
                    	}
                        break;
                }

                switch (alt209)
                {
            	case 1:
            	    // MySQL.g:933:25: identifier_list_with_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_create_view_tail3605);
            	        identifier_list_with_parentheses672=identifier_list_with_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses672.tree);

            	    }
            	    break;

                }
            }

            AS_SYMBOL673 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_create_view_tail3610);
            if  (HASEXCEPTION())
            {
                goto rulecreate_view_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AS_SYMBOL673_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL673));
            ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL673_tree);
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_create_view_tail3612);
            select_statement674=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_view_tailEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement674.tree);

            // MySQL.g:935:3: ( WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL )?
            {
                int alt211=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt211=1;
                    	}
                        break;
                }

                switch (alt211)
                {
            	case 1:
            	    // MySQL.g:935:4: WITH_SYMBOL ( CASCADED_SYMBOL | LOCAL_SYMBOL )? CHECK_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL675 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_create_view_tail3617);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL675_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL675));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL675_tree);
            	        }

            	        // MySQL.g:935:16: ( CASCADED_SYMBOL | LOCAL_SYMBOL )?
            	        {
            	            int alt210=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADED_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                	{
            	                		alt210=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt210)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set676=(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, set676))
            	        	            );
            	        	            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_view_tailEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	        CHECK_SYMBOL677 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_create_view_tail3628);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CHECK_SYMBOL677_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL677));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL677_tree);
            	        }

            	        OPTION_SYMBOL678 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_create_view_tail3630);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_view_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL678_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL678));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL678_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecreate_view_tailEx; /* Prevent compiler warnings */
    rulecreate_view_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 create_view_tail */

/**
 * $ANTLR start view_replace_or_algorithm
 * MySQL.g:938: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_SYMBOL679;
    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL680;
    MySQLParser_view_algorithm_return view_algorithm681;
    #undef	RETURN_TYPE_view_algorithm681
    #define	RETURN_TYPE_view_algorithm681 MySQLParser_view_algorithm_return

    MySQLParser_view_algorithm_return view_algorithm682;
    #undef	RETURN_TYPE_view_algorithm682
    #define	RETURN_TYPE_view_algorithm682 MySQLParser_view_algorithm_return

    pANTLR3_BASE_TREE OR_SYMBOL679_tree;
    pANTLR3_BASE_TREE REPLACE_SYMBOL680_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OR_SYMBOL679       = NULL;
    REPLACE_SYMBOL680       = NULL;
    view_algorithm681.tree = NULL;

    view_algorithm682.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OR_SYMBOL679_tree   = NULL;
    REPLACE_SYMBOL680_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:938:26: ( OR_SYMBOL REPLACE_SYMBOL ( view_algorithm )? | view_algorithm )

            ANTLR3_UINT32 alt213;

            alt213=2;

            switch ( LA(1) )
            {
            case OR_SYMBOL:
            	{
            		alt213=1;
            	}
                break;
            case ALGORITHM_SYMBOL:
            	{
            		alt213=2;
            	}
                break;

            default:
                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 ruleview_replace_or_algorithmEx;

            }

            switch (alt213)
            {
        	case 1:
        	    // MySQL.g:939:2: OR_SYMBOL REPLACE_SYMBOL ( view_algorithm )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OR_SYMBOL679 = (pANTLR3_COMMON_TOKEN) MATCHT(OR_SYMBOL, &FOLLOW_OR_SYMBOL_in_view_replace_or_algorithm3641);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OR_SYMBOL679_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OR_SYMBOL679));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OR_SYMBOL679_tree);
        	        }

        	        REPLACE_SYMBOL680 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_view_replace_or_algorithm3643);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLACE_SYMBOL680_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL680));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL680_tree);
        	        }

        	        // MySQL.g:939:27: ( view_algorithm )?
        	        {
        	            int alt212=2;
        	            switch ( LA(1) )
        	            {
        	                case ALGORITHM_SYMBOL:
        	                	{
        	                		alt212=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt212)
        	            {
        	        	case 1:
        	        	    // MySQL.g:939:27: view_algorithm
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_view_algorithm_in_view_replace_or_algorithm3645);
        	        	        view_algorithm681=view_algorithm(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleview_replace_or_algorithmEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_algorithm681.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:940:4: view_algorithm
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_view_algorithm_in_view_replace_or_algorithm3651);
        	        view_algorithm682=view_algorithm(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleview_replace_or_algorithmEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_algorithm682.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:943: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_SYMBOL683;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR684;
    pANTLR3_COMMON_TOKEN    set685;

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL683_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR684_tree;
    pANTLR3_BASE_TREE set685_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL683       = NULL;
    EQUAL_OPERATOR684       = NULL;
    set685       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALGORITHM_SYMBOL683_tree   = NULL;
    EQUAL_OPERATOR684_tree   = NULL;
    set685_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:943:15: ( ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL ) )
        // MySQL.g:944:2: ALGORITHM_SYMBOL EQUAL_OPERATOR ( UNDEFINED_SYMBOL | MERGE_SYMBOL | TEMPTABLE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALGORITHM_SYMBOL683 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_view_algorithm3660);
            if  (HASEXCEPTION())
            {
                goto ruleview_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALGORITHM_SYMBOL683_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALGORITHM_SYMBOL683));
            ADAPTOR->addChild(ADAPTOR, root_0, ALGORITHM_SYMBOL683_tree);
            }

            EQUAL_OPERATOR684 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_view_algorithm3662);
            if  (HASEXCEPTION())
            {
                goto ruleview_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR684_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR684));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR684_tree);
            }

            set685=(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, set685))
                );
                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:949:1: drop_statement : DROP_SYMBOL ^ ( DATABASE_SYMBOL ( if_exists )? schema_ref |{...}? EVENT_SYMBOL ( if_exists )? event_ref | ( FUNCTION_SYMBOL ( if_exists )? function_ref | PROCEDURE_SYMBOL ( if_exists )? procedure_ref ) | ( online_option )? INDEX_SYMBOL index_ref ON_SYMBOL table_ref ( index_lock_algorithm )? | LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )? | SERVER_SYMBOL ( if_exists )? server_ref | ( TEMPORARY_SYMBOL )? ( TABLE_SYMBOL | TABLES_SYMBOL ) ( if_exists )? table_ref_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? | TABLESPACE_SYMBOL tablespace_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )? | TRIGGER_SYMBOL ( if_exists )? trigger_ref | VIEW_SYMBOL ( if_exists )? view_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_SYMBOL686;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL687;
    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL690;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL693;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL696;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL700;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL702;
    pANTLR3_COMMON_TOKEN    LOGFILE_SYMBOL705;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL706;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL709;
    pANTLR3_COMMON_TOKEN    SERVER_SYMBOL711;
    pANTLR3_COMMON_TOKEN    TEMPORARY_SYMBOL714;
    pANTLR3_COMMON_TOKEN    set715;
    pANTLR3_COMMON_TOKEN    set718;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL719;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL722;
    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL724;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL727;
    pANTLR3_COMMON_TOKEN    set730;
    MySQLParser_if_exists_return if_exists688;
    #undef	RETURN_TYPE_if_exists688
    #define	RETURN_TYPE_if_exists688 MySQLParser_if_exists_return

    MySQLParser_schema_ref_return schema_ref689;
    #undef	RETURN_TYPE_schema_ref689
    #define	RETURN_TYPE_schema_ref689 MySQLParser_schema_ref_return

    MySQLParser_if_exists_return if_exists691;
    #undef	RETURN_TYPE_if_exists691
    #define	RETURN_TYPE_if_exists691 MySQLParser_if_exists_return

    MySQLParser_event_ref_return event_ref692;
    #undef	RETURN_TYPE_event_ref692
    #define	RETURN_TYPE_event_ref692 MySQLParser_event_ref_return

    MySQLParser_if_exists_return if_exists694;
    #undef	RETURN_TYPE_if_exists694
    #define	RETURN_TYPE_if_exists694 MySQLParser_if_exists_return

    MySQLParser_function_ref_return function_ref695;
    #undef	RETURN_TYPE_function_ref695
    #define	RETURN_TYPE_function_ref695 MySQLParser_function_ref_return

    MySQLParser_if_exists_return if_exists697;
    #undef	RETURN_TYPE_if_exists697
    #define	RETURN_TYPE_if_exists697 MySQLParser_if_exists_return

    MySQLParser_procedure_ref_return procedure_ref698;
    #undef	RETURN_TYPE_procedure_ref698
    #define	RETURN_TYPE_procedure_ref698 MySQLParser_procedure_ref_return

    MySQLParser_online_option_return online_option699;
    #undef	RETURN_TYPE_online_option699
    #define	RETURN_TYPE_online_option699 MySQLParser_online_option_return

    MySQLParser_index_ref_return index_ref701;
    #undef	RETURN_TYPE_index_ref701
    #define	RETURN_TYPE_index_ref701 MySQLParser_index_ref_return

    MySQLParser_table_ref_return table_ref703;
    #undef	RETURN_TYPE_table_ref703
    #define	RETURN_TYPE_table_ref703 MySQLParser_table_ref_return

    MySQLParser_index_lock_algorithm_return index_lock_algorithm704;
    #undef	RETURN_TYPE_index_lock_algorithm704
    #define	RETURN_TYPE_index_lock_algorithm704 MySQLParser_index_lock_algorithm_return

    MySQLParser_logfile_group_ref_return logfile_group_ref707;
    #undef	RETURN_TYPE_logfile_group_ref707
    #define	RETURN_TYPE_logfile_group_ref707 MySQLParser_logfile_group_ref_return

    MySQLParser_drop_logfile_group_option_return drop_logfile_group_option708;
    #undef	RETURN_TYPE_drop_logfile_group_option708
    #define	RETURN_TYPE_drop_logfile_group_option708 MySQLParser_drop_logfile_group_option_return

    MySQLParser_drop_logfile_group_option_return drop_logfile_group_option710;
    #undef	RETURN_TYPE_drop_logfile_group_option710
    #define	RETURN_TYPE_drop_logfile_group_option710 MySQLParser_drop_logfile_group_option_return

    MySQLParser_if_exists_return if_exists712;
    #undef	RETURN_TYPE_if_exists712
    #define	RETURN_TYPE_if_exists712 MySQLParser_if_exists_return

    MySQLParser_server_ref_return server_ref713;
    #undef	RETURN_TYPE_server_ref713
    #define	RETURN_TYPE_server_ref713 MySQLParser_server_ref_return

    MySQLParser_if_exists_return if_exists716;
    #undef	RETURN_TYPE_if_exists716
    #define	RETURN_TYPE_if_exists716 MySQLParser_if_exists_return

    MySQLParser_table_ref_list_return table_ref_list717;
    #undef	RETURN_TYPE_table_ref_list717
    #define	RETURN_TYPE_table_ref_list717 MySQLParser_table_ref_list_return

    MySQLParser_tablespace_ref_return tablespace_ref720;
    #undef	RETURN_TYPE_tablespace_ref720
    #define	RETURN_TYPE_tablespace_ref720 MySQLParser_tablespace_ref_return

    MySQLParser_drop_logfile_group_option_return drop_logfile_group_option721;
    #undef	RETURN_TYPE_drop_logfile_group_option721
    #define	RETURN_TYPE_drop_logfile_group_option721 MySQLParser_drop_logfile_group_option_return

    MySQLParser_drop_logfile_group_option_return drop_logfile_group_option723;
    #undef	RETURN_TYPE_drop_logfile_group_option723
    #define	RETURN_TYPE_drop_logfile_group_option723 MySQLParser_drop_logfile_group_option_return

    MySQLParser_if_exists_return if_exists725;
    #undef	RETURN_TYPE_if_exists725
    #define	RETURN_TYPE_if_exists725 MySQLParser_if_exists_return

    MySQLParser_trigger_ref_return trigger_ref726;
    #undef	RETURN_TYPE_trigger_ref726
    #define	RETURN_TYPE_trigger_ref726 MySQLParser_trigger_ref_return

    MySQLParser_if_exists_return if_exists728;
    #undef	RETURN_TYPE_if_exists728
    #define	RETURN_TYPE_if_exists728 MySQLParser_if_exists_return

    MySQLParser_view_identifier_list_return view_identifier_list729;
    #undef	RETURN_TYPE_view_identifier_list729
    #define	RETURN_TYPE_view_identifier_list729 MySQLParser_view_identifier_list_return

    pANTLR3_BASE_TREE DROP_SYMBOL686_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL687_tree;
    pANTLR3_BASE_TREE EVENT_SYMBOL690_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL693_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL696_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL700_tree;
    pANTLR3_BASE_TREE ON_SYMBOL702_tree;
    pANTLR3_BASE_TREE LOGFILE_SYMBOL705_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL706_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL709_tree;
    pANTLR3_BASE_TREE SERVER_SYMBOL711_tree;
    pANTLR3_BASE_TREE TEMPORARY_SYMBOL714_tree;
    pANTLR3_BASE_TREE set715_tree;
    pANTLR3_BASE_TREE set718_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL719_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL722_tree;
    pANTLR3_BASE_TREE TRIGGER_SYMBOL724_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL727_tree;
    pANTLR3_BASE_TREE set730_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DROP_SYMBOL686       = NULL;
    DATABASE_SYMBOL687       = NULL;
    EVENT_SYMBOL690       = NULL;
    FUNCTION_SYMBOL693       = NULL;
    PROCEDURE_SYMBOL696       = NULL;
    INDEX_SYMBOL700       = NULL;
    ON_SYMBOL702       = NULL;
    LOGFILE_SYMBOL705       = NULL;
    GROUP_SYMBOL706       = NULL;
    COMMA_SYMBOL709       = NULL;
    SERVER_SYMBOL711       = NULL;
    TEMPORARY_SYMBOL714       = NULL;
    set715       = NULL;
    set718       = NULL;
    TABLESPACE_SYMBOL719       = NULL;
    COMMA_SYMBOL722       = NULL;
    TRIGGER_SYMBOL724       = NULL;
    VIEW_SYMBOL727       = NULL;
    set730       = NULL;
    if_exists688.tree = NULL;

    schema_ref689.tree = NULL;

    if_exists691.tree = NULL;

    event_ref692.tree = NULL;

    if_exists694.tree = NULL;

    function_ref695.tree = NULL;

    if_exists697.tree = NULL;

    procedure_ref698.tree = NULL;

    online_option699.tree = NULL;

    index_ref701.tree = NULL;

    table_ref703.tree = NULL;

    index_lock_algorithm704.tree = NULL;

    logfile_group_ref707.tree = NULL;

    drop_logfile_group_option708.tree = NULL;

    drop_logfile_group_option710.tree = NULL;

    if_exists712.tree = NULL;

    server_ref713.tree = NULL;

    if_exists716.tree = NULL;

    table_ref_list717.tree = NULL;

    tablespace_ref720.tree = NULL;

    drop_logfile_group_option721.tree = NULL;

    drop_logfile_group_option723.tree = NULL;

    if_exists725.tree = NULL;

    trigger_ref726.tree = NULL;

    if_exists728.tree = NULL;

    view_identifier_list729.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DROP_SYMBOL686_tree   = NULL;
    DATABASE_SYMBOL687_tree   = NULL;
    EVENT_SYMBOL690_tree   = NULL;
    FUNCTION_SYMBOL693_tree   = NULL;
    PROCEDURE_SYMBOL696_tree   = NULL;
    INDEX_SYMBOL700_tree   = NULL;
    ON_SYMBOL702_tree   = NULL;
    LOGFILE_SYMBOL705_tree   = NULL;
    GROUP_SYMBOL706_tree   = NULL;
    COMMA_SYMBOL709_tree   = NULL;
    SERVER_SYMBOL711_tree   = NULL;
    TEMPORARY_SYMBOL714_tree   = NULL;
    set715_tree   = NULL;
    set718_tree   = NULL;
    TABLESPACE_SYMBOL719_tree   = NULL;
    COMMA_SYMBOL722_tree   = NULL;
    TRIGGER_SYMBOL724_tree   = NULL;
    VIEW_SYMBOL727_tree   = NULL;
    set730_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:949:15: ( DROP_SYMBOL ^ ( DATABASE_SYMBOL ( if_exists )? schema_ref |{...}? EVENT_SYMBOL ( if_exists )? event_ref | ( FUNCTION_SYMBOL ( if_exists )? function_ref | PROCEDURE_SYMBOL ( if_exists )? procedure_ref ) | ( online_option )? INDEX_SYMBOL index_ref ON_SYMBOL table_ref ( index_lock_algorithm )? | LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )? | SERVER_SYMBOL ( if_exists )? server_ref | ( TEMPORARY_SYMBOL )? ( TABLE_SYMBOL | TABLES_SYMBOL ) ( if_exists )? table_ref_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? | TABLESPACE_SYMBOL tablespace_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )? | TRIGGER_SYMBOL ( if_exists )? trigger_ref | VIEW_SYMBOL ( if_exists )? view_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? ) )
        // MySQL.g:950:2: DROP_SYMBOL ^ ( DATABASE_SYMBOL ( if_exists )? schema_ref |{...}? EVENT_SYMBOL ( if_exists )? event_ref | ( FUNCTION_SYMBOL ( if_exists )? function_ref | PROCEDURE_SYMBOL ( if_exists )? procedure_ref ) | ( online_option )? INDEX_SYMBOL index_ref ON_SYMBOL table_ref ( index_lock_algorithm )? | LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )? | SERVER_SYMBOL ( if_exists )? server_ref | ( TEMPORARY_SYMBOL )? ( TABLE_SYMBOL | TABLES_SYMBOL ) ( if_exists )? table_ref_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? | TABLESPACE_SYMBOL tablespace_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )? | TRIGGER_SYMBOL ( if_exists )? trigger_ref | VIEW_SYMBOL ( if_exists )? view_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DROP_SYMBOL686 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_drop_statement3685);
            if  (HASEXCEPTION())
            {
                goto ruledrop_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DROP_SYMBOL686_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL686))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DROP_SYMBOL686_tree, root_0));
            }

            // MySQL.g:951:2: ( DATABASE_SYMBOL ( if_exists )? schema_ref |{...}? EVENT_SYMBOL ( if_exists )? event_ref | ( FUNCTION_SYMBOL ( if_exists )? function_ref | PROCEDURE_SYMBOL ( if_exists )? procedure_ref ) | ( online_option )? INDEX_SYMBOL index_ref ON_SYMBOL table_ref ( index_lock_algorithm )? | LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )? | SERVER_SYMBOL ( if_exists )? server_ref | ( TEMPORARY_SYMBOL )? ( TABLE_SYMBOL | TABLES_SYMBOL ) ( if_exists )? table_ref_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? | TABLESPACE_SYMBOL tablespace_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )? | TRIGGER_SYMBOL ( if_exists )? trigger_ref | VIEW_SYMBOL ( if_exists )? view_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )? )
            {
                int alt234=10;
                switch ( LA(1) )
                {
                case DATABASE_SYMBOL:
                	{
                		alt234=1;
                	}
                    break;
                case EVENT_SYMBOL:
                	{
                		alt234=2;
                	}
                    break;
                case FUNCTION_SYMBOL:
                case PROCEDURE_SYMBOL:
                	{
                		alt234=3;
                	}
                    break;
                case INDEX_SYMBOL:
                case OFFLINE_SYMBOL:
                case ONLINE_SYMBOL:
                	{
                		alt234=4;
                	}
                    break;
                case LOGFILE_SYMBOL:
                	{
                		alt234=5;
                	}
                    break;
                case SERVER_SYMBOL:
                	{
                		alt234=6;
                	}
                    break;
                case TABLES_SYMBOL:
                case TEMPORARY_SYMBOL:
                case TABLE_SYMBOL:
                	{
                		alt234=7;
                	}
                    break;
                case TABLESPACE_SYMBOL:
                	{
                		alt234=8;
                	}
                    break;
                case TRIGGER_SYMBOL:
                	{
                		alt234=9;
                	}
                    break;
                case VIEW_SYMBOL:
                	{
                		alt234=10;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 234;
                    EXCEPTION->state        = 0;


                    goto ruledrop_statementEx;

                }

                switch (alt234)
                {
            	case 1:
            	    // MySQL.g:952:3: DATABASE_SYMBOL ( if_exists )? schema_ref
            	    {
            	        DATABASE_SYMBOL687 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_drop_statement3693);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATABASE_SYMBOL687_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL687));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL687_tree);
            	        }

            	        // MySQL.g:952:19: ( if_exists )?
            	        {
            	            int alt214=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt214=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt214)
            	            {
            	        	case 1:
            	        	    // MySQL.g:952:19: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3695);
            	        	        if_exists688=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists688.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_schema_ref_in_drop_statement3698);
            	        schema_ref689=schema_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref689.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:953:5: {...}? EVENT_SYMBOL ( if_exists )? event_ref
            	    {
            	        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_SYMBOL690 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_drop_statement3706);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENT_SYMBOL690_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL690));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL690_tree);
            	        }

            	        // MySQL.g:953:45: ( if_exists )?
            	        {
            	            int alt215=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt215=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt215)
            	            {
            	        	case 1:
            	        	    // MySQL.g:953:45: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3708);
            	        	        if_exists691=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists691.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_event_ref_in_drop_statement3711);
            	        event_ref692=event_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, event_ref692.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:955:4: ( FUNCTION_SYMBOL ( if_exists )? function_ref | PROCEDURE_SYMBOL ( if_exists )? procedure_ref )
            	    {
            	        // MySQL.g:955:4: ( FUNCTION_SYMBOL ( if_exists )? function_ref | PROCEDURE_SYMBOL ( if_exists )? procedure_ref )
            	        {
            	            int alt218=2;
            	            switch ( LA(1) )
            	            {
            	            case FUNCTION_SYMBOL:
            	            	{
            	            		alt218=1;
            	            	}
            	                break;
            	            case PROCEDURE_SYMBOL:
            	            	{
            	            		alt218=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 218;
            	                EXCEPTION->state        = 0;


            	                goto ruledrop_statementEx;

            	            }

            	            switch (alt218)
            	            {
            	        	case 1:
            	        	    // MySQL.g:956:5: FUNCTION_SYMBOL ( if_exists )? function_ref
            	        	    {
            	        	        FUNCTION_SYMBOL693 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_drop_statement3726);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FUNCTION_SYMBOL693_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL693));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL693_tree);
            	        	        }

            	        	        // MySQL.g:956:21: ( if_exists )?
            	        	        {
            	        	            int alt216=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case IF_SYMBOL:
            	        	                	{
            	        	                		alt216=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt216)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:956:21: if_exists
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3728);
            	        	        	        if_exists694=if_exists(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledrop_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists694.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_function_ref_in_drop_statement3731);
            	        	        function_ref695=function_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_ref695.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:957:7: PROCEDURE_SYMBOL ( if_exists )? procedure_ref
            	        	    {
            	        	        PROCEDURE_SYMBOL696 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_drop_statement3740);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PROCEDURE_SYMBOL696_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL696));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL696_tree);
            	        	        }

            	        	        // MySQL.g:957:24: ( if_exists )?
            	        	        {
            	        	            int alt217=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case IF_SYMBOL:
            	        	                	{
            	        	                		alt217=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt217)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:957:24: if_exists
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3742);
            	        	        	        if_exists697=if_exists(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledrop_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists697.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_procedure_ref_in_drop_statement3745);
            	        	        procedure_ref698=procedure_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_ref698.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:959:5: ( online_option )? INDEX_SYMBOL index_ref ON_SYMBOL table_ref ( index_lock_algorithm )?
            	    {
            	        // MySQL.g:959:5: ( online_option )?
            	        {
            	            int alt219=2;
            	            switch ( LA(1) )
            	            {
            	                case OFFLINE_SYMBOL:
            	                case ONLINE_SYMBOL:
            	                	{
            	                		alt219=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt219)
            	            {
            	        	case 1:
            	        	    // MySQL.g:959:5: online_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_online_option_in_drop_statement3756);
            	        	        online_option699=online_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, online_option699.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        INDEX_SYMBOL700 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_drop_statement3759);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INDEX_SYMBOL700_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL700));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL700_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_ref_in_drop_statement3761);
            	        index_ref701=index_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_ref701.tree);

            	        ON_SYMBOL702 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_drop_statement3763);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL702_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL702));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL702_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_drop_statement3765);
            	        table_ref703=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref703.tree);

            	        // MySQL.g:959:63: ( index_lock_algorithm )?
            	        {
            	            int alt220=2;
            	            {
            	                int LA220_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50600)) && (LA220_0 == ALGORITHM_SYMBOL || LA220_0 == LOCK_SYMBOL))
            	                {
            	                    alt220=1;
            	                }
            	            }
            	            switch (alt220)
            	            {
            	        	case 1:
            	        	    // MySQL.g:959:63: index_lock_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_index_lock_algorithm_in_drop_statement3767);
            	        	        index_lock_algorithm704=index_lock_algorithm(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_lock_algorithm704.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:960:5: LOGFILE_SYMBOL GROUP_SYMBOL logfile_group_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )?
            	    {
            	        LOGFILE_SYMBOL705 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGFILE_SYMBOL, &FOLLOW_LOGFILE_SYMBOL_in_drop_statement3774);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOGFILE_SYMBOL705_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGFILE_SYMBOL705));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOGFILE_SYMBOL705_tree);
            	        }

            	        GROUP_SYMBOL706 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_drop_statement3776);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GROUP_SYMBOL706_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL706));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL706_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_logfile_group_ref_in_drop_statement3778);
            	        logfile_group_ref707=logfile_group_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, logfile_group_ref707.tree);

            	        // MySQL.g:960:51: ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )?
            	        {
            	            int alt223=2;
            	            switch ( LA(1) )
            	            {
            	                case ENGINE_SYMBOL:
            	                case NO_WAIT_SYMBOL:
            	                case STORAGE_SYMBOL:
            	                case WAIT_SYMBOL:
            	                	{
            	                		alt223=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt223)
            	            {
            	        	case 1:
            	        	    // MySQL.g:960:52: drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_drop_logfile_group_option_in_drop_statement3781);
            	        	        drop_logfile_group_option708=drop_logfile_group_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, drop_logfile_group_option708.tree);

            	        	        // MySQL.g:960:78: ( ( COMMA_SYMBOL )? drop_logfile_group_option )*

            	        	        for (;;)
            	        	        {
            	        	            int alt222=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case ENGINE_SYMBOL:
            	        	            case NO_WAIT_SYMBOL:
            	        	            case STORAGE_SYMBOL:
            	        	            case WAIT_SYMBOL:
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt222=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt222)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:960:79: ( COMMA_SYMBOL )? drop_logfile_group_option
            	        	        	    {
            	        	        	        // MySQL.g:960:79: ( COMMA_SYMBOL )?
            	        	        	        {
            	        	        	            int alt221=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case COMMA_SYMBOL:
            	        	        	                	{
            	        	        	                		alt221=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt221)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:960:79: COMMA_SYMBOL
            	        	        	        	    {
            	        	        	        	        COMMA_SYMBOL709 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_drop_statement3784);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto ruledrop_statementEx;
            	        	        	        	        }
            	        	        	        	        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);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_drop_logfile_group_option_in_drop_statement3787);
            	        	        	        drop_logfile_group_option710=drop_logfile_group_option(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledrop_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, drop_logfile_group_option710.tree);

            	        	        	    }
            	        	        	    break;

            	        	        	default:
            	        	        	    goto loop222;	/* break out of the loop */
            	        	        	    break;
            	        	            }
            	        	        }
            	        	        loop222: ; /* Jump out to here if this rule does not match */


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:961:5: SERVER_SYMBOL ( if_exists )? server_ref
            	    {
            	        SERVER_SYMBOL711 = (pANTLR3_COMMON_TOKEN) MATCHT(SERVER_SYMBOL, &FOLLOW_SERVER_SYMBOL_in_drop_statement3797);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SERVER_SYMBOL711_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERVER_SYMBOL711));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SERVER_SYMBOL711_tree);
            	        }

            	        // MySQL.g:961:19: ( if_exists )?
            	        {
            	            int alt224=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt224=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt224)
            	            {
            	        	case 1:
            	        	    // MySQL.g:961:19: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3799);
            	        	        if_exists712=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists712.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_server_ref_in_drop_statement3802);
            	        server_ref713=server_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_ref713.tree);

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:962:5: ( TEMPORARY_SYMBOL )? ( TABLE_SYMBOL | TABLES_SYMBOL ) ( if_exists )? table_ref_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	    {
            	        // MySQL.g:962:5: ( TEMPORARY_SYMBOL )?
            	        {
            	            int alt225=2;
            	            switch ( LA(1) )
            	            {
            	                case TEMPORARY_SYMBOL:
            	                	{
            	                		alt225=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt225)
            	            {
            	        	case 1:
            	        	    // MySQL.g:962:5: TEMPORARY_SYMBOL
            	        	    {
            	        	        TEMPORARY_SYMBOL714 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_drop_statement3808);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TEMPORARY_SYMBOL714_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL714));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL714_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        set715=(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, set715))
            	            );
            	            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:962:54: ( if_exists )?
            	        {
            	            int alt226=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt226=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt226)
            	            {
            	        	case 1:
            	        	    // MySQL.g:962:54: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3819);
            	        	        if_exists716=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists716.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_list_in_drop_statement3822);
            	        table_ref_list717=table_ref_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list717.tree);

            	        // MySQL.g:962:80: ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	        {
            	            int alt227=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADE_SYMBOL:
            	                case RESTRICT_SYMBOL:
            	                	{
            	                		alt227=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt227)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set718=(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, 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 ruledrop_statementEx;
            	        	        }


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:963:5: TABLESPACE_SYMBOL tablespace_ref ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )?
            	    {
            	        TABLESPACE_SYMBOL719 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_drop_statement3837);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLESPACE_SYMBOL719_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL719));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL719_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_tablespace_ref_in_drop_statement3839);
            	        tablespace_ref720=tablespace_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, tablespace_ref720.tree);

            	        // MySQL.g:963:38: ( drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )* )?
            	        {
            	            int alt230=2;
            	            switch ( LA(1) )
            	            {
            	                case ENGINE_SYMBOL:
            	                case NO_WAIT_SYMBOL:
            	                case STORAGE_SYMBOL:
            	                case WAIT_SYMBOL:
            	                	{
            	                		alt230=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt230)
            	            {
            	        	case 1:
            	        	    // MySQL.g:963:39: drop_logfile_group_option ( ( COMMA_SYMBOL )? drop_logfile_group_option )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_drop_logfile_group_option_in_drop_statement3842);
            	        	        drop_logfile_group_option721=drop_logfile_group_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, drop_logfile_group_option721.tree);

            	        	        // MySQL.g:963:65: ( ( COMMA_SYMBOL )? drop_logfile_group_option )*

            	        	        for (;;)
            	        	        {
            	        	            int alt229=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case ENGINE_SYMBOL:
            	        	            case NO_WAIT_SYMBOL:
            	        	            case STORAGE_SYMBOL:
            	        	            case WAIT_SYMBOL:
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt229=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt229)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:963:66: ( COMMA_SYMBOL )? drop_logfile_group_option
            	        	        	    {
            	        	        	        // MySQL.g:963:66: ( COMMA_SYMBOL )?
            	        	        	        {
            	        	        	            int alt228=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case COMMA_SYMBOL:
            	        	        	                	{
            	        	        	                		alt228=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt228)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:963:66: COMMA_SYMBOL
            	        	        	        	    {
            	        	        	        	        COMMA_SYMBOL722 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_drop_statement3845);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto ruledrop_statementEx;
            	        	        	        	        }
            	        	        	        	        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);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_drop_logfile_group_option_in_drop_statement3848);
            	        	        	        drop_logfile_group_option723=drop_logfile_group_option(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledrop_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, drop_logfile_group_option723.tree);

            	        	        	    }
            	        	        	    break;

            	        	        	default:
            	        	        	    goto loop229;	/* break out of the loop */
            	        	        	    break;
            	        	            }
            	        	        }
            	        	        loop229: ; /* Jump out to here if this rule does not match */


            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:964:5: TRIGGER_SYMBOL ( if_exists )? trigger_ref
            	    {
            	        TRIGGER_SYMBOL724 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_drop_statement3858);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRIGGER_SYMBOL724_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL724));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL724_tree);
            	        }

            	        // MySQL.g:964:20: ( if_exists )?
            	        {
            	            int alt231=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt231=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt231)
            	            {
            	        	case 1:
            	        	    // MySQL.g:964:20: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3860);
            	        	        if_exists725=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists725.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_trigger_ref_in_drop_statement3863);
            	        trigger_ref726=trigger_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trigger_ref726.tree);

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:965:5: VIEW_SYMBOL ( if_exists )? view_identifier_list ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	    {
            	        VIEW_SYMBOL727 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_drop_statement3869);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        VIEW_SYMBOL727_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL727));
            	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL727_tree);
            	        }

            	        // MySQL.g:965:17: ( if_exists )?
            	        {
            	            int alt232=2;
            	            switch ( LA(1) )
            	            {
            	                case IF_SYMBOL:
            	                	{
            	                		alt232=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt232)
            	            {
            	        	case 1:
            	        	    // MySQL.g:965:17: if_exists
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_statement3871);
            	        	        if_exists728=if_exists(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledrop_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists728.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_view_identifier_list_in_drop_statement3874);
            	        view_identifier_list729=view_identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_identifier_list729.tree);

            	        // MySQL.g:965:49: ( RESTRICT_SYMBOL | CASCADE_SYMBOL )?
            	        {
            	            int alt233=2;
            	            switch ( LA(1) )
            	            {
            	                case CASCADE_SYMBOL:
            	                case RESTRICT_SYMBOL:
            	                	{
            	                		alt233=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt233)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set730=(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, set730))
            	        	            );
            	        	            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 drop_logfile_group_option
 * MySQL.g:969:1: drop_logfile_group_option : ( ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref );
 */
static MySQLParser_drop_logfile_group_option_return
drop_logfile_group_option(pMySQLParser ctx)
{
    MySQLParser_drop_logfile_group_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set731;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL732;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL733;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR734;
    MySQLParser_engine_ref_return engine_ref735;
    #undef	RETURN_TYPE_engine_ref735
    #define	RETURN_TYPE_engine_ref735 MySQLParser_engine_ref_return

    pANTLR3_BASE_TREE set731_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL732_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL733_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR734_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set731       = NULL;
    STORAGE_SYMBOL732       = NULL;
    ENGINE_SYMBOL733       = NULL;
    EQUAL_OPERATOR734       = NULL;
    engine_ref735.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set731_tree   = NULL;
    STORAGE_SYMBOL732_tree   = NULL;
    ENGINE_SYMBOL733_tree   = NULL;
    EQUAL_OPERATOR734_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:969:26: ( ( WAIT_SYMBOL | NO_WAIT_SYMBOL ) | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref )

            ANTLR3_UINT32 alt237;

            alt237=2;

            switch ( LA(1) )
            {
            case NO_WAIT_SYMBOL:
            case WAIT_SYMBOL:
            	{
            		alt237=1;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt237=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 237;
                EXCEPTION->state        = 0;


                goto ruledrop_logfile_group_optionEx;

            }

            switch (alt237)
            {
        	case 1:
        	    // MySQL.g:970:2: ( WAIT_SYMBOL | NO_WAIT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set731=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == NO_WAIT_SYMBOL || LA(1) == WAIT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set731))
        	            );
        	            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_logfile_group_optionEx;
        	        }


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:971:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:971:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt235=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt235=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt235)
        	            {
        	        	case 1:
        	        	    // MySQL.g:971:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL732 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_drop_logfile_group_option3906);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledrop_logfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STORAGE_SYMBOL732_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL732));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL732_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL733 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_drop_logfile_group_option3909);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledrop_logfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL733_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL733));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL733_tree);
        	        }

        	        // MySQL.g:971:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt236=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt236=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt236)
        	            {
        	        	case 1:
        	        	    // MySQL.g:971:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR734 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_drop_logfile_group_option3911);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledrop_logfile_group_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR734_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR734));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR734_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_drop_logfile_group_option3914);
        	        engine_ref735=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledrop_logfile_group_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref735.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruledrop_logfile_group_optionEx; /* Prevent compiler warnings */
    ruledrop_logfile_group_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 drop_logfile_group_option */

/**
 * $ANTLR start rename_table_statement
 * MySQL.g:975:1: rename_table_statement : RENAME_SYMBOL ^ ( TABLE_SYMBOL | TABLES_SYMBOL ) table_ref TO_SYMBOL table_ref ( COMMA_SYMBOL table_ref TO_SYMBOL table_ref )* ;
 */
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_SYMBOL736;
    pANTLR3_COMMON_TOKEN    set737;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL739;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL741;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL743;
    MySQLParser_table_ref_return table_ref738;
    #undef	RETURN_TYPE_table_ref738
    #define	RETURN_TYPE_table_ref738 MySQLParser_table_ref_return

    MySQLParser_table_ref_return table_ref740;
    #undef	RETURN_TYPE_table_ref740
    #define	RETURN_TYPE_table_ref740 MySQLParser_table_ref_return

    MySQLParser_table_ref_return table_ref742;
    #undef	RETURN_TYPE_table_ref742
    #define	RETURN_TYPE_table_ref742 MySQLParser_table_ref_return

    MySQLParser_table_ref_return table_ref744;
    #undef	RETURN_TYPE_table_ref744
    #define	RETURN_TYPE_table_ref744 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE RENAME_SYMBOL736_tree;
    pANTLR3_BASE_TREE set737_tree;
    pANTLR3_BASE_TREE TO_SYMBOL739_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL741_tree;
    pANTLR3_BASE_TREE TO_SYMBOL743_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RENAME_SYMBOL736       = NULL;
    set737       = NULL;
    TO_SYMBOL739       = NULL;
    COMMA_SYMBOL741       = NULL;
    TO_SYMBOL743       = NULL;
    table_ref738.tree = NULL;

    table_ref740.tree = NULL;

    table_ref742.tree = NULL;

    table_ref744.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RENAME_SYMBOL736_tree   = NULL;
    set737_tree   = NULL;
    TO_SYMBOL739_tree   = NULL;
    COMMA_SYMBOL741_tree   = NULL;
    TO_SYMBOL743_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:975:23: ( RENAME_SYMBOL ^ ( TABLE_SYMBOL | TABLES_SYMBOL ) table_ref TO_SYMBOL table_ref ( COMMA_SYMBOL table_ref TO_SYMBOL table_ref )* )
        // MySQL.g:976:2: RENAME_SYMBOL ^ ( TABLE_SYMBOL | TABLES_SYMBOL ) table_ref TO_SYMBOL table_ref ( COMMA_SYMBOL table_ref TO_SYMBOL table_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RENAME_SYMBOL736 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_rename_table_statement3924);
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RENAME_SYMBOL736_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RENAME_SYMBOL736))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RENAME_SYMBOL736_tree, root_0));
            }

            set737=(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, set737))
                );
                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 rulerename_table_statementEx;
            }


            FOLLOWPUSH(FOLLOW_table_ref_in_rename_table_statement3937);
            table_ref738=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref738.tree);

            TO_SYMBOL739 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_table_statement3939);
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL739_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL739));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL739_tree);
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_rename_table_statement3941);
            table_ref740=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref740.tree);

            // MySQL.g:977:33: ( COMMA_SYMBOL table_ref TO_SYMBOL table_ref )*

            for (;;)
            {
                int alt238=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt238=1;
                	}
                    break;

                }

                switch (alt238)
                {
            	case 1:
            	    // MySQL.g:977:34: COMMA_SYMBOL table_ref TO_SYMBOL table_ref
            	    {
            	        COMMA_SYMBOL741 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_rename_table_statement3944);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL741_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL741));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL741_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_rename_table_statement3946);
            	        table_ref742=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref742.tree);

            	        TO_SYMBOL743 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_table_statement3948);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TO_SYMBOL743_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL743));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL743_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_rename_table_statement3950);
            	        table_ref744=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_table_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref744.tree);

            	    }
            	    break;

            	default:
            	    goto loop238;	/* break out of the loop */
            	    break;
                }
            }
            loop238: ; /* 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:982:1: truncate_table_statement : TRUNCATE_SYMBOL ^ ( TABLE_SYMBOL )? table_ref ;
 */
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_SYMBOL745;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL746;
    MySQLParser_table_ref_return table_ref747;
    #undef	RETURN_TYPE_table_ref747
    #define	RETURN_TYPE_table_ref747 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE TRUNCATE_SYMBOL745_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL746_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRUNCATE_SYMBOL745       = NULL;
    TABLE_SYMBOL746       = NULL;
    table_ref747.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRUNCATE_SYMBOL745_tree   = NULL;
    TABLE_SYMBOL746_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:982:25: ( TRUNCATE_SYMBOL ^ ( TABLE_SYMBOL )? table_ref )
        // MySQL.g:983:2: TRUNCATE_SYMBOL ^ ( TABLE_SYMBOL )? table_ref
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            TRUNCATE_SYMBOL745 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_truncate_table_statement3964);
            if  (HASEXCEPTION())
            {
                goto ruletruncate_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRUNCATE_SYMBOL745_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUNCATE_SYMBOL745))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, TRUNCATE_SYMBOL745_tree, root_0));
            }

            // MySQL.g:983:19: ( TABLE_SYMBOL )?
            {
                int alt239=2;
                switch ( LA(1) )
                {
                    case TABLE_SYMBOL:
                    	{
                    		alt239=1;
                    	}
                        break;
                }

                switch (alt239)
                {
            	case 1:
            	    // MySQL.g:983:19: TABLE_SYMBOL
            	    {
            	        TABLE_SYMBOL746 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_truncate_table_statement3967);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletruncate_table_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);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_truncate_table_statement3970);
            table_ref747=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletruncate_table_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref747.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:988:1: call_statement : CALL_SYMBOL ^ procedure_ref ( 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_SYMBOL748;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL750;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL752;
    MySQLParser_procedure_ref_return procedure_ref749;
    #undef	RETURN_TYPE_procedure_ref749
    #define	RETURN_TYPE_procedure_ref749 MySQLParser_procedure_ref_return

    MySQLParser_expression_list_return expression_list751;
    #undef	RETURN_TYPE_expression_list751
    #define	RETURN_TYPE_expression_list751 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE CALL_SYMBOL748_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL750_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL752_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CALL_SYMBOL748       = NULL;
    OPEN_PAR_SYMBOL750       = NULL;
    CLOSE_PAR_SYMBOL752       = NULL;
    procedure_ref749.tree = NULL;

    expression_list751.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CALL_SYMBOL748_tree   = NULL;
    OPEN_PAR_SYMBOL750_tree   = NULL;
    CLOSE_PAR_SYMBOL752_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:988:15: ( CALL_SYMBOL ^ procedure_ref ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )? )
        // MySQL.g:989:2: CALL_SYMBOL ^ procedure_ref ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CALL_SYMBOL748 = (pANTLR3_COMMON_TOKEN) MATCHT(CALL_SYMBOL, &FOLLOW_CALL_SYMBOL_in_call_statement3981);
            if  (HASEXCEPTION())
            {
                goto rulecall_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CALL_SYMBOL748_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CALL_SYMBOL748))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CALL_SYMBOL748_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_procedure_ref_in_call_statement3984);
            procedure_ref749=procedure_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecall_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_ref749.tree);

            // MySQL.g:989:29: ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )?
            {
                int alt241=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt241=1;
                    	}
                        break;
                }

                switch (alt241)
                {
            	case 1:
            	    // MySQL.g:989:30: OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL750 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_call_statement3987);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecall_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL750_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL750));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL750_tree);
            	        }

            	        // MySQL.g:989:46: ( expression_list )?
            	        {
            	            int alt240=2;
            	            {
            	                int LA240_0 = LA(1);
            	                if ( (((LA240_0 >= ACCOUNT_SYMBOL) && (LA240_0 <= YEAR_SYMBOL)) || ((LA240_0 >= AT_AT_SIGN_SYMBOL) && (LA240_0 <= AT_TEXT_SUFFIX)) || LA240_0 == BACK_TICK_QUOTED_ID || ((LA240_0 >= BINARY_SYMBOL) && (LA240_0 <= BIN_NUMBER)) || LA240_0 == BITWISE_NOT_OPERATOR || ((LA240_0 >= BIT_AND_SYMBOL) && (LA240_0 <= BIT_XOR_SYMBOL)) || ((LA240_0 >= CASE_SYMBOL) && (LA240_0 <= CAST_SYMBOL)) || LA240_0 == CHAR_SYMBOL || ((LA240_0 >= CONVERT_SYMBOL) && (LA240_0 <= COUNT_SYMBOL)) || LA240_0 == CURDATE_SYMBOL || LA240_0 == CURRENT_USER_SYMBOL || LA240_0 == CURTIME_SYMBOL || LA240_0 == DATABASE_SYMBOL || LA240_0 == DATE_ADD_SYMBOL || LA240_0 == DATE_SUB_SYMBOL || LA240_0 == DECIMAL_NUMBER || LA240_0 == DOT_SYMBOL || LA240_0 == DOUBLE_QUOTED_TEXT || LA240_0 == EXISTS_SYMBOL || ((LA240_0 >= EXTRACT_SYMBOL) && (LA240_0 <= FALSE_SYMBOL)) || LA240_0 == FLOAT_NUMBER || LA240_0 == GROUP_CONCAT_SYMBOL || LA240_0 == HEX_NUMBER || ((LA240_0 >= IDENTIFIER) && (LA240_0 <= IF_SYMBOL)) || LA240_0 == INSERT_SYMBOL || LA240_0 == INTERVAL_SYMBOL || LA240_0 == INT_NUMBER || LA240_0 == LEFT_SYMBOL || LA240_0 == LOGICAL_NOT_OPERATOR || LA240_0 == LONG_NUMBER || LA240_0 == MATCH_SYMBOL || LA240_0 == MAX_SYMBOL || LA240_0 == MINUS_OPERATOR || LA240_0 == MIN_SYMBOL || LA240_0 == MOD_SYMBOL || LA240_0 == NCHAR_TEXT || LA240_0 == NOT2_SYMBOL || ((LA240_0 >= NOT_SYMBOL) && (LA240_0 <= NOW_SYMBOL)) || LA240_0 == NULL2_SYMBOL || LA240_0 == NULL_SYMBOL || ((LA240_0 >= OPEN_CURLY_SYMBOL) && (LA240_0 <= OPEN_PAR_SYMBOL)) || LA240_0 == PARAM_MARKER || ((LA240_0 >= PLUS_OPERATOR) && (LA240_0 <= POSITION_SYMBOL)) || ((LA240_0 >= REPEAT_SYMBOL) && (LA240_0 <= REPLACE_SYMBOL)) || LA240_0 == RIGHT_SYMBOL || LA240_0 == SINGLE_QUOTED_TEXT || LA240_0 == STDDEV_SAMP_SYMBOL || LA240_0 == STD_SYMBOL || LA240_0 == SUBSTRING_SYMBOL || ((LA240_0 >= SUM_SYMBOL) && (LA240_0 <= SYSDATE_SYMBOL)) || ((LA240_0 >= TRIM_SYMBOL) && (LA240_0 <= TRUE_SYMBOL)) || LA240_0 == ULONGLONG_NUMBER || LA240_0 == UNDERSCORE_CHARSET || ((LA240_0 >= UTC_DATE_SYMBOL) && (LA240_0 <= UTC_TIME_SYMBOL)) || LA240_0 == VALUES_SYMBOL || LA240_0 == VARIANCE_SYMBOL || LA240_0 == VAR_SAMP_SYMBOL))
            	                {
            	                    alt240=1;
            	                }
            	            }
            	            switch (alt240)
            	            {
            	        	case 1:
            	        	    // MySQL.g:989:46: expression_list
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_list_in_call_statement3989);
            	        	        expression_list751=expression_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecall_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list751.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        CLOSE_PAR_SYMBOL752 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_call_statement3992);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecall_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL752_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL752));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL752_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:992:1: delete_statement : DELETE_SYMBOL ^ ( options {greedy=true; } : delete_option )* ( FROM_SYMBOL ( options {k=4; } : table_ref_list_with_wildcard USING_SYMBOL join_table_list ( where_clause )? | table_ref ( partition_delete )? ( where_clause )? ( order_by_clause )? ( simple_limit_clause )? ) | table_ref_list_with_wildcard FROM_SYMBOL join_table_list ( 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_SYMBOL753;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL755;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL757;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL766;
    MySQLParser_delete_option_return delete_option754;
    #undef	RETURN_TYPE_delete_option754
    #define	RETURN_TYPE_delete_option754 MySQLParser_delete_option_return

    MySQLParser_table_ref_list_with_wildcard_return table_ref_list_with_wildcard756;
    #undef	RETURN_TYPE_table_ref_list_with_wildcard756
    #define	RETURN_TYPE_table_ref_list_with_wildcard756 MySQLParser_table_ref_list_with_wildcard_return

    MySQLParser_join_table_list_return join_table_list758;
    #undef	RETURN_TYPE_join_table_list758
    #define	RETURN_TYPE_join_table_list758 MySQLParser_join_table_list_return

    MySQLParser_where_clause_return where_clause759;
    #undef	RETURN_TYPE_where_clause759
    #define	RETURN_TYPE_where_clause759 MySQLParser_where_clause_return

    MySQLParser_table_ref_return table_ref760;
    #undef	RETURN_TYPE_table_ref760
    #define	RETURN_TYPE_table_ref760 MySQLParser_table_ref_return

    MySQLParser_partition_delete_return partition_delete761;
    #undef	RETURN_TYPE_partition_delete761
    #define	RETURN_TYPE_partition_delete761 MySQLParser_partition_delete_return

    MySQLParser_where_clause_return where_clause762;
    #undef	RETURN_TYPE_where_clause762
    #define	RETURN_TYPE_where_clause762 MySQLParser_where_clause_return

    MySQLParser_order_by_clause_return order_by_clause763;
    #undef	RETURN_TYPE_order_by_clause763
    #define	RETURN_TYPE_order_by_clause763 MySQLParser_order_by_clause_return

    MySQLParser_simple_limit_clause_return simple_limit_clause764;
    #undef	RETURN_TYPE_simple_limit_clause764
    #define	RETURN_TYPE_simple_limit_clause764 MySQLParser_simple_limit_clause_return

    MySQLParser_table_ref_list_with_wildcard_return table_ref_list_with_wildcard765;
    #undef	RETURN_TYPE_table_ref_list_with_wildcard765
    #define	RETURN_TYPE_table_ref_list_with_wildcard765 MySQLParser_table_ref_list_with_wildcard_return

    MySQLParser_join_table_list_return join_table_list767;
    #undef	RETURN_TYPE_join_table_list767
    #define	RETURN_TYPE_join_table_list767 MySQLParser_join_table_list_return

    MySQLParser_where_clause_return where_clause768;
    #undef	RETURN_TYPE_where_clause768
    #define	RETURN_TYPE_where_clause768 MySQLParser_where_clause_return

    pANTLR3_BASE_TREE DELETE_SYMBOL753_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL755_tree;
    pANTLR3_BASE_TREE USING_SYMBOL757_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL766_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DELETE_SYMBOL753       = NULL;
    FROM_SYMBOL755       = NULL;
    USING_SYMBOL757       = NULL;
    FROM_SYMBOL766       = NULL;
    delete_option754.tree = NULL;

    table_ref_list_with_wildcard756.tree = NULL;

    join_table_list758.tree = NULL;

    where_clause759.tree = NULL;

    table_ref760.tree = NULL;

    partition_delete761.tree = NULL;

    where_clause762.tree = NULL;

    order_by_clause763.tree = NULL;

    simple_limit_clause764.tree = NULL;

    table_ref_list_with_wildcard765.tree = NULL;

    join_table_list767.tree = NULL;

    where_clause768.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DELETE_SYMBOL753_tree   = NULL;
    FROM_SYMBOL755_tree   = NULL;
    USING_SYMBOL757_tree   = NULL;
    FROM_SYMBOL766_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:992:17: ( DELETE_SYMBOL ^ ( options {greedy=true; } : delete_option )* ( FROM_SYMBOL ( options {k=4; } : table_ref_list_with_wildcard USING_SYMBOL join_table_list ( where_clause )? | table_ref ( partition_delete )? ( where_clause )? ( order_by_clause )? ( simple_limit_clause )? ) | table_ref_list_with_wildcard FROM_SYMBOL join_table_list ( where_clause )? ) )
        // MySQL.g:993:2: DELETE_SYMBOL ^ ( options {greedy=true; } : delete_option )* ( FROM_SYMBOL ( options {k=4; } : table_ref_list_with_wildcard USING_SYMBOL join_table_list ( where_clause )? | table_ref ( partition_delete )? ( where_clause )? ( order_by_clause )? ( simple_limit_clause )? ) | table_ref_list_with_wildcard FROM_SYMBOL join_table_list ( where_clause )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DELETE_SYMBOL753 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_delete_statement4003);
            if  (HASEXCEPTION())
            {
                goto ruledelete_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DELETE_SYMBOL753_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL753))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DELETE_SYMBOL753_tree, root_0));
            }

            // MySQL.g:993:17: ( options {greedy=true; } : delete_option )*

            for (;;)
            {
                int alt242=2;
                switch ( LA(1) )
                {
                case QUICK_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA242_5 = LA(2);
                		    if ( (LA242_5 == FROM_SYMBOL))
                		    {
                		        alt242=1;
                		    }
                		    else if ( (((LA242_5 >= ACCOUNT_SYMBOL) && (LA242_5 <= YEAR_SYMBOL)) || LA242_5 == BACK_TICK_QUOTED_ID || LA242_5 == DOUBLE_QUOTED_TEXT || LA242_5 == IDENTIFIER || LA242_5 == IGNORE_SYMBOL || LA242_5 == LOW_PRIORITY_SYMBOL))
                		    {
                		        alt242=1;
                		    }

                		}
                	}
                    break;
                case IGNORE_SYMBOL:
                case LOW_PRIORITY_SYMBOL:
                	{
                		alt242=1;
                	}
                    break;

                }

                switch (alt242)
                {
            	case 1:
            	    // MySQL.g:993:47: delete_option
            	    {
            	        FOLLOWPUSH(FOLLOW_delete_option_in_delete_statement4020);
            	        delete_option754=delete_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, delete_option754.tree);

            	    }
            	    break;

            	default:
            	    goto loop242;	/* break out of the loop */
            	    break;
                }
            }
            loop242: ; /* Jump out to here if this rule does not match */


            // MySQL.g:994:3: ( FROM_SYMBOL ( options {k=4; } : table_ref_list_with_wildcard USING_SYMBOL join_table_list ( where_clause )? | table_ref ( partition_delete )? ( where_clause )? ( order_by_clause )? ( simple_limit_clause )? ) | table_ref_list_with_wildcard FROM_SYMBOL join_table_list ( where_clause )? )
            {
                int alt250=2;
                {
                    int LA250_0 = LA(1);
                    if ( (LA250_0 == FROM_SYMBOL))
                    {
                        alt250=1;
                    }
                    else if ( (((LA250_0 >= ACCOUNT_SYMBOL) && (LA250_0 <= YEAR_SYMBOL)) || LA250_0 == BACK_TICK_QUOTED_ID || LA250_0 == DOUBLE_QUOTED_TEXT || LA250_0 == IDENTIFIER))
                    {
                        alt250=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 250;
                        EXCEPTION->state        = 0;


                        goto ruledelete_statementEx;

                    }
                }
                switch (alt250)
                {
            	case 1:
            	    // MySQL.g:995:4: FROM_SYMBOL ( options {k=4; } : table_ref_list_with_wildcard USING_SYMBOL join_table_list ( where_clause )? | table_ref ( partition_delete )? ( where_clause )? ( order_by_clause )? ( simple_limit_clause )? )
            	    {
            	        FROM_SYMBOL755 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_delete_statement4031);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL755_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL755));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL755_tree);
            	        }

            	        // MySQL.g:997:5: ( options {k=4; } : table_ref_list_with_wildcard USING_SYMBOL join_table_list ( where_clause )? | table_ref ( partition_delete )? ( where_clause )? ( order_by_clause )? ( simple_limit_clause )? )
            	        {
            	            int alt248=2;
            	            {
            	                int LA248_0 = LA(1);
            	                if ( (LA248_0 == IDENTIFIER))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                    case DOT_SYMBOL:
            	                    	{
            	                    		{
            	                    		    int LA248_7 = LA(3);
            	                    		    if ( (LA248_7 == MULT_OPERATOR))
            	                    		    {
            	                    		        alt248=1;
            	                    		    }
            	                    		    else if ( (LA248_7 == IDENTIFIER))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 53;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_7 == BACK_TICK_QUOTED_ID))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 54;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_7 == DOUBLE_QUOTED_TEXT))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 55;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_7 >= ACTION_SYMBOL) && (LA248_7 <= SHARE_SYMBOL)) || ((LA248_7 >= SLOW_SYMBOL) && (LA248_7 <= YEAR_SYMBOL))))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 56;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_7 >= ACCOUNT_SYMBOL) && (LA248_7 <= XA_SYMBOL)) || LA248_7 == SHUTDOWN_SYMBOL))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 57;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else
            	                    		    {
            	                    		        if (BACKTRACKING>0)
            	                    		        {
            	                    		            FAILEDFLAG = ANTLR3_TRUE;
            	                    		            return retval;
            	                    		        }


            	                    		        CONSTRUCTEX();
            	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		        EXCEPTION->message      = (void *)"";
            	                    		        EXCEPTION->decisionNum  = 248;
            	                    		        EXCEPTION->state        = 7;


            	                    		        goto ruledelete_statementEx;

            	                    		    }
            	                    		}
            	                    	}
            	                        break;
            	                    case COMMA_SYMBOL:
            	                    case USING_SYMBOL:
            	                    	{
            	                    		alt248=1;
            	                    	}
            	                        break;
            	                    case EOF:
            	                    case PARTITION_SYMBOL:
            	                    case LIMIT_SYMBOL:
            	                    case ORDER_SYMBOL:
            	                    case SEMICOLON_SYMBOL:
            	                    case WHERE_SYMBOL:
            	                    	{
            	                    		alt248=2;
            	                    	}
            	                        break;

            	                    default:
            	                        if (BACKTRACKING>0)
            	                        {
            	                            FAILEDFLAG = ANTLR3_TRUE;
            	                            return retval;
            	                        }

            	                        CONSTRUCTEX();
            	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                        EXCEPTION->message      = (void *)"";
            	                        EXCEPTION->decisionNum  = 248;
            	                        EXCEPTION->state        = 1;


            	                        goto ruledelete_statementEx;

            	                    }

            	                }
            	                else if ( (LA248_0 == BACK_TICK_QUOTED_ID))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                    case DOT_SYMBOL:
            	                    	{
            	                    		{
            	                    		    int LA248_16 = LA(3);
            	                    		    if ( (LA248_16 == MULT_OPERATOR))
            	                    		    {
            	                    		        alt248=1;
            	                    		    }
            	                    		    else if ( (LA248_16 == IDENTIFIER))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 59;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_16 == BACK_TICK_QUOTED_ID))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 60;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_16 == DOUBLE_QUOTED_TEXT))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 61;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_16 >= ACTION_SYMBOL) && (LA248_16 <= SHARE_SYMBOL)) || ((LA248_16 >= SLOW_SYMBOL) && (LA248_16 <= YEAR_SYMBOL))))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 62;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_16 >= ACCOUNT_SYMBOL) && (LA248_16 <= XA_SYMBOL)) || LA248_16 == SHUTDOWN_SYMBOL))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 63;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else
            	                    		    {
            	                    		        if (BACKTRACKING>0)
            	                    		        {
            	                    		            FAILEDFLAG = ANTLR3_TRUE;
            	                    		            return retval;
            	                    		        }


            	                    		        CONSTRUCTEX();
            	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		        EXCEPTION->message      = (void *)"";
            	                    		        EXCEPTION->decisionNum  = 248;
            	                    		        EXCEPTION->state        = 16;


            	                    		        goto ruledelete_statementEx;

            	                    		    }
            	                    		}
            	                    	}
            	                        break;
            	                    case COMMA_SYMBOL:
            	                    case USING_SYMBOL:
            	                    	{
            	                    		alt248=1;
            	                    	}
            	                        break;
            	                    case EOF:
            	                    case PARTITION_SYMBOL:
            	                    case LIMIT_SYMBOL:
            	                    case ORDER_SYMBOL:
            	                    case SEMICOLON_SYMBOL:
            	                    case WHERE_SYMBOL:
            	                    	{
            	                    		alt248=2;
            	                    	}
            	                        break;

            	                    default:
            	                        if (BACKTRACKING>0)
            	                        {
            	                            FAILEDFLAG = ANTLR3_TRUE;
            	                            return retval;
            	                        }

            	                        CONSTRUCTEX();
            	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                        EXCEPTION->message      = (void *)"";
            	                        EXCEPTION->decisionNum  = 248;
            	                        EXCEPTION->state        = 2;


            	                        goto ruledelete_statementEx;

            	                    }

            	                }
            	                else if ( (LA248_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                    case DOT_SYMBOL:
            	                    	{
            	                    		{
            	                    		    int LA248_25 = LA(3);
            	                    		    if ( (LA248_25 == MULT_OPERATOR))
            	                    		    {
            	                    		        alt248=1;
            	                    		    }
            	                    		    else if ( (LA248_25 == IDENTIFIER))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 65;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_25 == BACK_TICK_QUOTED_ID))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 66;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_25 == DOUBLE_QUOTED_TEXT))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 67;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_25 >= ACTION_SYMBOL) && (LA248_25 <= SHARE_SYMBOL)) || ((LA248_25 >= SLOW_SYMBOL) && (LA248_25 <= YEAR_SYMBOL))))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 68;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_25 >= ACCOUNT_SYMBOL) && (LA248_25 <= XA_SYMBOL)) || LA248_25 == SHUTDOWN_SYMBOL))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 69;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else
            	                    		    {
            	                    		        if (BACKTRACKING>0)
            	                    		        {
            	                    		            FAILEDFLAG = ANTLR3_TRUE;
            	                    		            return retval;
            	                    		        }


            	                    		        CONSTRUCTEX();
            	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		        EXCEPTION->message      = (void *)"";
            	                    		        EXCEPTION->decisionNum  = 248;
            	                    		        EXCEPTION->state        = 25;


            	                    		        goto ruledelete_statementEx;

            	                    		    }
            	                    		}
            	                    	}
            	                        break;
            	                    case COMMA_SYMBOL:
            	                    case USING_SYMBOL:
            	                    	{
            	                    		alt248=1;
            	                    	}
            	                        break;
            	                    case EOF:
            	                    case PARTITION_SYMBOL:
            	                    case LIMIT_SYMBOL:
            	                    case ORDER_SYMBOL:
            	                    case SEMICOLON_SYMBOL:
            	                    case WHERE_SYMBOL:
            	                    	{
            	                    		alt248=2;
            	                    	}
            	                        break;

            	                    default:
            	                        if (BACKTRACKING>0)
            	                        {
            	                            FAILEDFLAG = ANTLR3_TRUE;
            	                            return retval;
            	                        }

            	                        CONSTRUCTEX();
            	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                        EXCEPTION->message      = (void *)"";
            	                        EXCEPTION->decisionNum  = 248;
            	                        EXCEPTION->state        = 3;


            	                        goto ruledelete_statementEx;

            	                    }

            	                }
            	                else if ( (((LA248_0 >= ACTION_SYMBOL) && (LA248_0 <= SHARE_SYMBOL)) || ((LA248_0 >= SLOW_SYMBOL) && (LA248_0 <= YEAR_SYMBOL))))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                    case DOT_SYMBOL:
            	                    	{
            	                    		{
            	                    		    int LA248_34 = LA(3);
            	                    		    if ( (LA248_34 == MULT_OPERATOR))
            	                    		    {
            	                    		        alt248=1;
            	                    		    }
            	                    		    else if ( (LA248_34 == IDENTIFIER))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 71;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_34 == BACK_TICK_QUOTED_ID))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 72;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_34 == DOUBLE_QUOTED_TEXT))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 73;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_34 >= ACTION_SYMBOL) && (LA248_34 <= SHARE_SYMBOL)) || ((LA248_34 >= SLOW_SYMBOL) && (LA248_34 <= YEAR_SYMBOL))))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 74;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_34 >= ACCOUNT_SYMBOL) && (LA248_34 <= XA_SYMBOL)) || LA248_34 == SHUTDOWN_SYMBOL))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 75;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else
            	                    		    {
            	                    		        if (BACKTRACKING>0)
            	                    		        {
            	                    		            FAILEDFLAG = ANTLR3_TRUE;
            	                    		            return retval;
            	                    		        }


            	                    		        CONSTRUCTEX();
            	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		        EXCEPTION->message      = (void *)"";
            	                    		        EXCEPTION->decisionNum  = 248;
            	                    		        EXCEPTION->state        = 34;


            	                    		        goto ruledelete_statementEx;

            	                    		    }
            	                    		}
            	                    	}
            	                        break;
            	                    case COMMA_SYMBOL:
            	                    case USING_SYMBOL:
            	                    	{
            	                    		alt248=1;
            	                    	}
            	                        break;
            	                    case EOF:
            	                    case PARTITION_SYMBOL:
            	                    case LIMIT_SYMBOL:
            	                    case ORDER_SYMBOL:
            	                    case SEMICOLON_SYMBOL:
            	                    case WHERE_SYMBOL:
            	                    	{
            	                    		alt248=2;
            	                    	}
            	                        break;

            	                    default:
            	                        if (BACKTRACKING>0)
            	                        {
            	                            FAILEDFLAG = ANTLR3_TRUE;
            	                            return retval;
            	                        }

            	                        CONSTRUCTEX();
            	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                        EXCEPTION->message      = (void *)"";
            	                        EXCEPTION->decisionNum  = 248;
            	                        EXCEPTION->state        = 4;


            	                        goto ruledelete_statementEx;

            	                    }

            	                }
            	                else if ( (((LA248_0 >= ACCOUNT_SYMBOL) && (LA248_0 <= XA_SYMBOL)) || LA248_0 == SHUTDOWN_SYMBOL))
            	                {
            	                    switch ( LA(2) )
            	                    {
            	                    case DOT_SYMBOL:
            	                    	{
            	                    		{
            	                    		    int LA248_43 = LA(3);
            	                    		    if ( (LA248_43 == MULT_OPERATOR))
            	                    		    {
            	                    		        alt248=1;
            	                    		    }
            	                    		    else if ( (LA248_43 == IDENTIFIER))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 77;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_43 == BACK_TICK_QUOTED_ID))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 78;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (LA248_43 == DOUBLE_QUOTED_TEXT))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 79;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_43 >= ACTION_SYMBOL) && (LA248_43 <= SHARE_SYMBOL)) || ((LA248_43 >= SLOW_SYMBOL) && (LA248_43 <= YEAR_SYMBOL))))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 80;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else if ( (((LA248_43 >= ACCOUNT_SYMBOL) && (LA248_43 <= XA_SYMBOL)) || LA248_43 == SHUTDOWN_SYMBOL))
            	                    		    {
            	                    		        switch ( LA(4) )
            	                    		        {
            	                    		        case COMMA_SYMBOL:
            	                    		        case DOT_SYMBOL:
            	                    		        case USING_SYMBOL:
            	                    		        	{
            	                    		        		alt248=1;
            	                    		        	}
            	                    		            break;
            	                    		        case EOF:
            	                    		        case PARTITION_SYMBOL:
            	                    		        case LIMIT_SYMBOL:
            	                    		        case ORDER_SYMBOL:
            	                    		        case SEMICOLON_SYMBOL:
            	                    		        case WHERE_SYMBOL:
            	                    		        	{
            	                    		        		alt248=2;
            	                    		        	}
            	                    		            break;

            	                    		        default:
            	                    		            if (BACKTRACKING>0)
            	                    		            {
            	                    		                FAILEDFLAG = ANTLR3_TRUE;
            	                    		                return retval;
            	                    		            }

            	                    		            CONSTRUCTEX();
            	                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		            EXCEPTION->message      = (void *)"";
            	                    		            EXCEPTION->decisionNum  = 248;
            	                    		            EXCEPTION->state        = 81;


            	                    		            goto ruledelete_statementEx;

            	                    		        }

            	                    		    }
            	                    		    else
            	                    		    {
            	                    		        if (BACKTRACKING>0)
            	                    		        {
            	                    		            FAILEDFLAG = ANTLR3_TRUE;
            	                    		            return retval;
            	                    		        }


            	                    		        CONSTRUCTEX();
            	                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    		        EXCEPTION->message      = (void *)"";
            	                    		        EXCEPTION->decisionNum  = 248;
            	                    		        EXCEPTION->state        = 43;


            	                    		        goto ruledelete_statementEx;

            	                    		    }
            	                    		}
            	                    	}
            	                        break;
            	                    case COMMA_SYMBOL:
            	                    case USING_SYMBOL:
            	                    	{
            	                    		alt248=1;
            	                    	}
            	                        break;
            	                    case EOF:
            	                    case PARTITION_SYMBOL:
            	                    case LIMIT_SYMBOL:
            	                    case ORDER_SYMBOL:
            	                    case SEMICOLON_SYMBOL:
            	                    case WHERE_SYMBOL:
            	                    	{
            	                    		alt248=2;
            	                    	}
            	                        break;

            	                    default:
            	                        if (BACKTRACKING>0)
            	                        {
            	                            FAILEDFLAG = ANTLR3_TRUE;
            	                            return retval;
            	                        }

            	                        CONSTRUCTEX();
            	                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                        EXCEPTION->message      = (void *)"";
            	                        EXCEPTION->decisionNum  = 248;
            	                        EXCEPTION->state        = 5;


            	                        goto ruledelete_statementEx;

            	                    }

            	                }
            	                else if ( (LA248_0 == DOT_SYMBOL))
            	                {
            	                    alt248=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 248;
            	                    EXCEPTION->state        = 0;


            	                    goto ruledelete_statementEx;

            	                }
            	            }
            	            switch (alt248)
            	            {
            	        	case 1:
            	        	    // MySQL.g:998:7: table_ref_list_with_wildcard USING_SYMBOL join_table_list ( where_clause )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_table_ref_list_with_wildcard_in_delete_statement4062);
            	        	        table_ref_list_with_wildcard756=table_ref_list_with_wildcard(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list_with_wildcard756.tree);

            	        	        USING_SYMBOL757 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_delete_statement4064);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        USING_SYMBOL757_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL757));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL757_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_join_table_list_in_delete_statement4066);
            	        	        join_table_list758=join_table_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_table_list758.tree);

            	        	        // MySQL.g:998:65: ( where_clause )?
            	        	        {
            	        	            int alt243=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case WHERE_SYMBOL:
            	        	                	{
            	        	                		alt243=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt243)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:998:65: where_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement4068);
            	        	        	        where_clause759=where_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause759.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:999:8: table_ref ( partition_delete )? ( where_clause )? ( order_by_clause )? ( simple_limit_clause )?
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_table_ref_in_delete_statement4079);
            	        	        table_ref760=table_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref760.tree);

            	        	        // MySQL.g:999:18: ( partition_delete )?
            	        	        {
            	        	            int alt244=2;
            	        	            {
            	        	                int LA244_0 = LA(1);
            	        	                if ( ((SERVER_VERSION >= 50602)) && (LA244_0 == PARTITION_SYMBOL))
            	        	                {
            	        	                    alt244=1;
            	        	                }
            	        	            }
            	        	            switch (alt244)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:999:18: partition_delete
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partition_delete_in_delete_statement4081);
            	        	        	        partition_delete761=partition_delete(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_delete761.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:999:36: ( where_clause )?
            	        	        {
            	        	            int alt245=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case WHERE_SYMBOL:
            	        	                	{
            	        	                		alt245=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt245)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:999:36: where_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement4084);
            	        	        	        where_clause762=where_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause762.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:999:50: ( order_by_clause )?
            	        	        {
            	        	            int alt246=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case ORDER_SYMBOL:
            	        	                	{
            	        	                		alt246=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt246)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:999:50: order_by_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_delete_statement4087);
            	        	        	        order_by_clause763=order_by_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause763.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:999:67: ( simple_limit_clause )?
            	        	        {
            	        	            int alt247=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case LIMIT_SYMBOL:
            	        	                	{
            	        	                		alt247=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt247)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:999:67: simple_limit_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_simple_limit_clause_in_delete_statement4090);
            	        	        	        simple_limit_clause764=simple_limit_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruledelete_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, simple_limit_clause764.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1001:7: table_ref_list_with_wildcard FROM_SYMBOL join_table_list ( where_clause )?
            	    {
            	        FOLLOWPUSH(FOLLOW_table_ref_list_with_wildcard_in_delete_statement4106);
            	        table_ref_list_with_wildcard765=table_ref_list_with_wildcard(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list_with_wildcard765.tree);

            	        FROM_SYMBOL766 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_delete_statement4108);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL766_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL766));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL766_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_join_table_list_in_delete_statement4110);
            	        join_table_list767=join_table_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledelete_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_table_list767.tree);

            	        // MySQL.g:1001:64: ( where_clause )?
            	        {
            	            int alt249=2;
            	            switch ( LA(1) )
            	            {
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt249=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt249)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1001:64: where_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_where_clause_in_delete_statement4112);
            	        	        where_clause768=where_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledelete_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause768.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:1005:1: partition_delete :{...}? => PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier_list 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_SYMBOL769;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL770;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL772;
    MySQLParser_identifier_list_return identifier_list771;
    #undef	RETURN_TYPE_identifier_list771
    #define	RETURN_TYPE_identifier_list771 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL769_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL770_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL772_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL769       = NULL;
    OPEN_PAR_SYMBOL770       = NULL;
    CLOSE_PAR_SYMBOL772       = NULL;
    identifier_list771.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL769_tree   = NULL;
    OPEN_PAR_SYMBOL770_tree   = NULL;
    CLOSE_PAR_SYMBOL772_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1005:17: ({...}? => PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier_list CLOSE_PAR_SYMBOL )
        // MySQL.g:1006:2: {...}? => PARTITION_SYMBOL OPEN_PAR_SYMBOL identifier_list 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";


            }

            PARTITION_SYMBOL769 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partition_delete4131);
            if  (HASEXCEPTION())
            {
                goto rulepartition_deleteEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL769_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL769));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL769_tree);
            }

            OPEN_PAR_SYMBOL770 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_delete4133);
            if  (HASEXCEPTION())
            {
                goto rulepartition_deleteEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL770_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL770));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL770_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_list_in_partition_delete4135);
            identifier_list771=identifier_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_deleteEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list771.tree);

            CLOSE_PAR_SYMBOL772 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_delete4137);
            if  (HASEXCEPTION())
            {
                goto rulepartition_deleteEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL772_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL772));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL772_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:1009: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    set773;

    pANTLR3_BASE_TREE set773_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set773       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set773_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1009:14: ( LOW_PRIORITY_SYMBOL | QUICK_SYMBOL | IGNORE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set773=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == QUICK_SYMBOL || LA(1) == IGNORE_SYMBOL || LA(1) == LOW_PRIORITY_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set773))
                );
                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 do_statement
 * MySQL.g:1013:1: do_statement : DO_SYMBOL ^ ({...}? => expression_list |{...}? => select_item_list ) ;
 */
static MySQLParser_do_statement_return
do_statement(pMySQLParser ctx)
{
    MySQLParser_do_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DO_SYMBOL774;
    MySQLParser_expression_list_return expression_list775;
    #undef	RETURN_TYPE_expression_list775
    #define	RETURN_TYPE_expression_list775 MySQLParser_expression_list_return

    MySQLParser_select_item_list_return select_item_list776;
    #undef	RETURN_TYPE_select_item_list776
    #define	RETURN_TYPE_select_item_list776 MySQLParser_select_item_list_return

    pANTLR3_BASE_TREE DO_SYMBOL774_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DO_SYMBOL774       = NULL;
    expression_list775.tree = NULL;

    select_item_list776.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DO_SYMBOL774_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1013:13: ( DO_SYMBOL ^ ({...}? => expression_list |{...}? => select_item_list ) )
        // MySQL.g:1014:2: DO_SYMBOL ^ ({...}? => expression_list |{...}? => select_item_list )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DO_SYMBOL774 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_do_statement4163);
            if  (HASEXCEPTION())
            {
                goto ruledo_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DO_SYMBOL774_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL774))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DO_SYMBOL774_tree, root_0));
            }

            // MySQL.g:1015:2: ({...}? => expression_list |{...}? => select_item_list )
            {
                int alt251=2;
                {
                    int LA251_0 = LA(1);
                    if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == NOT_SYMBOL))
                    {
                        {
                            int LA251_1 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == NOT_SYMBOL))
                            {
                                {
                                    int LA251_104 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 104;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == BITWISE_NOT_OPERATOR || LA251_1 == MINUS_OPERATOR || LA251_1 == PLUS_OPERATOR))
                            {
                                {
                                    int LA251_105 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 105;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == LOGICAL_NOT_OPERATOR || LA251_1 == NOT2_SYMBOL))
                            {
                                {
                                    int LA251_106 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 106;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == INTERVAL_SYMBOL))
                            {
                                {
                                    int LA251_107 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 107;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == NCHAR_TEXT))
                            {
                                {
                                    int LA251_108 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 108;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == UNDERSCORE_CHARSET))
                            {
                                {
                                    int LA251_109 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 109;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_110 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 110;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_111 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 111;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == DECIMAL_NUMBER || LA251_1 == FLOAT_NUMBER || LA251_1 == INT_NUMBER || LA251_1 == LONG_NUMBER || LA251_1 == ULONGLONG_NUMBER))
                            {
                                {
                                    int LA251_112 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 112;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == DATE_SYMBOL))
                            {
                                {
                                    int LA251_113 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 113;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == TIME_SYMBOL))
                            {
                                {
                                    int LA251_114 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 114;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_115 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 115;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == NULL2_SYMBOL || LA251_1 == NULL_SYMBOL))
                            {
                                {
                                    int LA251_116 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 116;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == FALSE_SYMBOL || LA251_1 == TRUE_SYMBOL))
                            {
                                {
                                    int LA251_117 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 117;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == HEX_NUMBER))
                            {
                                {
                                    int LA251_118 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 118;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == BIN_NUMBER))
                            {
                                {
                                    int LA251_119 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 119;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CHAR_SYMBOL))
                            {
                                {
                                    int LA251_120 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 120;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CURRENT_USER_SYMBOL))
                            {
                                {
                                    int LA251_121 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 121;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == DAY_SYMBOL))
                            {
                                {
                                    int LA251_122 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 122;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == HOUR_SYMBOL))
                            {
                                {
                                    int LA251_123 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 123;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == INSERT_SYMBOL))
                            {
                                {
                                    int LA251_124 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 124;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == LEFT_SYMBOL))
                            {
                                {
                                    int LA251_125 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 125;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MINUTE_SYMBOL))
                            {
                                {
                                    int LA251_126 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 126;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MONTH_SYMBOL))
                            {
                                {
                                    int LA251_127 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 127;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == RIGHT_SYMBOL))
                            {
                                {
                                    int LA251_128 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 128;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == SECOND_SYMBOL))
                            {
                                {
                                    int LA251_129 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 129;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == TRIM_SYMBOL))
                            {
                                {
                                    int LA251_130 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 130;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == USER_SYMBOL))
                            {
                                {
                                    int LA251_131 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 131;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == VALUES_SYMBOL))
                            {
                                {
                                    int LA251_132 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 132;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == YEAR_SYMBOL))
                            {
                                {
                                    int LA251_133 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 133;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == ADDDATE_SYMBOL || LA251_1 == SUBDATE_SYMBOL))
                            {
                                {
                                    int LA251_134 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 134;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CURDATE_SYMBOL))
                            {
                                {
                                    int LA251_135 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 135;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CURTIME_SYMBOL))
                            {
                                {
                                    int LA251_136 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 136;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == DATE_ADD_SYMBOL || LA251_1 == DATE_SUB_SYMBOL))
                            {
                                {
                                    int LA251_137 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 137;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == EXTRACT_SYMBOL))
                            {
                                {
                                    int LA251_138 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 138;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == GET_FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_139 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 139;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == NOW_SYMBOL))
                            {
                                {
                                    int LA251_140 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 140;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == POSITION_SYMBOL))
                            {
                                {
                                    int LA251_141 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 141;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == SUBSTRING_SYMBOL))
                            {
                                {
                                    int LA251_142 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 142;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == SYSDATE_SYMBOL))
                            {
                                {
                                    int LA251_143 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 143;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_1 >= TIMESTAMP_ADD_SYMBOL) && (LA251_1 <= TIMESTAMP_DIFF_SYMBOL))))
                            {
                                {
                                    int LA251_144 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 144;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == UTC_DATE_SYMBOL))
                            {
                                {
                                    int LA251_145 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 145;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == UTC_TIME_SYMBOL))
                            {
                                {
                                    int LA251_146 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 146;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_147 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 147;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == ASCII_SYMBOL))
                            {
                                {
                                    int LA251_148 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 148;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CHARSET_SYMBOL))
                            {
                                {
                                    int LA251_149 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 149;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == COALESCE_SYMBOL))
                            {
                                {
                                    int LA251_150 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 150;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == COLLATION_SYMBOL))
                            {
                                {
                                    int LA251_151 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 151;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == DATABASE_SYMBOL))
                            {
                                {
                                    int LA251_152 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 152;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == IF_SYMBOL))
                            {
                                {
                                    int LA251_153 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 153;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_154 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 154;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MICROSECOND_SYMBOL))
                            {
                                {
                                    int LA251_155 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 155;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MOD_SYMBOL))
                            {
                                {
                                    int LA251_156 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 156;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == OLD_PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_157 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 157;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_158 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 158;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == QUARTER_SYMBOL))
                            {
                                {
                                    int LA251_159 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 159;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == REPEAT_SYMBOL))
                            {
                                {
                                    int LA251_160 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 160;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == REPLACE_SYMBOL))
                            {
                                {
                                    int LA251_161 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 161;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == REVERSE_SYMBOL))
                            {
                                {
                                    int LA251_162 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 162;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == ROW_COUNT_SYMBOL))
                            {
                                {
                                    int LA251_163 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 163;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == TRUNCATE_SYMBOL))
                            {
                                {
                                    int LA251_164 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 164;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == WEEK_SYMBOL))
                            {
                                {
                                    int LA251_165 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 165;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_166 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 166;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_167 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 167;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_168 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 168;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_169 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 169;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_170 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 170;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_171 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 171;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_172 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 172;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_173 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 173;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_174 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 174;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_175 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 175;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_176 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 176;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_177 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 177;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_178 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 178;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_179 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 179;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_180 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 180;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_181 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 181;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == STD_SYMBOL))
                            {
                                {
                                    int LA251_182 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 182;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_183 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 183;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_184 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 184;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_185 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 185;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_186 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 186;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_187 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 187;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == IDENTIFIER))
                            {
                                {
                                    int LA251_188 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 188;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_189 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 189;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_190 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 190;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == ACCOUNT_SYMBOL || ((LA251_1 >= ALWAYS_SYMBOL) && (LA251_1 <= CACHE_SYMBOL)) || ((LA251_1 >= CHECKSUM_SYMBOL) && (LA251_1 <= COMMIT_SYMBOL)) || ((LA251_1 >= DEALLOCATE_SYMBOL) && (LA251_1 <= FOLLOWS_SYMBOL)) || ((LA251_1 >= GROUP_REPLICATION_SYMBOL) && (LA251_1 <= STOP_SYMBOL)) || ((LA251_1 >= UNICODE_SYMBOL) && (LA251_1 <= XA_SYMBOL)) || LA251_1 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_191 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 191;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_192 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 192;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == PARAM_MARKER))
                            {
                                {
                                    int LA251_193 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 193;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_194 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 194;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_195 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 195;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_196 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 196;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == EXISTS_SYMBOL))
                            {
                                {
                                    int LA251_197 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 197;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_198 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 198;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == ACTION_SYMBOL || ((LA251_1 >= AFTER_SYMBOL) && (LA251_1 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA251_1 >= BINLOG_SYMBOL) && (LA251_1 <= CLASS_ORIGIN_SYMBOL)) || LA251_1 == CODE_SYMBOL || ((LA251_1 >= COLUMN_NAME_SYMBOL) && (LA251_1 <= DATETIME_SYMBOL)) || ((LA251_1 >= DEFAULT_AUTH_SYMBOL) && (LA251_1 <= GEOMETRY_SYMBOL)) || ((LA251_1 >= GRANTS_SYMBOL) && (LA251_1 <= HOSTS_SYMBOL)) || ((LA251_1 >= IDENTIFIED_SYMBOL) && (LA251_1 <= LEVEL_SYMBOL)) || ((LA251_1 >= LIST_SYMBOL) && (LA251_1 <= MESSAGE_TEXT_SYMBOL)) || LA251_1 == MIGRATE_SYMBOL || ((LA251_1 >= MIN_ROWS_SYMBOL) && (LA251_1 <= MODE_SYMBOL)) || ((LA251_1 >= MUTEX_SYMBOL) && (LA251_1 <= OFFSET_SYMBOL)) || ((LA251_1 >= ONE_SHOT_SYMBOL) && (LA251_1 <= PARTITIONS_SYMBOL)) || ((LA251_1 >= PHASE_SYMBOL) && (LA251_1 <= PLUGINS_SYMBOL)) || ((LA251_1 >= PRESERVE_SYMBOL) && (LA251_1 <= PROXY_SYMBOL)) || ((LA251_1 >= QUERY_SYMBOL) && (LA251_1 <= RETURNS_SYMBOL)) || ((LA251_1 >= ROLLUP_SYMBOL) && (LA251_1 <= ROWS_SYMBOL)) || LA251_1 == ROW_FORMAT_SYMBOL || ((LA251_1 >= RTREE_SYMBOL) && (LA251_1 <= SCHEMA_NAME_SYMBOL)) || ((LA251_1 >= SERIAL_SYMBOL) && (LA251_1 <= SHARE_SYMBOL)) || ((LA251_1 >= SLOW_SYMBOL) && (LA251_1 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA251_1 >= SUBJECT_SYMBOL) && (LA251_1 <= TRIGGERS_SYMBOL)) || ((LA251_1 >= TYPES_SYMBOL) && (LA251_1 <= USER_RESOURCES_SYMBOL)) || ((LA251_1 >= USE_FRM_SYMBOL) && (LA251_1 <= WAIT_SYMBOL)) || LA251_1 == WORK_SYMBOL || ((LA251_1 >= X509_SYMBOL) && (LA251_1 <= XML_SYMBOL))))
                            {
                                {
                                    int LA251_199 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 199;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    int LA251_200 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 200;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == MATCH_SYMBOL))
                            {
                                {
                                    int LA251_201 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 201;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CASE_SYMBOL))
                            {
                                {
                                    int LA251_202 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 202;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == BINARY_SYMBOL))
                            {
                                {
                                    int LA251_203 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 203;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CAST_SYMBOL))
                            {
                                {
                                    int LA251_204 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 204;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_1 == CONVERT_SYMBOL))
                            {
                                {
                                    int LA251_205 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 205;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 1;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BITWISE_NOT_OPERATOR || LA251_0 == MINUS_OPERATOR || LA251_0 == PLUS_OPERATOR))
                    {
                        {
                            int LA251_2 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == BITWISE_NOT_OPERATOR || LA251_2 == MINUS_OPERATOR || LA251_2 == PLUS_OPERATOR))
                            {
                                {
                                    int LA251_206 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 206;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == LOGICAL_NOT_OPERATOR || LA251_2 == NOT2_SYMBOL))
                            {
                                {
                                    int LA251_207 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 207;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == INTERVAL_SYMBOL))
                            {
                                {
                                    int LA251_208 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 208;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == NCHAR_TEXT))
                            {
                                {
                                    int LA251_209 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 209;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == UNDERSCORE_CHARSET))
                            {
                                {
                                    int LA251_210 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 210;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_211 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 211;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_212 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 212;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == DECIMAL_NUMBER || LA251_2 == FLOAT_NUMBER || LA251_2 == INT_NUMBER || LA251_2 == LONG_NUMBER || LA251_2 == ULONGLONG_NUMBER))
                            {
                                {
                                    int LA251_213 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 213;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == DATE_SYMBOL))
                            {
                                {
                                    int LA251_214 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 214;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == TIME_SYMBOL))
                            {
                                {
                                    int LA251_215 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 215;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_216 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 216;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == NULL2_SYMBOL || LA251_2 == NULL_SYMBOL))
                            {
                                {
                                    int LA251_217 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 217;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == FALSE_SYMBOL || LA251_2 == TRUE_SYMBOL))
                            {
                                {
                                    int LA251_218 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 218;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == HEX_NUMBER))
                            {
                                {
                                    int LA251_219 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 219;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == BIN_NUMBER))
                            {
                                {
                                    int LA251_220 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 220;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CHAR_SYMBOL))
                            {
                                {
                                    int LA251_221 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 221;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CURRENT_USER_SYMBOL))
                            {
                                {
                                    int LA251_222 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 222;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == DAY_SYMBOL))
                            {
                                {
                                    int LA251_223 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 223;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == HOUR_SYMBOL))
                            {
                                {
                                    int LA251_224 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 224;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == INSERT_SYMBOL))
                            {
                                {
                                    int LA251_225 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 225;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == LEFT_SYMBOL))
                            {
                                {
                                    int LA251_226 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 226;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MINUTE_SYMBOL))
                            {
                                {
                                    int LA251_227 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 227;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MONTH_SYMBOL))
                            {
                                {
                                    int LA251_228 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 228;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == RIGHT_SYMBOL))
                            {
                                {
                                    int LA251_229 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 229;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == SECOND_SYMBOL))
                            {
                                {
                                    int LA251_230 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 230;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == TRIM_SYMBOL))
                            {
                                {
                                    int LA251_231 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 231;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == USER_SYMBOL))
                            {
                                {
                                    int LA251_232 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 232;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == VALUES_SYMBOL))
                            {
                                {
                                    int LA251_233 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 233;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == YEAR_SYMBOL))
                            {
                                {
                                    int LA251_234 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 234;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == ADDDATE_SYMBOL || LA251_2 == SUBDATE_SYMBOL))
                            {
                                {
                                    int LA251_235 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 235;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CURDATE_SYMBOL))
                            {
                                {
                                    int LA251_236 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 236;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CURTIME_SYMBOL))
                            {
                                {
                                    int LA251_237 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 237;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == DATE_ADD_SYMBOL || LA251_2 == DATE_SUB_SYMBOL))
                            {
                                {
                                    int LA251_238 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 238;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == EXTRACT_SYMBOL))
                            {
                                {
                                    int LA251_239 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 239;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == GET_FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_240 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 240;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == NOW_SYMBOL))
                            {
                                {
                                    int LA251_241 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 241;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == POSITION_SYMBOL))
                            {
                                {
                                    int LA251_242 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 242;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == SUBSTRING_SYMBOL))
                            {
                                {
                                    int LA251_243 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 243;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == SYSDATE_SYMBOL))
                            {
                                {
                                    int LA251_244 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 244;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_2 >= TIMESTAMP_ADD_SYMBOL) && (LA251_2 <= TIMESTAMP_DIFF_SYMBOL))))
                            {
                                {
                                    int LA251_245 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 245;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == UTC_DATE_SYMBOL))
                            {
                                {
                                    int LA251_246 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 246;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == UTC_TIME_SYMBOL))
                            {
                                {
                                    int LA251_247 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 247;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_248 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 248;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == ASCII_SYMBOL))
                            {
                                {
                                    int LA251_249 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 249;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CHARSET_SYMBOL))
                            {
                                {
                                    int LA251_250 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 250;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == COALESCE_SYMBOL))
                            {
                                {
                                    int LA251_251 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 251;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == COLLATION_SYMBOL))
                            {
                                {
                                    int LA251_252 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 252;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == DATABASE_SYMBOL))
                            {
                                {
                                    int LA251_253 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 253;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == IF_SYMBOL))
                            {
                                {
                                    int LA251_254 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 254;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_255 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 255;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MICROSECOND_SYMBOL))
                            {
                                {
                                    int LA251_256 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 256;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MOD_SYMBOL))
                            {
                                {
                                    int LA251_257 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 257;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == OLD_PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_258 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 258;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_259 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 259;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == QUARTER_SYMBOL))
                            {
                                {
                                    int LA251_260 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 260;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == REPEAT_SYMBOL))
                            {
                                {
                                    int LA251_261 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 261;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == REPLACE_SYMBOL))
                            {
                                {
                                    int LA251_262 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 262;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == REVERSE_SYMBOL))
                            {
                                {
                                    int LA251_263 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 263;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == ROW_COUNT_SYMBOL))
                            {
                                {
                                    int LA251_264 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 264;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == TRUNCATE_SYMBOL))
                            {
                                {
                                    int LA251_265 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 265;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == WEEK_SYMBOL))
                            {
                                {
                                    int LA251_266 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 266;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_267 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 267;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_268 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 268;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_269 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 269;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_270 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 270;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_271 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 271;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_272 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 272;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_273 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 273;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_274 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 274;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_275 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 275;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_276 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 276;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_277 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 277;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_278 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 278;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_279 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 279;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_280 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 280;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_281 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 281;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_282 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 282;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == STD_SYMBOL))
                            {
                                {
                                    int LA251_283 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 283;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_284 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 284;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_285 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 285;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_286 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 286;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_287 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 287;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_288 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 288;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == IDENTIFIER))
                            {
                                {
                                    int LA251_289 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 289;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_290 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 290;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_291 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 291;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == ACCOUNT_SYMBOL || ((LA251_2 >= ALWAYS_SYMBOL) && (LA251_2 <= CACHE_SYMBOL)) || ((LA251_2 >= CHECKSUM_SYMBOL) && (LA251_2 <= COMMIT_SYMBOL)) || ((LA251_2 >= DEALLOCATE_SYMBOL) && (LA251_2 <= FOLLOWS_SYMBOL)) || ((LA251_2 >= GROUP_REPLICATION_SYMBOL) && (LA251_2 <= STOP_SYMBOL)) || ((LA251_2 >= UNICODE_SYMBOL) && (LA251_2 <= XA_SYMBOL)) || LA251_2 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_292 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 292;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_293 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 293;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == PARAM_MARKER))
                            {
                                {
                                    int LA251_294 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 294;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_295 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 295;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_296 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 296;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_297 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 297;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == EXISTS_SYMBOL))
                            {
                                {
                                    int LA251_298 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 298;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_299 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 299;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == ACTION_SYMBOL || ((LA251_2 >= AFTER_SYMBOL) && (LA251_2 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA251_2 >= BINLOG_SYMBOL) && (LA251_2 <= CLASS_ORIGIN_SYMBOL)) || LA251_2 == CODE_SYMBOL || ((LA251_2 >= COLUMN_NAME_SYMBOL) && (LA251_2 <= DATETIME_SYMBOL)) || ((LA251_2 >= DEFAULT_AUTH_SYMBOL) && (LA251_2 <= GEOMETRY_SYMBOL)) || ((LA251_2 >= GRANTS_SYMBOL) && (LA251_2 <= HOSTS_SYMBOL)) || ((LA251_2 >= IDENTIFIED_SYMBOL) && (LA251_2 <= LEVEL_SYMBOL)) || ((LA251_2 >= LIST_SYMBOL) && (LA251_2 <= MESSAGE_TEXT_SYMBOL)) || LA251_2 == MIGRATE_SYMBOL || ((LA251_2 >= MIN_ROWS_SYMBOL) && (LA251_2 <= MODE_SYMBOL)) || ((LA251_2 >= MUTEX_SYMBOL) && (LA251_2 <= OFFSET_SYMBOL)) || ((LA251_2 >= ONE_SHOT_SYMBOL) && (LA251_2 <= PARTITIONS_SYMBOL)) || ((LA251_2 >= PHASE_SYMBOL) && (LA251_2 <= PLUGINS_SYMBOL)) || ((LA251_2 >= PRESERVE_SYMBOL) && (LA251_2 <= PROXY_SYMBOL)) || ((LA251_2 >= QUERY_SYMBOL) && (LA251_2 <= RETURNS_SYMBOL)) || ((LA251_2 >= ROLLUP_SYMBOL) && (LA251_2 <= ROWS_SYMBOL)) || LA251_2 == ROW_FORMAT_SYMBOL || ((LA251_2 >= RTREE_SYMBOL) && (LA251_2 <= SCHEMA_NAME_SYMBOL)) || ((LA251_2 >= SERIAL_SYMBOL) && (LA251_2 <= SHARE_SYMBOL)) || ((LA251_2 >= SLOW_SYMBOL) && (LA251_2 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA251_2 >= SUBJECT_SYMBOL) && (LA251_2 <= TRIGGERS_SYMBOL)) || ((LA251_2 >= TYPES_SYMBOL) && (LA251_2 <= USER_RESOURCES_SYMBOL)) || ((LA251_2 >= USE_FRM_SYMBOL) && (LA251_2 <= WAIT_SYMBOL)) || LA251_2 == WORK_SYMBOL || ((LA251_2 >= X509_SYMBOL) && (LA251_2 <= XML_SYMBOL))))
                            {
                                {
                                    int LA251_300 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 300;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    int LA251_301 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 301;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == MATCH_SYMBOL))
                            {
                                {
                                    int LA251_302 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 302;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CASE_SYMBOL))
                            {
                                {
                                    int LA251_303 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 303;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == BINARY_SYMBOL))
                            {
                                {
                                    int LA251_304 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 304;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CAST_SYMBOL))
                            {
                                {
                                    int LA251_305 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 305;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_2 == CONVERT_SYMBOL))
                            {
                                {
                                    int LA251_306 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 306;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 2;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == LOGICAL_NOT_OPERATOR || LA251_0 == NOT2_SYMBOL))
                    {
                        {
                            int LA251_3 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == INTERVAL_SYMBOL))
                            {
                                {
                                    int LA251_307 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 307;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == NCHAR_TEXT))
                            {
                                {
                                    int LA251_308 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 308;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == UNDERSCORE_CHARSET))
                            {
                                {
                                    int LA251_309 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 309;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_310 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 310;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_311 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 311;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == DECIMAL_NUMBER || LA251_3 == FLOAT_NUMBER || LA251_3 == INT_NUMBER || LA251_3 == LONG_NUMBER || LA251_3 == ULONGLONG_NUMBER))
                            {
                                {
                                    int LA251_312 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 312;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == DATE_SYMBOL))
                            {
                                {
                                    int LA251_313 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 313;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == TIME_SYMBOL))
                            {
                                {
                                    int LA251_314 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 314;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_315 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 315;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == NULL2_SYMBOL || LA251_3 == NULL_SYMBOL))
                            {
                                {
                                    int LA251_316 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 316;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == FALSE_SYMBOL || LA251_3 == TRUE_SYMBOL))
                            {
                                {
                                    int LA251_317 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 317;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == HEX_NUMBER))
                            {
                                {
                                    int LA251_318 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 318;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == BIN_NUMBER))
                            {
                                {
                                    int LA251_319 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 319;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CHAR_SYMBOL))
                            {
                                {
                                    int LA251_320 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 320;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CURRENT_USER_SYMBOL))
                            {
                                {
                                    int LA251_321 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 321;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == DAY_SYMBOL))
                            {
                                {
                                    int LA251_322 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 322;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == HOUR_SYMBOL))
                            {
                                {
                                    int LA251_323 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 323;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == INSERT_SYMBOL))
                            {
                                {
                                    int LA251_324 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 324;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == LEFT_SYMBOL))
                            {
                                {
                                    int LA251_325 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 325;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MINUTE_SYMBOL))
                            {
                                {
                                    int LA251_326 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 326;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MONTH_SYMBOL))
                            {
                                {
                                    int LA251_327 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 327;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == RIGHT_SYMBOL))
                            {
                                {
                                    int LA251_328 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 328;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == SECOND_SYMBOL))
                            {
                                {
                                    int LA251_329 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 329;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == TRIM_SYMBOL))
                            {
                                {
                                    int LA251_330 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 330;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == USER_SYMBOL))
                            {
                                {
                                    int LA251_331 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 331;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == VALUES_SYMBOL))
                            {
                                {
                                    int LA251_332 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 332;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == YEAR_SYMBOL))
                            {
                                {
                                    int LA251_333 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 333;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == ADDDATE_SYMBOL || LA251_3 == SUBDATE_SYMBOL))
                            {
                                {
                                    int LA251_334 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 334;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CURDATE_SYMBOL))
                            {
                                {
                                    int LA251_335 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 335;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CURTIME_SYMBOL))
                            {
                                {
                                    int LA251_336 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 336;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == DATE_ADD_SYMBOL || LA251_3 == DATE_SUB_SYMBOL))
                            {
                                {
                                    int LA251_337 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 337;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == EXTRACT_SYMBOL))
                            {
                                {
                                    int LA251_338 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 338;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == GET_FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_339 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 339;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == NOW_SYMBOL))
                            {
                                {
                                    int LA251_340 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 340;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == POSITION_SYMBOL))
                            {
                                {
                                    int LA251_341 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 341;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == SUBSTRING_SYMBOL))
                            {
                                {
                                    int LA251_342 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 342;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == SYSDATE_SYMBOL))
                            {
                                {
                                    int LA251_343 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 343;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_3 >= TIMESTAMP_ADD_SYMBOL) && (LA251_3 <= TIMESTAMP_DIFF_SYMBOL))))
                            {
                                {
                                    int LA251_344 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 344;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == UTC_DATE_SYMBOL))
                            {
                                {
                                    int LA251_345 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 345;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == UTC_TIME_SYMBOL))
                            {
                                {
                                    int LA251_346 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 346;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_347 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 347;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == ASCII_SYMBOL))
                            {
                                {
                                    int LA251_348 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 348;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CHARSET_SYMBOL))
                            {
                                {
                                    int LA251_349 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 349;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == COALESCE_SYMBOL))
                            {
                                {
                                    int LA251_350 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 350;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == COLLATION_SYMBOL))
                            {
                                {
                                    int LA251_351 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 351;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == DATABASE_SYMBOL))
                            {
                                {
                                    int LA251_352 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 352;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == IF_SYMBOL))
                            {
                                {
                                    int LA251_353 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 353;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_354 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 354;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MICROSECOND_SYMBOL))
                            {
                                {
                                    int LA251_355 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 355;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MOD_SYMBOL))
                            {
                                {
                                    int LA251_356 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 356;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == OLD_PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_357 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 357;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_358 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 358;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == QUARTER_SYMBOL))
                            {
                                {
                                    int LA251_359 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 359;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == REPEAT_SYMBOL))
                            {
                                {
                                    int LA251_360 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 360;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == REPLACE_SYMBOL))
                            {
                                {
                                    int LA251_361 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 361;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == REVERSE_SYMBOL))
                            {
                                {
                                    int LA251_362 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 362;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == ROW_COUNT_SYMBOL))
                            {
                                {
                                    int LA251_363 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 363;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == TRUNCATE_SYMBOL))
                            {
                                {
                                    int LA251_364 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 364;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == WEEK_SYMBOL))
                            {
                                {
                                    int LA251_365 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 365;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_366 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 366;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_367 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 367;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_368 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 368;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_369 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 369;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_370 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 370;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_371 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 371;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_372 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 372;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_373 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 373;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_374 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 374;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_375 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 375;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_376 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 376;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_377 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 377;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_378 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 378;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_379 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 379;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_380 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 380;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_381 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 381;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == STD_SYMBOL))
                            {
                                {
                                    int LA251_382 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 382;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_383 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 383;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_384 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 384;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_385 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 385;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_386 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 386;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_387 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 387;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == IDENTIFIER))
                            {
                                {
                                    int LA251_388 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 388;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_389 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 389;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_390 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 390;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == ACCOUNT_SYMBOL || ((LA251_3 >= ALWAYS_SYMBOL) && (LA251_3 <= CACHE_SYMBOL)) || ((LA251_3 >= CHECKSUM_SYMBOL) && (LA251_3 <= COMMIT_SYMBOL)) || ((LA251_3 >= DEALLOCATE_SYMBOL) && (LA251_3 <= FOLLOWS_SYMBOL)) || ((LA251_3 >= GROUP_REPLICATION_SYMBOL) && (LA251_3 <= STOP_SYMBOL)) || ((LA251_3 >= UNICODE_SYMBOL) && (LA251_3 <= XA_SYMBOL)) || LA251_3 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_391 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 391;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_392 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 392;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == PARAM_MARKER))
                            {
                                {
                                    int LA251_393 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 393;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_394 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 394;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_395 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 395;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_396 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 396;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == EXISTS_SYMBOL))
                            {
                                {
                                    int LA251_397 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 397;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_398 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 398;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == ACTION_SYMBOL || ((LA251_3 >= AFTER_SYMBOL) && (LA251_3 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA251_3 >= BINLOG_SYMBOL) && (LA251_3 <= CLASS_ORIGIN_SYMBOL)) || LA251_3 == CODE_SYMBOL || ((LA251_3 >= COLUMN_NAME_SYMBOL) && (LA251_3 <= DATETIME_SYMBOL)) || ((LA251_3 >= DEFAULT_AUTH_SYMBOL) && (LA251_3 <= GEOMETRY_SYMBOL)) || ((LA251_3 >= GRANTS_SYMBOL) && (LA251_3 <= HOSTS_SYMBOL)) || ((LA251_3 >= IDENTIFIED_SYMBOL) && (LA251_3 <= LEVEL_SYMBOL)) || ((LA251_3 >= LIST_SYMBOL) && (LA251_3 <= MESSAGE_TEXT_SYMBOL)) || LA251_3 == MIGRATE_SYMBOL || ((LA251_3 >= MIN_ROWS_SYMBOL) && (LA251_3 <= MODE_SYMBOL)) || ((LA251_3 >= MUTEX_SYMBOL) && (LA251_3 <= OFFSET_SYMBOL)) || ((LA251_3 >= ONE_SHOT_SYMBOL) && (LA251_3 <= PARTITIONS_SYMBOL)) || ((LA251_3 >= PHASE_SYMBOL) && (LA251_3 <= PLUGINS_SYMBOL)) || ((LA251_3 >= PRESERVE_SYMBOL) && (LA251_3 <= PROXY_SYMBOL)) || ((LA251_3 >= QUERY_SYMBOL) && (LA251_3 <= RETURNS_SYMBOL)) || ((LA251_3 >= ROLLUP_SYMBOL) && (LA251_3 <= ROWS_SYMBOL)) || LA251_3 == ROW_FORMAT_SYMBOL || ((LA251_3 >= RTREE_SYMBOL) && (LA251_3 <= SCHEMA_NAME_SYMBOL)) || ((LA251_3 >= SERIAL_SYMBOL) && (LA251_3 <= SHARE_SYMBOL)) || ((LA251_3 >= SLOW_SYMBOL) && (LA251_3 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA251_3 >= SUBJECT_SYMBOL) && (LA251_3 <= TRIGGERS_SYMBOL)) || ((LA251_3 >= TYPES_SYMBOL) && (LA251_3 <= USER_RESOURCES_SYMBOL)) || ((LA251_3 >= USE_FRM_SYMBOL) && (LA251_3 <= WAIT_SYMBOL)) || LA251_3 == WORK_SYMBOL || ((LA251_3 >= X509_SYMBOL) && (LA251_3 <= XML_SYMBOL))))
                            {
                                {
                                    int LA251_399 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 399;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    int LA251_400 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 400;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == MATCH_SYMBOL))
                            {
                                {
                                    int LA251_401 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 401;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CASE_SYMBOL))
                            {
                                {
                                    int LA251_402 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 402;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == BINARY_SYMBOL))
                            {
                                {
                                    int LA251_403 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 403;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CAST_SYMBOL))
                            {
                                {
                                    int LA251_404 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 404;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_3 == CONVERT_SYMBOL))
                            {
                                {
                                    int LA251_405 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 405;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 3;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == INTERVAL_SYMBOL))
                    {
                        {
                            int LA251_4 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_406 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 406;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == NOT_SYMBOL))
                            {
                                {
                                    int LA251_407 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 407;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == BITWISE_NOT_OPERATOR || LA251_4 == MINUS_OPERATOR || LA251_4 == PLUS_OPERATOR))
                            {
                                {
                                    int LA251_408 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 408;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == LOGICAL_NOT_OPERATOR || LA251_4 == NOT2_SYMBOL))
                            {
                                {
                                    int LA251_409 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 409;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == INTERVAL_SYMBOL))
                            {
                                {
                                    int LA251_410 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 410;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == NCHAR_TEXT))
                            {
                                {
                                    int LA251_411 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 411;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == UNDERSCORE_CHARSET))
                            {
                                {
                                    int LA251_412 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 412;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_413 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 413;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_414 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 414;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == DECIMAL_NUMBER || LA251_4 == FLOAT_NUMBER || LA251_4 == INT_NUMBER || LA251_4 == LONG_NUMBER || LA251_4 == ULONGLONG_NUMBER))
                            {
                                {
                                    int LA251_415 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 415;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == DATE_SYMBOL))
                            {
                                {
                                    int LA251_416 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 416;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == TIME_SYMBOL))
                            {
                                {
                                    int LA251_417 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 417;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_418 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 418;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == NULL2_SYMBOL || LA251_4 == NULL_SYMBOL))
                            {
                                {
                                    int LA251_419 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 419;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == FALSE_SYMBOL || LA251_4 == TRUE_SYMBOL))
                            {
                                {
                                    int LA251_420 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 420;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == HEX_NUMBER))
                            {
                                {
                                    int LA251_421 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 421;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == BIN_NUMBER))
                            {
                                {
                                    int LA251_422 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 422;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CHAR_SYMBOL))
                            {
                                {
                                    int LA251_423 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 423;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CURRENT_USER_SYMBOL))
                            {
                                {
                                    int LA251_424 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 424;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == DAY_SYMBOL))
                            {
                                {
                                    int LA251_425 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 425;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == HOUR_SYMBOL))
                            {
                                {
                                    int LA251_426 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 426;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == INSERT_SYMBOL))
                            {
                                {
                                    int LA251_427 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 427;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == LEFT_SYMBOL))
                            {
                                {
                                    int LA251_428 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 428;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MINUTE_SYMBOL))
                            {
                                {
                                    int LA251_429 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 429;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MONTH_SYMBOL))
                            {
                                {
                                    int LA251_430 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 430;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == RIGHT_SYMBOL))
                            {
                                {
                                    int LA251_431 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 431;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == SECOND_SYMBOL))
                            {
                                {
                                    int LA251_432 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 432;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == TRIM_SYMBOL))
                            {
                                {
                                    int LA251_433 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 433;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == USER_SYMBOL))
                            {
                                {
                                    int LA251_434 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 434;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == VALUES_SYMBOL))
                            {
                                {
                                    int LA251_435 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 435;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == YEAR_SYMBOL))
                            {
                                {
                                    int LA251_436 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 436;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == ADDDATE_SYMBOL || LA251_4 == SUBDATE_SYMBOL))
                            {
                                {
                                    int LA251_437 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 437;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CURDATE_SYMBOL))
                            {
                                {
                                    int LA251_438 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 438;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CURTIME_SYMBOL))
                            {
                                {
                                    int LA251_439 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 439;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == DATE_ADD_SYMBOL || LA251_4 == DATE_SUB_SYMBOL))
                            {
                                {
                                    int LA251_440 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 440;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == EXTRACT_SYMBOL))
                            {
                                {
                                    int LA251_441 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 441;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == GET_FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_442 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 442;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == NOW_SYMBOL))
                            {
                                {
                                    int LA251_443 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 443;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == POSITION_SYMBOL))
                            {
                                {
                                    int LA251_444 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 444;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == SUBSTRING_SYMBOL))
                            {
                                {
                                    int LA251_445 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 445;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == SYSDATE_SYMBOL))
                            {
                                {
                                    int LA251_446 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 446;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_4 >= TIMESTAMP_ADD_SYMBOL) && (LA251_4 <= TIMESTAMP_DIFF_SYMBOL))))
                            {
                                {
                                    int LA251_447 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 447;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == UTC_DATE_SYMBOL))
                            {
                                {
                                    int LA251_448 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 448;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == UTC_TIME_SYMBOL))
                            {
                                {
                                    int LA251_449 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 449;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_450 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 450;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == ASCII_SYMBOL))
                            {
                                {
                                    int LA251_451 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 451;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CHARSET_SYMBOL))
                            {
                                {
                                    int LA251_452 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 452;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == COALESCE_SYMBOL))
                            {
                                {
                                    int LA251_453 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 453;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == COLLATION_SYMBOL))
                            {
                                {
                                    int LA251_454 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 454;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == DATABASE_SYMBOL))
                            {
                                {
                                    int LA251_455 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 455;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == IF_SYMBOL))
                            {
                                {
                                    int LA251_456 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 456;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_457 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 457;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MICROSECOND_SYMBOL))
                            {
                                {
                                    int LA251_458 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 458;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MOD_SYMBOL))
                            {
                                {
                                    int LA251_459 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 459;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == OLD_PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_460 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 460;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_461 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 461;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == QUARTER_SYMBOL))
                            {
                                {
                                    int LA251_462 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 462;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == REPEAT_SYMBOL))
                            {
                                {
                                    int LA251_463 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 463;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == REPLACE_SYMBOL))
                            {
                                {
                                    int LA251_464 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 464;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == REVERSE_SYMBOL))
                            {
                                {
                                    int LA251_465 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 465;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == ROW_COUNT_SYMBOL))
                            {
                                {
                                    int LA251_466 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 466;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == TRUNCATE_SYMBOL))
                            {
                                {
                                    int LA251_467 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 467;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == WEEK_SYMBOL))
                            {
                                {
                                    int LA251_468 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 468;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_469 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 469;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_470 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 470;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_471 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 471;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_472 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 472;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_473 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 473;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_474 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 474;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_475 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 475;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_476 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 476;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_477 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 477;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_478 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 478;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_479 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 479;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_480 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 480;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_481 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 481;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_482 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 482;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_483 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 483;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_484 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 484;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == STD_SYMBOL))
                            {
                                {
                                    int LA251_485 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 485;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_486 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 486;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_487 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 487;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_488 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 488;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_489 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 489;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_490 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 490;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == IDENTIFIER))
                            {
                                {
                                    int LA251_491 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 491;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_492 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 492;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_493 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 493;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == ACCOUNT_SYMBOL || ((LA251_4 >= ALWAYS_SYMBOL) && (LA251_4 <= CACHE_SYMBOL)) || ((LA251_4 >= CHECKSUM_SYMBOL) && (LA251_4 <= COMMIT_SYMBOL)) || ((LA251_4 >= DEALLOCATE_SYMBOL) && (LA251_4 <= FOLLOWS_SYMBOL)) || ((LA251_4 >= GROUP_REPLICATION_SYMBOL) && (LA251_4 <= STOP_SYMBOL)) || ((LA251_4 >= UNICODE_SYMBOL) && (LA251_4 <= XA_SYMBOL)) || LA251_4 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_494 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 494;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_495 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 495;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == PARAM_MARKER))
                            {
                                {
                                    int LA251_496 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 496;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_497 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 497;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_498 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 498;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_499 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 499;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == EXISTS_SYMBOL))
                            {
                                {
                                    int LA251_500 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 500;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == ACTION_SYMBOL || ((LA251_4 >= AFTER_SYMBOL) && (LA251_4 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA251_4 >= BINLOG_SYMBOL) && (LA251_4 <= CLASS_ORIGIN_SYMBOL)) || LA251_4 == CODE_SYMBOL || ((LA251_4 >= COLUMN_NAME_SYMBOL) && (LA251_4 <= DATETIME_SYMBOL)) || ((LA251_4 >= DEFAULT_AUTH_SYMBOL) && (LA251_4 <= GEOMETRY_SYMBOL)) || ((LA251_4 >= GRANTS_SYMBOL) && (LA251_4 <= HOSTS_SYMBOL)) || ((LA251_4 >= IDENTIFIED_SYMBOL) && (LA251_4 <= LEVEL_SYMBOL)) || ((LA251_4 >= LIST_SYMBOL) && (LA251_4 <= MESSAGE_TEXT_SYMBOL)) || LA251_4 == MIGRATE_SYMBOL || ((LA251_4 >= MIN_ROWS_SYMBOL) && (LA251_4 <= MODE_SYMBOL)) || ((LA251_4 >= MUTEX_SYMBOL) && (LA251_4 <= OFFSET_SYMBOL)) || ((LA251_4 >= ONE_SHOT_SYMBOL) && (LA251_4 <= PARTITIONS_SYMBOL)) || ((LA251_4 >= PHASE_SYMBOL) && (LA251_4 <= PLUGINS_SYMBOL)) || ((LA251_4 >= PRESERVE_SYMBOL) && (LA251_4 <= PROXY_SYMBOL)) || ((LA251_4 >= QUERY_SYMBOL) && (LA251_4 <= RETURNS_SYMBOL)) || ((LA251_4 >= ROLLUP_SYMBOL) && (LA251_4 <= ROWS_SYMBOL)) || LA251_4 == ROW_FORMAT_SYMBOL || ((LA251_4 >= RTREE_SYMBOL) && (LA251_4 <= SCHEMA_NAME_SYMBOL)) || ((LA251_4 >= SERIAL_SYMBOL) && (LA251_4 <= SHARE_SYMBOL)) || ((LA251_4 >= SLOW_SYMBOL) && (LA251_4 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA251_4 >= SUBJECT_SYMBOL) && (LA251_4 <= TRIGGERS_SYMBOL)) || ((LA251_4 >= TYPES_SYMBOL) && (LA251_4 <= USER_RESOURCES_SYMBOL)) || ((LA251_4 >= USE_FRM_SYMBOL) && (LA251_4 <= WAIT_SYMBOL)) || LA251_4 == WORK_SYMBOL || ((LA251_4 >= X509_SYMBOL) && (LA251_4 <= XML_SYMBOL))))
                            {
                                {
                                    int LA251_501 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 501;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    int LA251_502 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 502;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == MATCH_SYMBOL))
                            {
                                {
                                    int LA251_503 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 503;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CASE_SYMBOL))
                            {
                                {
                                    int LA251_504 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 504;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == BINARY_SYMBOL))
                            {
                                {
                                    int LA251_505 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 505;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CAST_SYMBOL))
                            {
                                {
                                    int LA251_506 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 506;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_4 == CONVERT_SYMBOL))
                            {
                                {
                                    int LA251_507 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 507;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 4;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == NCHAR_TEXT))
                    {
                        {
                            int LA251_5 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 5;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == UNDERSCORE_CHARSET))
                    {
                        {
                            int LA251_6 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_6 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_538 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 538;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_6 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_539 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 539;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_6 == HEX_NUMBER))
                            {
                                {
                                    int LA251_540 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 540;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_6 == BIN_NUMBER))
                            {
                                {
                                    int LA251_541 = LA(3);
                                    if ( (( (( ((SERVER_VERSION >= 50003)) && ((SERVER_VERSION >= 50003)) )) && ((SERVER_VERSION < 50709)) )))
                                    {
                                        alt251=1;
                                    }
                                    else if ( (( (( ((SERVER_VERSION >= 50709)) && ((SERVER_VERSION >= 50709)) )) && ((SERVER_VERSION >= 50003)) )))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 541;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 6;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == SINGLE_QUOTED_TEXT))
                    {
                        {
                            int LA251_7 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 7;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DOUBLE_QUOTED_TEXT))
                    {
                        {
                            int LA251_8 = LA(2);
                            if ( (( (( ((((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) && ((((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) )) && ((SERVER_VERSION < 50709)) )))
                            {
                                alt251=1;
                            }
                            else if ( (( (( ((SERVER_VERSION >= 50709)) && ((SERVER_VERSION >= 50709)) )) && ((((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES)))||((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))) )))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 8;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DECIMAL_NUMBER || LA251_0 == FLOAT_NUMBER || LA251_0 == INT_NUMBER || LA251_0 == LONG_NUMBER || LA251_0 == ULONGLONG_NUMBER))
                    {
                        {
                            int LA251_9 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 9;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DATE_SYMBOL))
                    {
                        {
                            int LA251_10 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 10;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == TIME_SYMBOL))
                    {
                        {
                            int LA251_11 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 11;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == TIMESTAMP_SYMBOL))
                    {
                        {
                            int LA251_12 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 12;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == NULL2_SYMBOL || LA251_0 == NULL_SYMBOL))
                    {
                        {
                            int LA251_13 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 13;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == FALSE_SYMBOL || LA251_0 == TRUE_SYMBOL))
                    {
                        {
                            int LA251_14 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 14;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == HEX_NUMBER))
                    {
                        {
                            int LA251_15 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 15;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BIN_NUMBER))
                    {
                        {
                            int LA251_16 = LA(2);
                            if ( (( (( ((SERVER_VERSION >= 50003)) && ((SERVER_VERSION >= 50003)) )) && ((SERVER_VERSION < 50709)) )))
                            {
                                alt251=1;
                            }
                            else if ( (( (( ((SERVER_VERSION >= 50709)) && ((SERVER_VERSION >= 50709)) )) && ((SERVER_VERSION >= 50003)) )))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 16;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CHAR_SYMBOL))
                    {
                        {
                            int LA251_17 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_17 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_849 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 849;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 17;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CURRENT_USER_SYMBOL))
                    {
                        {
                            int LA251_18 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 18;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DAY_SYMBOL))
                    {
                        {
                            int LA251_19 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 19;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == HOUR_SYMBOL))
                    {
                        {
                            int LA251_20 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 20;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == INSERT_SYMBOL))
                    {
                        {
                            int LA251_21 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_21 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_944 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 944;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 21;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == LEFT_SYMBOL))
                    {
                        {
                            int LA251_22 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_22 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_945 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 945;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 22;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MINUTE_SYMBOL))
                    {
                        {
                            int LA251_23 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 23;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MONTH_SYMBOL))
                    {
                        {
                            int LA251_24 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 24;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == RIGHT_SYMBOL))
                    {
                        {
                            int LA251_25 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_25 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1010 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1010;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 25;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == SECOND_SYMBOL))
                    {
                        {
                            int LA251_26 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 26;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == TRIM_SYMBOL))
                    {
                        {
                            int LA251_27 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_27 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1043 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1043;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 27;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == USER_SYMBOL))
                    {
                        {
                            int LA251_28 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 28;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == VALUES_SYMBOL))
                    {
                        {
                            int LA251_29 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_29 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1076 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1076;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 29;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == YEAR_SYMBOL))
                    {
                        {
                            int LA251_30 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 30;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == ADDDATE_SYMBOL || LA251_0 == SUBDATE_SYMBOL))
                    {
                        {
                            int LA251_31 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 31;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CURDATE_SYMBOL))
                    {
                        {
                            int LA251_32 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 32;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CURTIME_SYMBOL))
                    {
                        {
                            int LA251_33 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 33;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DATE_ADD_SYMBOL || LA251_0 == DATE_SUB_SYMBOL))
                    {
                        {
                            int LA251_34 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_34 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1201 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1201;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 34;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == EXTRACT_SYMBOL))
                    {
                        {
                            int LA251_35 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_35 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1202 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1202;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 35;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == GET_FORMAT_SYMBOL))
                    {
                        {
                            int LA251_36 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 36;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == NOW_SYMBOL))
                    {
                        {
                            int LA251_37 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 37;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == POSITION_SYMBOL))
                    {
                        {
                            int LA251_38 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_38 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1265 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1265;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 38;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == SUBSTRING_SYMBOL))
                    {
                        {
                            int LA251_39 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_39 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1266 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1266;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 39;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == SYSDATE_SYMBOL))
                    {
                        {
                            int LA251_40 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 40;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_0 >= TIMESTAMP_ADD_SYMBOL) && (LA251_0 <= TIMESTAMP_DIFF_SYMBOL))))
                    {
                        {
                            int LA251_41 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 41;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == UTC_DATE_SYMBOL))
                    {
                        {
                            int LA251_42 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 42;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == UTC_TIME_SYMBOL))
                    {
                        {
                            int LA251_43 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 43;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == UTC_TIMESTAMP_SYMBOL))
                    {
                        {
                            int LA251_44 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 44;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == ASCII_SYMBOL))
                    {
                        {
                            int LA251_45 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 45;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CHARSET_SYMBOL))
                    {
                        {
                            int LA251_46 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 46;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == COALESCE_SYMBOL))
                    {
                        {
                            int LA251_47 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 47;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == COLLATION_SYMBOL))
                    {
                        {
                            int LA251_48 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 48;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DATABASE_SYMBOL))
                    {
                        {
                            int LA251_49 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_49 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1547 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1547;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 49;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == IF_SYMBOL))
                    {
                        {
                            int LA251_50 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_50 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1548 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1548;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 50;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == FORMAT_SYMBOL))
                    {
                        {
                            int LA251_51 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 51;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MICROSECOND_SYMBOL))
                    {
                        {
                            int LA251_52 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 52;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MOD_SYMBOL))
                    {
                        {
                            int LA251_53 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_53 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1613 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1613;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 53;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == OLD_PASSWORD_SYMBOL))
                    {
                        {
                            int LA251_54 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 54;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == PASSWORD_SYMBOL))
                    {
                        {
                            int LA251_55 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 55;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == QUARTER_SYMBOL))
                    {
                        {
                            int LA251_56 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 56;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == REPEAT_SYMBOL))
                    {
                        {
                            int LA251_57 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_57 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1710 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1710;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 57;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == REPLACE_SYMBOL))
                    {
                        {
                            int LA251_58 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_58 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_1711 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 1711;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 58;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == REVERSE_SYMBOL))
                    {
                        {
                            int LA251_59 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 59;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == ROW_COUNT_SYMBOL))
                    {
                        {
                            int LA251_60 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 60;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == TRUNCATE_SYMBOL))
                    {
                        {
                            int LA251_61 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 61;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == WEEK_SYMBOL))
                    {
                        {
                            int LA251_62 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 62;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == WEIGHT_STRING_SYMBOL))
                    {
                        {
                            int LA251_63 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 63;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == GEOMETRYCOLLECTION_SYMBOL))
                    {
                        {
                            int LA251_64 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 64;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == LINESTRING_SYMBOL))
                    {
                        {
                            int LA251_65 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 65;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MULTILINESTRING_SYMBOL))
                    {
                        {
                            int LA251_66 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 66;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MULTIPOINT_SYMBOL))
                    {
                        {
                            int LA251_67 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 67;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MULTIPOLYGON_SYMBOL))
                    {
                        {
                            int LA251_68 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 68;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == POINT_SYMBOL))
                    {
                        {
                            int LA251_69 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 69;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == POLYGON_SYMBOL))
                    {
                        {
                            int LA251_70 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 70;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CONTAINS_SYMBOL))
                    {
                        {
                            int LA251_71 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 71;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == AVG_SYMBOL))
                    {
                        {
                            int LA251_72 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 72;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BIT_AND_SYMBOL))
                    {
                        {
                            int LA251_73 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_73 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2160 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2160;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 73;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BIT_OR_SYMBOL))
                    {
                        {
                            int LA251_74 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_74 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2161 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2161;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 74;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BIT_XOR_SYMBOL))
                    {
                        {
                            int LA251_75 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_75 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2162 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2162;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 75;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == COUNT_SYMBOL))
                    {
                        {
                            int LA251_76 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_76 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2163 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2163;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 76;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MIN_SYMBOL))
                    {
                        {
                            int LA251_77 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_77 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2164 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2164;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 77;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MAX_SYMBOL))
                    {
                        {
                            int LA251_78 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_78 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2165 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2165;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 78;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == STD_SYMBOL))
                    {
                        {
                            int LA251_79 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_79 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2166 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2166;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 79;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == VARIANCE_SYMBOL))
                    {
                        {
                            int LA251_80 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_80 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2167 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2167;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 80;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == STDDEV_SAMP_SYMBOL))
                    {
                        {
                            int LA251_81 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_81 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2168 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2168;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 81;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == VAR_SAMP_SYMBOL))
                    {
                        {
                            int LA251_82 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_82 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2169 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2169;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 82;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == SUM_SYMBOL))
                    {
                        {
                            int LA251_83 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_83 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2170 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2170;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 83;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == GROUP_CONCAT_SYMBOL))
                    {
                        {
                            int LA251_84 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_84 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2171 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2171;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 84;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == IDENTIFIER))
                    {
                        {
                            int LA251_85 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 85;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BACK_TICK_QUOTED_ID))
                    {
                        {
                            int LA251_86 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 86;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == ROW_SYMBOL))
                    {
                        {
                            int LA251_87 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 87;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == ACCOUNT_SYMBOL || ((LA251_0 >= ALWAYS_SYMBOL) && (LA251_0 <= CACHE_SYMBOL)) || ((LA251_0 >= CHECKSUM_SYMBOL) && (LA251_0 <= COMMIT_SYMBOL)) || ((LA251_0 >= DEALLOCATE_SYMBOL) && (LA251_0 <= FOLLOWS_SYMBOL)) || ((LA251_0 >= GROUP_REPLICATION_SYMBOL) && (LA251_0 <= STOP_SYMBOL)) || ((LA251_0 >= UNICODE_SYMBOL) && (LA251_0 <= XA_SYMBOL)) || LA251_0 == SHUTDOWN_SYMBOL))
                    {
                        {
                            int LA251_88 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 88;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == DOT_SYMBOL))
                    {
                        {
                            int LA251_89 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_89 == IDENTIFIER))
                            {
                                {
                                    int LA251_2300 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2300;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_89 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_2301 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2301;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_89 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2302 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2302;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_89 >= ACTION_SYMBOL) && (LA251_89 <= SHARE_SYMBOL)) || ((LA251_89 >= SLOW_SYMBOL) && (LA251_89 <= YEAR_SYMBOL))))
                            {
                                {
                                    int LA251_2303 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2303;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_89 >= ACCOUNT_SYMBOL) && (LA251_89 <= XA_SYMBOL)) || LA251_89 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_2304 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2304;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 89;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == PARAM_MARKER))
                    {
                        {
                            int LA251_90 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 90;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == AT_SIGN_SYMBOL))
                    {
                        {
                            int LA251_91 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_91 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2334 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2334;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_91 == IDENTIFIER))
                            {
                                {
                                    int LA251_2335 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2335;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_91 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_2336 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2336;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_91 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2337 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2337;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_91 >= ACTION_SYMBOL) && (LA251_91 <= SHARE_SYMBOL)) || ((LA251_91 >= SLOW_SYMBOL) && (LA251_91 <= YEAR_SYMBOL))))
                            {
                                {
                                    int LA251_2338 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2338;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_91 >= ACCOUNT_SYMBOL) && (LA251_91 <= XA_SYMBOL)) || LA251_91 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_2339 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2339;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 91;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == AT_TEXT_SUFFIX))
                    {
                        {
                            int LA251_92 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 92;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == AT_AT_SIGN_SYMBOL))
                    {
                        {
                            int LA251_93 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_93 == GLOBAL_SYMBOL || LA251_93 == LOCAL_SYMBOL || LA251_93 == SESSION_SYMBOL))
                            {
                                {
                                    int LA251_2370 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2370;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_93 == IDENTIFIER))
                            {
                                {
                                    int LA251_2371 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2371;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_93 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_2372 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2372;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_93 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2373 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2373;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_93 >= ACTION_SYMBOL) && (LA251_93 <= GRANTS_SYMBOL)) || ((LA251_93 >= HASH_SYMBOL) && (LA251_93 <= LIST_SYMBOL)) || ((LA251_93 >= LOCKS_SYMBOL) && (LA251_93 <= SERIALIZABLE_SYMBOL)) || ((LA251_93 >= SIMPLE_SYMBOL) && (LA251_93 <= SHARE_SYMBOL)) || ((LA251_93 >= SLOW_SYMBOL) && (LA251_93 <= YEAR_SYMBOL))))
                            {
                                {
                                    int LA251_2374 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2374;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_93 >= ACCOUNT_SYMBOL) && (LA251_93 <= XA_SYMBOL)) || LA251_93 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_2375 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2375;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_93 == DEFAULT_SYMBOL))
                            {
                                {
                                    int LA251_2376 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2376;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 93;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == EXISTS_SYMBOL))
                    {
                        {
                            int LA251_94 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_94 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2377 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2377;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 94;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == OPEN_PAR_SYMBOL))
                    {
                        {
                            int LA251_95 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == SELECT_SYMBOL))
                            {
                                {
                                    int LA251_2378 = LA(3);
                                    if ( (( (( ((SERVER_VERSION < 50709)) && ((SERVER_VERSION < 50709)) )) && ((LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL)) )))
                                    {
                                        alt251=1;
                                    }
                                    else if ( (( (( ((SERVER_VERSION >= 50709)) && ((SERVER_VERSION >= 50709)) )) && ((LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL)) )))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2378;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2379 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2379;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == NOT_SYMBOL))
                            {
                                {
                                    int LA251_2380 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2380;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BITWISE_NOT_OPERATOR || LA251_95 == MINUS_OPERATOR || LA251_95 == PLUS_OPERATOR))
                            {
                                {
                                    int LA251_2381 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2381;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == LOGICAL_NOT_OPERATOR || LA251_95 == NOT2_SYMBOL))
                            {
                                {
                                    int LA251_2382 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2382;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == INTERVAL_SYMBOL))
                            {
                                {
                                    int LA251_2383 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2383;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == NCHAR_TEXT))
                            {
                                {
                                    int LA251_2384 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2384;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == UNDERSCORE_CHARSET))
                            {
                                {
                                    int LA251_2385 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2385;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2386 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2386;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2387 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2387;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == DECIMAL_NUMBER || LA251_95 == FLOAT_NUMBER || LA251_95 == INT_NUMBER || LA251_95 == LONG_NUMBER || LA251_95 == ULONGLONG_NUMBER))
                            {
                                {
                                    int LA251_2388 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2388;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == DATE_SYMBOL))
                            {
                                {
                                    int LA251_2389 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2389;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == TIME_SYMBOL))
                            {
                                {
                                    int LA251_2390 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2390;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_2391 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2391;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == NULL2_SYMBOL || LA251_95 == NULL_SYMBOL))
                            {
                                {
                                    int LA251_2392 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2392;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == FALSE_SYMBOL || LA251_95 == TRUE_SYMBOL))
                            {
                                {
                                    int LA251_2393 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2393;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == HEX_NUMBER))
                            {
                                {
                                    int LA251_2394 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2394;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BIN_NUMBER))
                            {
                                {
                                    int LA251_2395 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2395;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CHAR_SYMBOL))
                            {
                                {
                                    int LA251_2396 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2396;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CURRENT_USER_SYMBOL))
                            {
                                {
                                    int LA251_2397 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2397;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == DAY_SYMBOL))
                            {
                                {
                                    int LA251_2398 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2398;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == HOUR_SYMBOL))
                            {
                                {
                                    int LA251_2399 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2399;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == INSERT_SYMBOL))
                            {
                                {
                                    int LA251_2400 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2400;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == LEFT_SYMBOL))
                            {
                                {
                                    int LA251_2401 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2401;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MINUTE_SYMBOL))
                            {
                                {
                                    int LA251_2402 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2402;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MONTH_SYMBOL))
                            {
                                {
                                    int LA251_2403 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2403;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == RIGHT_SYMBOL))
                            {
                                {
                                    int LA251_2404 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2404;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == SECOND_SYMBOL))
                            {
                                {
                                    int LA251_2405 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2405;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == TRIM_SYMBOL))
                            {
                                {
                                    int LA251_2406 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2406;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == USER_SYMBOL))
                            {
                                {
                                    int LA251_2407 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2407;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == VALUES_SYMBOL))
                            {
                                {
                                    int LA251_2408 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2408;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == YEAR_SYMBOL))
                            {
                                {
                                    int LA251_2409 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2409;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == ADDDATE_SYMBOL || LA251_95 == SUBDATE_SYMBOL))
                            {
                                {
                                    int LA251_2410 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2410;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CURDATE_SYMBOL))
                            {
                                {
                                    int LA251_2411 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2411;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CURTIME_SYMBOL))
                            {
                                {
                                    int LA251_2412 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2412;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == DATE_ADD_SYMBOL || LA251_95 == DATE_SUB_SYMBOL))
                            {
                                {
                                    int LA251_2413 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2413;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == EXTRACT_SYMBOL))
                            {
                                {
                                    int LA251_2414 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2414;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == GET_FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_2415 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2415;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == NOW_SYMBOL))
                            {
                                {
                                    int LA251_2416 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2416;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == POSITION_SYMBOL))
                            {
                                {
                                    int LA251_2417 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2417;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == SUBSTRING_SYMBOL))
                            {
                                {
                                    int LA251_2418 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2418;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == SYSDATE_SYMBOL))
                            {
                                {
                                    int LA251_2419 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2419;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_95 >= TIMESTAMP_ADD_SYMBOL) && (LA251_95 <= TIMESTAMP_DIFF_SYMBOL))))
                            {
                                {
                                    int LA251_2420 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2420;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == UTC_DATE_SYMBOL))
                            {
                                {
                                    int LA251_2421 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2421;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == UTC_TIME_SYMBOL))
                            {
                                {
                                    int LA251_2422 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2422;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_2423 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2423;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == ASCII_SYMBOL))
                            {
                                {
                                    int LA251_2424 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2424;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CHARSET_SYMBOL))
                            {
                                {
                                    int LA251_2425 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2425;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == COALESCE_SYMBOL))
                            {
                                {
                                    int LA251_2426 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2426;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == COLLATION_SYMBOL))
                            {
                                {
                                    int LA251_2427 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2427;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == DATABASE_SYMBOL))
                            {
                                {
                                    int LA251_2428 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2428;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == IF_SYMBOL))
                            {
                                {
                                    int LA251_2429 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2429;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_2430 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2430;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MICROSECOND_SYMBOL))
                            {
                                {
                                    int LA251_2431 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2431;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MOD_SYMBOL))
                            {
                                {
                                    int LA251_2432 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2432;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == OLD_PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_2433 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2433;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_2434 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2434;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == QUARTER_SYMBOL))
                            {
                                {
                                    int LA251_2435 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2435;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == REPEAT_SYMBOL))
                            {
                                {
                                    int LA251_2436 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2436;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == REPLACE_SYMBOL))
                            {
                                {
                                    int LA251_2437 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2437;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == REVERSE_SYMBOL))
                            {
                                {
                                    int LA251_2438 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2438;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == ROW_COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2439 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2439;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == TRUNCATE_SYMBOL))
                            {
                                {
                                    int LA251_2440 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2440;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == WEEK_SYMBOL))
                            {
                                {
                                    int LA251_2441 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2441;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_2442 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2442;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_2443 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2443;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2444 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2444;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2445 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2445;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_2446 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2446;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2447 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2447;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_2448 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2448;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2449 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2449;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_2450 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2450;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_2451 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2451;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_2452 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2452;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_2453 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2453;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_2454 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2454;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2455 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2455;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_2456 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2456;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_2457 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2457;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == STD_SYMBOL))
                            {
                                {
                                    int LA251_2458 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2458;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_2459 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2459;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2460 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2460;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2461 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2461;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_2462 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2462;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_2463 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2463;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == IDENTIFIER))
                            {
                                {
                                    int LA251_2464 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2464;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_2465 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2465;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_2466 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2466;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == ACCOUNT_SYMBOL || ((LA251_95 >= ALWAYS_SYMBOL) && (LA251_95 <= CACHE_SYMBOL)) || ((LA251_95 >= CHECKSUM_SYMBOL) && (LA251_95 <= COMMIT_SYMBOL)) || ((LA251_95 >= DEALLOCATE_SYMBOL) && (LA251_95 <= FOLLOWS_SYMBOL)) || ((LA251_95 >= GROUP_REPLICATION_SYMBOL) && (LA251_95 <= STOP_SYMBOL)) || ((LA251_95 >= UNICODE_SYMBOL) && (LA251_95 <= XA_SYMBOL)) || LA251_95 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_2467 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2467;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_2468 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2468;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == PARAM_MARKER))
                            {
                                {
                                    int LA251_2469 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2469;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2470 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2470;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_2471 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2471;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2472 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2472;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == EXISTS_SYMBOL))
                            {
                                {
                                    int LA251_2473 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2473;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == ACTION_SYMBOL || ((LA251_95 >= AFTER_SYMBOL) && (LA251_95 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA251_95 >= BINLOG_SYMBOL) && (LA251_95 <= CLASS_ORIGIN_SYMBOL)) || LA251_95 == CODE_SYMBOL || ((LA251_95 >= COLUMN_NAME_SYMBOL) && (LA251_95 <= DATETIME_SYMBOL)) || ((LA251_95 >= DEFAULT_AUTH_SYMBOL) && (LA251_95 <= GEOMETRY_SYMBOL)) || ((LA251_95 >= GRANTS_SYMBOL) && (LA251_95 <= HOSTS_SYMBOL)) || ((LA251_95 >= IDENTIFIED_SYMBOL) && (LA251_95 <= LEVEL_SYMBOL)) || ((LA251_95 >= LIST_SYMBOL) && (LA251_95 <= MESSAGE_TEXT_SYMBOL)) || LA251_95 == MIGRATE_SYMBOL || ((LA251_95 >= MIN_ROWS_SYMBOL) && (LA251_95 <= MODE_SYMBOL)) || ((LA251_95 >= MUTEX_SYMBOL) && (LA251_95 <= OFFSET_SYMBOL)) || ((LA251_95 >= ONE_SHOT_SYMBOL) && (LA251_95 <= PARTITIONS_SYMBOL)) || ((LA251_95 >= PHASE_SYMBOL) && (LA251_95 <= PLUGINS_SYMBOL)) || ((LA251_95 >= PRESERVE_SYMBOL) && (LA251_95 <= PROXY_SYMBOL)) || ((LA251_95 >= QUERY_SYMBOL) && (LA251_95 <= RETURNS_SYMBOL)) || ((LA251_95 >= ROLLUP_SYMBOL) && (LA251_95 <= ROWS_SYMBOL)) || LA251_95 == ROW_FORMAT_SYMBOL || ((LA251_95 >= RTREE_SYMBOL) && (LA251_95 <= SCHEMA_NAME_SYMBOL)) || ((LA251_95 >= SERIAL_SYMBOL) && (LA251_95 <= SHARE_SYMBOL)) || ((LA251_95 >= SLOW_SYMBOL) && (LA251_95 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA251_95 >= SUBJECT_SYMBOL) && (LA251_95 <= TRIGGERS_SYMBOL)) || ((LA251_95 >= TYPES_SYMBOL) && (LA251_95 <= USER_RESOURCES_SYMBOL)) || ((LA251_95 >= USE_FRM_SYMBOL) && (LA251_95 <= WAIT_SYMBOL)) || LA251_95 == WORK_SYMBOL || ((LA251_95 >= X509_SYMBOL) && (LA251_95 <= XML_SYMBOL))))
                            {
                                {
                                    int LA251_2474 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2474;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    int LA251_2475 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2475;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == MATCH_SYMBOL))
                            {
                                {
                                    int LA251_2476 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2476;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CASE_SYMBOL))
                            {
                                {
                                    int LA251_2477 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2477;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == BINARY_SYMBOL))
                            {
                                {
                                    int LA251_2478 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2478;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CAST_SYMBOL))
                            {
                                {
                                    int LA251_2479 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2479;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_95 == CONVERT_SYMBOL))
                            {
                                {
                                    int LA251_2480 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2480;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 95;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == ACTION_SYMBOL || ((LA251_0 >= AFTER_SYMBOL) && (LA251_0 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA251_0 >= BINLOG_SYMBOL) && (LA251_0 <= CLASS_ORIGIN_SYMBOL)) || LA251_0 == CODE_SYMBOL || ((LA251_0 >= COLUMN_NAME_SYMBOL) && (LA251_0 <= DATETIME_SYMBOL)) || ((LA251_0 >= DEFAULT_AUTH_SYMBOL) && (LA251_0 <= GEOMETRY_SYMBOL)) || ((LA251_0 >= GRANTS_SYMBOL) && (LA251_0 <= HOSTS_SYMBOL)) || ((LA251_0 >= IDENTIFIED_SYMBOL) && (LA251_0 <= LEVEL_SYMBOL)) || ((LA251_0 >= LIST_SYMBOL) && (LA251_0 <= MESSAGE_TEXT_SYMBOL)) || LA251_0 == MIGRATE_SYMBOL || ((LA251_0 >= MIN_ROWS_SYMBOL) && (LA251_0 <= MODE_SYMBOL)) || ((LA251_0 >= MUTEX_SYMBOL) && (LA251_0 <= OFFSET_SYMBOL)) || ((LA251_0 >= ONE_SHOT_SYMBOL) && (LA251_0 <= PARTITIONS_SYMBOL)) || ((LA251_0 >= PHASE_SYMBOL) && (LA251_0 <= PLUGINS_SYMBOL)) || ((LA251_0 >= PRESERVE_SYMBOL) && (LA251_0 <= PROXY_SYMBOL)) || ((LA251_0 >= QUERY_SYMBOL) && (LA251_0 <= RETURNS_SYMBOL)) || ((LA251_0 >= ROLLUP_SYMBOL) && (LA251_0 <= ROWS_SYMBOL)) || LA251_0 == ROW_FORMAT_SYMBOL || ((LA251_0 >= RTREE_SYMBOL) && (LA251_0 <= SCHEMA_NAME_SYMBOL)) || ((LA251_0 >= SERIAL_SYMBOL) && (LA251_0 <= SHARE_SYMBOL)) || ((LA251_0 >= SLOW_SYMBOL) && (LA251_0 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA251_0 >= SUBJECT_SYMBOL) && (LA251_0 <= TRIGGERS_SYMBOL)) || ((LA251_0 >= TYPES_SYMBOL) && (LA251_0 <= USER_RESOURCES_SYMBOL)) || ((LA251_0 >= USE_FRM_SYMBOL) && (LA251_0 <= WAIT_SYMBOL)) || LA251_0 == WORK_SYMBOL || ((LA251_0 >= X509_SYMBOL) && (LA251_0 <= XML_SYMBOL))))
                    {
                        {
                            int LA251_96 = LA(2);
                            if ( ((SERVER_VERSION < 50709)))
                            {
                                alt251=1;
                            }
                            else if ( ((SERVER_VERSION >= 50709)))
                            {
                                alt251=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 96;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == OPEN_CURLY_SYMBOL))
                    {
                        {
                            int LA251_97 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_97 == IDENTIFIER))
                            {
                                {
                                    int LA251_2513 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2513;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_97 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_2514 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2514;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_97 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2515 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2515;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_97 >= ACTION_SYMBOL) && (LA251_97 <= SHARE_SYMBOL)) || ((LA251_97 >= SLOW_SYMBOL) && (LA251_97 <= YEAR_SYMBOL))))
                            {
                                {
                                    int LA251_2516 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2516;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_97 >= ACCOUNT_SYMBOL) && (LA251_97 <= XA_SYMBOL)) || LA251_97 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_2517 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2517;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 97;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == MATCH_SYMBOL))
                    {
                        {
                            int LA251_98 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_98 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2518 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2518;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 98;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CASE_SYMBOL))
                    {
                        {
                            int LA251_99 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == NOT_SYMBOL))
                            {
                                {
                                    int LA251_2519 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2519;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == BITWISE_NOT_OPERATOR || LA251_99 == MINUS_OPERATOR || LA251_99 == PLUS_OPERATOR))
                            {
                                {
                                    int LA251_2520 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2520;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == LOGICAL_NOT_OPERATOR || LA251_99 == NOT2_SYMBOL))
                            {
                                {
                                    int LA251_2521 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2521;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == INTERVAL_SYMBOL))
                            {
                                {
                                    int LA251_2522 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2522;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == NCHAR_TEXT))
                            {
                                {
                                    int LA251_2523 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2523;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == UNDERSCORE_CHARSET))
                            {
                                {
                                    int LA251_2524 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2524;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2525 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2525;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2526 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2526;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == DECIMAL_NUMBER || LA251_99 == FLOAT_NUMBER || LA251_99 == INT_NUMBER || LA251_99 == LONG_NUMBER || LA251_99 == ULONGLONG_NUMBER))
                            {
                                {
                                    int LA251_2527 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2527;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == DATE_SYMBOL))
                            {
                                {
                                    int LA251_2528 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2528;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == TIME_SYMBOL))
                            {
                                {
                                    int LA251_2529 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2529;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_2530 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2530;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == NULL2_SYMBOL || LA251_99 == NULL_SYMBOL))
                            {
                                {
                                    int LA251_2531 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2531;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == FALSE_SYMBOL || LA251_99 == TRUE_SYMBOL))
                            {
                                {
                                    int LA251_2532 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2532;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == HEX_NUMBER))
                            {
                                {
                                    int LA251_2533 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2533;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == BIN_NUMBER))
                            {
                                {
                                    int LA251_2534 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2534;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CHAR_SYMBOL))
                            {
                                {
                                    int LA251_2535 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2535;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CURRENT_USER_SYMBOL))
                            {
                                {
                                    int LA251_2536 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2536;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == DAY_SYMBOL))
                            {
                                {
                                    int LA251_2537 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2537;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == HOUR_SYMBOL))
                            {
                                {
                                    int LA251_2538 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2538;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == INSERT_SYMBOL))
                            {
                                {
                                    int LA251_2539 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2539;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == LEFT_SYMBOL))
                            {
                                {
                                    int LA251_2540 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2540;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MINUTE_SYMBOL))
                            {
                                {
                                    int LA251_2541 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2541;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MONTH_SYMBOL))
                            {
                                {
                                    int LA251_2542 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2542;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == RIGHT_SYMBOL))
                            {
                                {
                                    int LA251_2543 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2543;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == SECOND_SYMBOL))
                            {
                                {
                                    int LA251_2544 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2544;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == TRIM_SYMBOL))
                            {
                                {
                                    int LA251_2545 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2545;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == USER_SYMBOL))
                            {
                                {
                                    int LA251_2546 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2546;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == VALUES_SYMBOL))
                            {
                                {
                                    int LA251_2547 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2547;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == YEAR_SYMBOL))
                            {
                                {
                                    int LA251_2548 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2548;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == ADDDATE_SYMBOL || LA251_99 == SUBDATE_SYMBOL))
                            {
                                {
                                    int LA251_2549 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2549;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CURDATE_SYMBOL))
                            {
                                {
                                    int LA251_2550 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2550;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CURTIME_SYMBOL))
                            {
                                {
                                    int LA251_2551 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2551;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == DATE_ADD_SYMBOL || LA251_99 == DATE_SUB_SYMBOL))
                            {
                                {
                                    int LA251_2552 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2552;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == EXTRACT_SYMBOL))
                            {
                                {
                                    int LA251_2553 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2553;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == GET_FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_2554 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2554;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == NOW_SYMBOL))
                            {
                                {
                                    int LA251_2555 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2555;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == POSITION_SYMBOL))
                            {
                                {
                                    int LA251_2556 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2556;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == SUBSTRING_SYMBOL))
                            {
                                {
                                    int LA251_2557 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2557;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == SYSDATE_SYMBOL))
                            {
                                {
                                    int LA251_2558 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2558;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_99 >= TIMESTAMP_ADD_SYMBOL) && (LA251_99 <= TIMESTAMP_DIFF_SYMBOL))))
                            {
                                {
                                    int LA251_2559 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2559;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == UTC_DATE_SYMBOL))
                            {
                                {
                                    int LA251_2560 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2560;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == UTC_TIME_SYMBOL))
                            {
                                {
                                    int LA251_2561 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2561;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_2562 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2562;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == ASCII_SYMBOL))
                            {
                                {
                                    int LA251_2563 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2563;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CHARSET_SYMBOL))
                            {
                                {
                                    int LA251_2564 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2564;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == COALESCE_SYMBOL))
                            {
                                {
                                    int LA251_2565 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2565;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == COLLATION_SYMBOL))
                            {
                                {
                                    int LA251_2566 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2566;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == DATABASE_SYMBOL))
                            {
                                {
                                    int LA251_2567 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2567;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == IF_SYMBOL))
                            {
                                {
                                    int LA251_2568 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2568;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_2569 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2569;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MICROSECOND_SYMBOL))
                            {
                                {
                                    int LA251_2570 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2570;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MOD_SYMBOL))
                            {
                                {
                                    int LA251_2571 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2571;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == OLD_PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_2572 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2572;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_2573 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2573;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == QUARTER_SYMBOL))
                            {
                                {
                                    int LA251_2574 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2574;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == REPEAT_SYMBOL))
                            {
                                {
                                    int LA251_2575 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2575;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == REPLACE_SYMBOL))
                            {
                                {
                                    int LA251_2576 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2576;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == REVERSE_SYMBOL))
                            {
                                {
                                    int LA251_2577 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2577;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == ROW_COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2578 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2578;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == TRUNCATE_SYMBOL))
                            {
                                {
                                    int LA251_2579 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2579;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == WEEK_SYMBOL))
                            {
                                {
                                    int LA251_2580 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2580;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_2581 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2581;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_2582 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2582;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2583 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2583;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2584 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2584;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_2585 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2585;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2586 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2586;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_2587 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2587;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2588 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2588;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_2589 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2589;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_2590 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2590;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_2591 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2591;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_2592 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2592;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_2593 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2593;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2594 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2594;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_2595 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2595;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_2596 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2596;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == STD_SYMBOL))
                            {
                                {
                                    int LA251_2597 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2597;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_2598 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2598;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2599 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2599;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2600 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2600;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_2601 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2601;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_2602 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2602;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == IDENTIFIER))
                            {
                                {
                                    int LA251_2603 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2603;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_2604 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2604;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_2605 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2605;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == ACCOUNT_SYMBOL || ((LA251_99 >= ALWAYS_SYMBOL) && (LA251_99 <= CACHE_SYMBOL)) || ((LA251_99 >= CHECKSUM_SYMBOL) && (LA251_99 <= COMMIT_SYMBOL)) || ((LA251_99 >= DEALLOCATE_SYMBOL) && (LA251_99 <= FOLLOWS_SYMBOL)) || ((LA251_99 >= GROUP_REPLICATION_SYMBOL) && (LA251_99 <= STOP_SYMBOL)) || ((LA251_99 >= UNICODE_SYMBOL) && (LA251_99 <= XA_SYMBOL)) || LA251_99 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_2606 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2606;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_2607 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2607;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == PARAM_MARKER))
                            {
                                {
                                    int LA251_2608 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2608;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2609 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2609;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_2610 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2610;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2611 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2611;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == EXISTS_SYMBOL))
                            {
                                {
                                    int LA251_2612 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2612;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2613 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2613;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == ACTION_SYMBOL || ((LA251_99 >= AFTER_SYMBOL) && (LA251_99 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA251_99 >= BINLOG_SYMBOL) && (LA251_99 <= CLASS_ORIGIN_SYMBOL)) || LA251_99 == CODE_SYMBOL || ((LA251_99 >= COLUMN_NAME_SYMBOL) && (LA251_99 <= DATETIME_SYMBOL)) || ((LA251_99 >= DEFAULT_AUTH_SYMBOL) && (LA251_99 <= GEOMETRY_SYMBOL)) || ((LA251_99 >= GRANTS_SYMBOL) && (LA251_99 <= HOSTS_SYMBOL)) || ((LA251_99 >= IDENTIFIED_SYMBOL) && (LA251_99 <= LEVEL_SYMBOL)) || ((LA251_99 >= LIST_SYMBOL) && (LA251_99 <= MESSAGE_TEXT_SYMBOL)) || LA251_99 == MIGRATE_SYMBOL || ((LA251_99 >= MIN_ROWS_SYMBOL) && (LA251_99 <= MODE_SYMBOL)) || ((LA251_99 >= MUTEX_SYMBOL) && (LA251_99 <= OFFSET_SYMBOL)) || ((LA251_99 >= ONE_SHOT_SYMBOL) && (LA251_99 <= PARTITIONS_SYMBOL)) || ((LA251_99 >= PHASE_SYMBOL) && (LA251_99 <= PLUGINS_SYMBOL)) || ((LA251_99 >= PRESERVE_SYMBOL) && (LA251_99 <= PROXY_SYMBOL)) || ((LA251_99 >= QUERY_SYMBOL) && (LA251_99 <= RETURNS_SYMBOL)) || ((LA251_99 >= ROLLUP_SYMBOL) && (LA251_99 <= ROWS_SYMBOL)) || LA251_99 == ROW_FORMAT_SYMBOL || ((LA251_99 >= RTREE_SYMBOL) && (LA251_99 <= SCHEMA_NAME_SYMBOL)) || ((LA251_99 >= SERIAL_SYMBOL) && (LA251_99 <= SHARE_SYMBOL)) || ((LA251_99 >= SLOW_SYMBOL) && (LA251_99 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA251_99 >= SUBJECT_SYMBOL) && (LA251_99 <= TRIGGERS_SYMBOL)) || ((LA251_99 >= TYPES_SYMBOL) && (LA251_99 <= USER_RESOURCES_SYMBOL)) || ((LA251_99 >= USE_FRM_SYMBOL) && (LA251_99 <= WAIT_SYMBOL)) || LA251_99 == WORK_SYMBOL || ((LA251_99 >= X509_SYMBOL) && (LA251_99 <= XML_SYMBOL))))
                            {
                                {
                                    int LA251_2614 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2614;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    int LA251_2615 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2615;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == MATCH_SYMBOL))
                            {
                                {
                                    int LA251_2616 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2616;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CASE_SYMBOL))
                            {
                                {
                                    int LA251_2617 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2617;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == BINARY_SYMBOL))
                            {
                                {
                                    int LA251_2618 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2618;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CAST_SYMBOL))
                            {
                                {
                                    int LA251_2619 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2619;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == CONVERT_SYMBOL))
                            {
                                {
                                    int LA251_2620 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2620;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_99 == WHEN_SYMBOL))
                            {
                                {
                                    int LA251_2621 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2621;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 99;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == BINARY_SYMBOL))
                    {
                        {
                            int LA251_100 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == NCHAR_TEXT))
                            {
                                {
                                    int LA251_2622 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2622;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == UNDERSCORE_CHARSET))
                            {
                                {
                                    int LA251_2623 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2623;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2624 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2624;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == DOUBLE_QUOTED_TEXT))
                            {
                                {
                                    int LA251_2625 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2625;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == DECIMAL_NUMBER || LA251_100 == FLOAT_NUMBER || LA251_100 == INT_NUMBER || LA251_100 == LONG_NUMBER || LA251_100 == ULONGLONG_NUMBER))
                            {
                                {
                                    int LA251_2626 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2626;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == DATE_SYMBOL))
                            {
                                {
                                    int LA251_2627 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2627;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == TIME_SYMBOL))
                            {
                                {
                                    int LA251_2628 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2628;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_2629 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2629;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == NULL2_SYMBOL || LA251_100 == NULL_SYMBOL))
                            {
                                {
                                    int LA251_2630 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2630;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == FALSE_SYMBOL || LA251_100 == TRUE_SYMBOL))
                            {
                                {
                                    int LA251_2631 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2631;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == HEX_NUMBER))
                            {
                                {
                                    int LA251_2632 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2632;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BIN_NUMBER))
                            {
                                {
                                    int LA251_2633 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2633;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CHAR_SYMBOL))
                            {
                                {
                                    int LA251_2634 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2634;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CURRENT_USER_SYMBOL))
                            {
                                {
                                    int LA251_2635 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2635;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == DAY_SYMBOL))
                            {
                                {
                                    int LA251_2636 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2636;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == HOUR_SYMBOL))
                            {
                                {
                                    int LA251_2637 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2637;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == INSERT_SYMBOL))
                            {
                                {
                                    int LA251_2638 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2638;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == LEFT_SYMBOL))
                            {
                                {
                                    int LA251_2639 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2639;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MINUTE_SYMBOL))
                            {
                                {
                                    int LA251_2640 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2640;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MONTH_SYMBOL))
                            {
                                {
                                    int LA251_2641 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2641;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == RIGHT_SYMBOL))
                            {
                                {
                                    int LA251_2642 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2642;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == SECOND_SYMBOL))
                            {
                                {
                                    int LA251_2643 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2643;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == TRIM_SYMBOL))
                            {
                                {
                                    int LA251_2644 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2644;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == USER_SYMBOL))
                            {
                                {
                                    int LA251_2645 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2645;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == VALUES_SYMBOL))
                            {
                                {
                                    int LA251_2646 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2646;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == YEAR_SYMBOL))
                            {
                                {
                                    int LA251_2647 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2647;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == ADDDATE_SYMBOL || LA251_100 == SUBDATE_SYMBOL))
                            {
                                {
                                    int LA251_2648 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2648;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CURDATE_SYMBOL))
                            {
                                {
                                    int LA251_2649 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2649;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CURTIME_SYMBOL))
                            {
                                {
                                    int LA251_2650 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2650;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == DATE_ADD_SYMBOL || LA251_100 == DATE_SUB_SYMBOL))
                            {
                                {
                                    int LA251_2651 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2651;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == EXTRACT_SYMBOL))
                            {
                                {
                                    int LA251_2652 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2652;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == GET_FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_2653 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2653;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == NOW_SYMBOL))
                            {
                                {
                                    int LA251_2654 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2654;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == POSITION_SYMBOL))
                            {
                                {
                                    int LA251_2655 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2655;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == SUBSTRING_SYMBOL))
                            {
                                {
                                    int LA251_2656 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2656;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == SYSDATE_SYMBOL))
                            {
                                {
                                    int LA251_2657 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2657;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (((LA251_100 >= TIMESTAMP_ADD_SYMBOL) && (LA251_100 <= TIMESTAMP_DIFF_SYMBOL))))
                            {
                                {
                                    int LA251_2658 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2658;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == UTC_DATE_SYMBOL))
                            {
                                {
                                    int LA251_2659 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2659;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == UTC_TIME_SYMBOL))
                            {
                                {
                                    int LA251_2660 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2660;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == UTC_TIMESTAMP_SYMBOL))
                            {
                                {
                                    int LA251_2661 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2661;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == ASCII_SYMBOL))
                            {
                                {
                                    int LA251_2662 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2662;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CHARSET_SYMBOL))
                            {
                                {
                                    int LA251_2663 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2663;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == COALESCE_SYMBOL))
                            {
                                {
                                    int LA251_2664 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2664;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == COLLATION_SYMBOL))
                            {
                                {
                                    int LA251_2665 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2665;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == DATABASE_SYMBOL))
                            {
                                {
                                    int LA251_2666 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2666;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == IF_SYMBOL))
                            {
                                {
                                    int LA251_2667 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2667;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == FORMAT_SYMBOL))
                            {
                                {
                                    int LA251_2668 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2668;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MICROSECOND_SYMBOL))
                            {
                                {
                                    int LA251_2669 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2669;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MOD_SYMBOL))
                            {
                                {
                                    int LA251_2670 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2670;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == OLD_PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_2671 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2671;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == PASSWORD_SYMBOL))
                            {
                                {
                                    int LA251_2672 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2672;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == QUARTER_SYMBOL))
                            {
                                {
                                    int LA251_2673 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2673;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == REPEAT_SYMBOL))
                            {
                                {
                                    int LA251_2674 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2674;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == REPLACE_SYMBOL))
                            {
                                {
                                    int LA251_2675 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2675;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == REVERSE_SYMBOL))
                            {
                                {
                                    int LA251_2676 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2676;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == ROW_COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2677 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2677;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == TRUNCATE_SYMBOL))
                            {
                                {
                                    int LA251_2678 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2678;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == WEEK_SYMBOL))
                            {
                                {
                                    int LA251_2679 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2679;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == WEIGHT_STRING_SYMBOL))
                            {
                                {
                                    int LA251_2680 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2680;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == GEOMETRYCOLLECTION_SYMBOL))
                            {
                                {
                                    int LA251_2681 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2681;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == LINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2682 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2682;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MULTILINESTRING_SYMBOL))
                            {
                                {
                                    int LA251_2683 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2683;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MULTIPOINT_SYMBOL))
                            {
                                {
                                    int LA251_2684 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2684;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MULTIPOLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2685 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2685;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == POINT_SYMBOL))
                            {
                                {
                                    int LA251_2686 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2686;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == POLYGON_SYMBOL))
                            {
                                {
                                    int LA251_2687 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2687;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CONTAINS_SYMBOL))
                            {
                                {
                                    int LA251_2688 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2688;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == AVG_SYMBOL))
                            {
                                {
                                    int LA251_2689 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2689;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BIT_AND_SYMBOL))
                            {
                                {
                                    int LA251_2690 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2690;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BIT_OR_SYMBOL))
                            {
                                {
                                    int LA251_2691 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2691;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BIT_XOR_SYMBOL))
                            {
                                {
                                    int LA251_2692 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2692;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == COUNT_SYMBOL))
                            {
                                {
                                    int LA251_2693 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2693;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MIN_SYMBOL))
                            {
                                {
                                    int LA251_2694 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2694;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MAX_SYMBOL))
                            {
                                {
                                    int LA251_2695 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2695;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == STD_SYMBOL))
                            {
                                {
                                    int LA251_2696 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2696;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == VARIANCE_SYMBOL))
                            {
                                {
                                    int LA251_2697 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2697;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == STDDEV_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2698 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2698;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == VAR_SAMP_SYMBOL))
                            {
                                {
                                    int LA251_2699 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2699;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == SUM_SYMBOL))
                            {
                                {
                                    int LA251_2700 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2700;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == GROUP_CONCAT_SYMBOL))
                            {
                                {
                                    int LA251_2701 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2701;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == IDENTIFIER))
                            {
                                {
                                    int LA251_2702 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2702;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BACK_TICK_QUOTED_ID))
                            {
                                {
                                    int LA251_2703 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2703;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == ROW_SYMBOL))
                            {
                                {
                                    int LA251_2704 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2704;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == ACCOUNT_SYMBOL || ((LA251_100 >= ALWAYS_SYMBOL) && (LA251_100 <= CACHE_SYMBOL)) || ((LA251_100 >= CHECKSUM_SYMBOL) && (LA251_100 <= COMMIT_SYMBOL)) || ((LA251_100 >= DEALLOCATE_SYMBOL) && (LA251_100 <= FOLLOWS_SYMBOL)) || ((LA251_100 >= GROUP_REPLICATION_SYMBOL) && (LA251_100 <= STOP_SYMBOL)) || ((LA251_100 >= UNICODE_SYMBOL) && (LA251_100 <= XA_SYMBOL)) || LA251_100 == SHUTDOWN_SYMBOL))
                            {
                                {
                                    int LA251_2705 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2705;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == DOT_SYMBOL))
                            {
                                {
                                    int LA251_2706 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2706;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == PARAM_MARKER))
                            {
                                {
                                    int LA251_2707 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2707;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2708 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2708;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == AT_TEXT_SUFFIX))
                            {
                                {
                                    int LA251_2709 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2709;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == AT_AT_SIGN_SYMBOL))
                            {
                                {
                                    int LA251_2710 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2710;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == EXISTS_SYMBOL))
                            {
                                {
                                    int LA251_2711 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2711;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2712 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2712;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == ACTION_SYMBOL || ((LA251_100 >= AFTER_SYMBOL) && (LA251_100 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA251_100 >= BINLOG_SYMBOL) && (LA251_100 <= CLASS_ORIGIN_SYMBOL)) || LA251_100 == CODE_SYMBOL || ((LA251_100 >= COLUMN_NAME_SYMBOL) && (LA251_100 <= DATETIME_SYMBOL)) || ((LA251_100 >= DEFAULT_AUTH_SYMBOL) && (LA251_100 <= GEOMETRY_SYMBOL)) || ((LA251_100 >= GRANTS_SYMBOL) && (LA251_100 <= HOSTS_SYMBOL)) || ((LA251_100 >= IDENTIFIED_SYMBOL) && (LA251_100 <= LEVEL_SYMBOL)) || ((LA251_100 >= LIST_SYMBOL) && (LA251_100 <= MESSAGE_TEXT_SYMBOL)) || LA251_100 == MIGRATE_SYMBOL || ((LA251_100 >= MIN_ROWS_SYMBOL) && (LA251_100 <= MODE_SYMBOL)) || ((LA251_100 >= MUTEX_SYMBOL) && (LA251_100 <= OFFSET_SYMBOL)) || ((LA251_100 >= ONE_SHOT_SYMBOL) && (LA251_100 <= PARTITIONS_SYMBOL)) || ((LA251_100 >= PHASE_SYMBOL) && (LA251_100 <= PLUGINS_SYMBOL)) || ((LA251_100 >= PRESERVE_SYMBOL) && (LA251_100 <= PROXY_SYMBOL)) || ((LA251_100 >= QUERY_SYMBOL) && (LA251_100 <= RETURNS_SYMBOL)) || ((LA251_100 >= ROLLUP_SYMBOL) && (LA251_100 <= ROWS_SYMBOL)) || LA251_100 == ROW_FORMAT_SYMBOL || ((LA251_100 >= RTREE_SYMBOL) && (LA251_100 <= SCHEMA_NAME_SYMBOL)) || ((LA251_100 >= SERIAL_SYMBOL) && (LA251_100 <= SHARE_SYMBOL)) || ((LA251_100 >= SLOW_SYMBOL) && (LA251_100 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA251_100 >= SUBJECT_SYMBOL) && (LA251_100 <= TRIGGERS_SYMBOL)) || ((LA251_100 >= TYPES_SYMBOL) && (LA251_100 <= USER_RESOURCES_SYMBOL)) || ((LA251_100 >= USE_FRM_SYMBOL) && (LA251_100 <= WAIT_SYMBOL)) || LA251_100 == WORK_SYMBOL || ((LA251_100 >= X509_SYMBOL) && (LA251_100 <= XML_SYMBOL))))
                            {
                                {
                                    int LA251_2713 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2713;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == OPEN_CURLY_SYMBOL))
                            {
                                {
                                    int LA251_2714 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2714;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == MATCH_SYMBOL))
                            {
                                {
                                    int LA251_2715 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2715;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CASE_SYMBOL))
                            {
                                {
                                    int LA251_2716 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2716;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == BINARY_SYMBOL))
                            {
                                {
                                    int LA251_2717 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2717;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CAST_SYMBOL))
                            {
                                {
                                    int LA251_2718 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2718;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_100 == CONVERT_SYMBOL))
                            {
                                {
                                    int LA251_2719 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2719;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 100;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CAST_SYMBOL))
                    {
                        {
                            int LA251_101 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_101 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2720 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2720;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 101;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_0 == CONVERT_SYMBOL))
                    {
                        {
                            int LA251_102 = LA(2);
                            if ( ((((SERVER_VERSION >= 50709))||((SERVER_VERSION < 50709)))) && (LA251_102 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA251_2721 = LA(3);
                                    if ( ((SERVER_VERSION < 50709)))
                                    {
                                        alt251=1;
                                    }
                                    else if ( ((SERVER_VERSION >= 50709)))
                                    {
                                        alt251=2;
                                    }
                                    else
                                    {
                                        if (BACKTRACKING>0)
                                        {
                                            FAILEDFLAG = ANTLR3_TRUE;
                                            return retval;
                                        }


                                        CONSTRUCTEX();
                                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                        EXCEPTION->message      = (void *)"";
                                        EXCEPTION->decisionNum  = 251;
                                        EXCEPTION->state        = 2721;


                                        goto ruledo_statementEx;

                                    }
                                }
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 251;
                                EXCEPTION->state        = 102;


                                goto ruledo_statementEx;

                            }
                        }
                    }
                    else if ( ((SERVER_VERSION >= 50709)) && (LA251_0 == MULT_OPERATOR))
                    {
                        alt251=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 251;
                        EXCEPTION->state        = 0;


                        goto ruledo_statementEx;

                    }
                }
                switch (alt251)
                {
            	case 1:
            	    // MySQL.g:1016:3: {...}? => expression_list
            	    {
            	        if ( !((SERVER_VERSION < 50709)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50709";
            	                EXCEPTION->ruleName	 = (void *)"do_statement";


            	        }

            	        FOLLOWPUSH(FOLLOW_expression_list_in_do_statement4176);
            	        expression_list775=expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledo_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list775.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1017:5: {...}? => select_item_list
            	    {
            	        if ( !((SERVER_VERSION >= 50709)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50709";
            	                EXCEPTION->ruleName	 = (void *)"do_statement";


            	        }

            	        FOLLOWPUSH(FOLLOW_select_item_list_in_do_statement4186);
            	        select_item_list776=select_item_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledo_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list776.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // 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:1021:1: handler_statement : HANDLER_SYMBOL ^ ( options {k=4; } : table_ref OPEN_SYMBOL ( ( AS_SYMBOL )? identifier )? | table_ref_no_db (| CLOSE_SYMBOL | READ_SYMBOL handler_read_or_scan ( 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_SYMBOL777;
    pANTLR3_COMMON_TOKEN    OPEN_SYMBOL779;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL780;
    pANTLR3_COMMON_TOKEN    CLOSE_SYMBOL783;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL784;
    MySQLParser_table_ref_return table_ref778;
    #undef	RETURN_TYPE_table_ref778
    #define	RETURN_TYPE_table_ref778 MySQLParser_table_ref_return

    MySQLParser_identifier_return identifier781;
    #undef	RETURN_TYPE_identifier781
    #define	RETURN_TYPE_identifier781 MySQLParser_identifier_return

    MySQLParser_table_ref_no_db_return table_ref_no_db782;
    #undef	RETURN_TYPE_table_ref_no_db782
    #define	RETURN_TYPE_table_ref_no_db782 MySQLParser_table_ref_no_db_return

    MySQLParser_handler_read_or_scan_return handler_read_or_scan785;
    #undef	RETURN_TYPE_handler_read_or_scan785
    #define	RETURN_TYPE_handler_read_or_scan785 MySQLParser_handler_read_or_scan_return

    MySQLParser_where_clause_return where_clause786;
    #undef	RETURN_TYPE_where_clause786
    #define	RETURN_TYPE_where_clause786 MySQLParser_where_clause_return

    MySQLParser_limit_clause_return limit_clause787;
    #undef	RETURN_TYPE_limit_clause787
    #define	RETURN_TYPE_limit_clause787 MySQLParser_limit_clause_return

    pANTLR3_BASE_TREE HANDLER_SYMBOL777_tree;
    pANTLR3_BASE_TREE OPEN_SYMBOL779_tree;
    pANTLR3_BASE_TREE AS_SYMBOL780_tree;
    pANTLR3_BASE_TREE CLOSE_SYMBOL783_tree;
    pANTLR3_BASE_TREE READ_SYMBOL784_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HANDLER_SYMBOL777       = NULL;
    OPEN_SYMBOL779       = NULL;
    AS_SYMBOL780       = NULL;
    CLOSE_SYMBOL783       = NULL;
    READ_SYMBOL784       = NULL;
    table_ref778.tree = NULL;

    identifier781.tree = NULL;

    table_ref_no_db782.tree = NULL;

    handler_read_or_scan785.tree = NULL;

    where_clause786.tree = NULL;

    limit_clause787.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HANDLER_SYMBOL777_tree   = NULL;
    OPEN_SYMBOL779_tree   = NULL;
    AS_SYMBOL780_tree   = NULL;
    CLOSE_SYMBOL783_tree   = NULL;
    READ_SYMBOL784_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1021:18: ( HANDLER_SYMBOL ^ ( options {k=4; } : table_ref OPEN_SYMBOL ( ( AS_SYMBOL )? identifier )? | table_ref_no_db (| CLOSE_SYMBOL | READ_SYMBOL handler_read_or_scan ( where_clause )? ( limit_clause )? ) ) )
        // MySQL.g:1022:2: HANDLER_SYMBOL ^ ( options {k=4; } : table_ref OPEN_SYMBOL ( ( AS_SYMBOL )? identifier )? | table_ref_no_db (| CLOSE_SYMBOL | READ_SYMBOL handler_read_or_scan ( where_clause )? ( limit_clause )? ) )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            HANDLER_SYMBOL777 = (pANTLR3_COMMON_TOKEN) MATCHT(HANDLER_SYMBOL, &FOLLOW_HANDLER_SYMBOL_in_handler_statement4198);
            if  (HASEXCEPTION())
            {
                goto rulehandler_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HANDLER_SYMBOL777_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HANDLER_SYMBOL777))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, HANDLER_SYMBOL777_tree, root_0));
            }

            // MySQL.g:1023:2: ( options {k=4; } : table_ref OPEN_SYMBOL ( ( AS_SYMBOL )? identifier )? | table_ref_no_db (| CLOSE_SYMBOL | READ_SYMBOL handler_read_or_scan ( where_clause )? ( limit_clause )? ) )
            {
                int alt257=2;
                {
                    int LA257_0 = LA(1);
                    if ( (LA257_0 == IDENTIFIER))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_SYMBOL:
                        case DOT_SYMBOL:
                        	{
                        		alt257=1;
                        	}
                            break;
                        case EOF:
                        case CLOSE_SYMBOL:
                        case READ_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        	{
                        		alt257=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 257;
                            EXCEPTION->state        = 1;


                            goto rulehandler_statementEx;

                        }

                    }
                    else if ( (LA257_0 == BACK_TICK_QUOTED_ID))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_SYMBOL:
                        case DOT_SYMBOL:
                        	{
                        		alt257=1;
                        	}
                            break;
                        case EOF:
                        case CLOSE_SYMBOL:
                        case READ_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        	{
                        		alt257=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 257;
                            EXCEPTION->state        = 2;


                            goto rulehandler_statementEx;

                        }

                    }
                    else if ( (LA257_0 == DOUBLE_QUOTED_TEXT))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_SYMBOL:
                        case DOT_SYMBOL:
                        	{
                        		alt257=1;
                        	}
                            break;
                        case EOF:
                        case CLOSE_SYMBOL:
                        case READ_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        	{
                        		alt257=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 257;
                            EXCEPTION->state        = 3;


                            goto rulehandler_statementEx;

                        }

                    }
                    else if ( (((LA257_0 >= ACTION_SYMBOL) && (LA257_0 <= SHARE_SYMBOL)) || ((LA257_0 >= SLOW_SYMBOL) && (LA257_0 <= YEAR_SYMBOL))))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_SYMBOL:
                        case DOT_SYMBOL:
                        	{
                        		alt257=1;
                        	}
                            break;
                        case EOF:
                        case CLOSE_SYMBOL:
                        case READ_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        	{
                        		alt257=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 257;
                            EXCEPTION->state        = 4;


                            goto rulehandler_statementEx;

                        }

                    }
                    else if ( (((LA257_0 >= ACCOUNT_SYMBOL) && (LA257_0 <= XA_SYMBOL)) || LA257_0 == SHUTDOWN_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case OPEN_SYMBOL:
                        case DOT_SYMBOL:
                        	{
                        		alt257=1;
                        	}
                            break;
                        case EOF:
                        case CLOSE_SYMBOL:
                        case READ_SYMBOL:
                        case SEMICOLON_SYMBOL:
                        	{
                        		alt257=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 257;
                            EXCEPTION->state        = 5;


                            goto rulehandler_statementEx;

                        }

                    }
                    else if ( (LA257_0 == DOT_SYMBOL))
                    {
                        alt257=1;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 257;
                        EXCEPTION->state        = 0;


                        goto rulehandler_statementEx;

                    }
                }
                switch (alt257)
                {
            	case 1:
            	    // MySQL.g:1024:3: table_ref OPEN_SYMBOL ( ( AS_SYMBOL )? identifier )?
            	    {
            	        FOLLOWPUSH(FOLLOW_table_ref_in_handler_statement4219);
            	        table_ref778=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref778.tree);

            	        OPEN_SYMBOL779 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_handler_statement4221);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_SYMBOL779_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL779));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL779_tree);
            	        }

            	        // MySQL.g:1024:25: ( ( AS_SYMBOL )? identifier )?
            	        {
            	            int alt253=2;
            	            {
            	                int LA253_0 = LA(1);
            	                if ( (((LA253_0 >= ACCOUNT_SYMBOL) && (LA253_0 <= YEAR_SYMBOL)) || LA253_0 == AS_SYMBOL || LA253_0 == BACK_TICK_QUOTED_ID || LA253_0 == DOUBLE_QUOTED_TEXT || LA253_0 == IDENTIFIER))
            	                {
            	                    alt253=1;
            	                }
            	            }
            	            switch (alt253)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1024:26: ( AS_SYMBOL )? identifier
            	        	    {
            	        	        // MySQL.g:1024:26: ( AS_SYMBOL )?
            	        	        {
            	        	            int alt252=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AS_SYMBOL:
            	        	                	{
            	        	                		alt252=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt252)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1024:26: AS_SYMBOL
            	        	        	    {
            	        	        	        AS_SYMBOL780 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_handler_statement4224);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulehandler_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AS_SYMBOL780_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL780));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL780_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_identifier_in_handler_statement4227);
            	        	        identifier781=identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier781.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1025:5: table_ref_no_db (| CLOSE_SYMBOL | READ_SYMBOL handler_read_or_scan ( where_clause )? ( limit_clause )? )
            	    {
            	        FOLLOWPUSH(FOLLOW_table_ref_no_db_in_handler_statement4235);
            	        table_ref_no_db782=table_ref_no_db(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_no_db782.tree);

            	        // MySQL.g:1026:4: (| CLOSE_SYMBOL | READ_SYMBOL handler_read_or_scan ( where_clause )? ( limit_clause )? )
            	        {
            	            int alt256=3;
            	            switch ( LA(1) )
            	            {
            	            case EOF:
            	            case SEMICOLON_SYMBOL:
            	            	{
            	            		alt256=1;
            	            	}
            	                break;
            	            case CLOSE_SYMBOL:
            	            	{
            	            		alt256=2;
            	            	}
            	                break;
            	            case READ_SYMBOL:
            	            	{
            	            		alt256=3;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 256;
            	                EXCEPTION->state        = 0;


            	                goto rulehandler_statementEx;

            	            }

            	            switch (alt256)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1027:5: 
            	        	    {
            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1027:7: CLOSE_SYMBOL
            	        	    {
            	        	        CLOSE_SYMBOL783 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_SYMBOL, &FOLLOW_CLOSE_SYMBOL_in_handler_statement4248);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_SYMBOL783_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_SYMBOL783));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_SYMBOL783_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:1028:7: READ_SYMBOL handler_read_or_scan ( where_clause )? ( limit_clause )?
            	        	    {
            	        	        READ_SYMBOL784 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_handler_statement4256);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        READ_SYMBOL784_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL784));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL784_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_handler_read_or_scan_in_handler_statement4258);
            	        	        handler_read_or_scan785=handler_read_or_scan(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulehandler_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_read_or_scan785.tree);

            	        	        // MySQL.g:1028:40: ( where_clause )?
            	        	        {
            	        	            int alt254=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case WHERE_SYMBOL:
            	        	                	{
            	        	                		alt254=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt254)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1028:40: where_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_where_clause_in_handler_statement4260);
            	        	        	        where_clause786=where_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulehandler_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause786.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:1028:54: ( limit_clause )?
            	        	        {
            	        	            int alt255=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case LIMIT_SYMBOL:
            	        	                	{
            	        	                		alt255=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt255)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1028:54: limit_clause
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_handler_statement4263);
            	        	        	        limit_clause787=limit_clause(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulehandler_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause787.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    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 handler_read_or_scan
 * MySQL.g:1033:1: handler_read_or_scan : ( ( FIRST_SYMBOL | NEXT_SYMBOL ) | identifier ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL | ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) OPEN_PAR_SYMBOL values CLOSE_PAR_SYMBOL ) );
 */
static MySQLParser_handler_read_or_scan_return
handler_read_or_scan(pMySQLParser ctx)
{
    MySQLParser_handler_read_or_scan_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set788;
    pANTLR3_COMMON_TOKEN    FIRST_SYMBOL790;
    pANTLR3_COMMON_TOKEN    NEXT_SYMBOL791;
    pANTLR3_COMMON_TOKEN    PREV_SYMBOL792;
    pANTLR3_COMMON_TOKEN    LAST_SYMBOL793;
    pANTLR3_COMMON_TOKEN    set794;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL795;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL797;
    MySQLParser_identifier_return identifier789;
    #undef	RETURN_TYPE_identifier789
    #define	RETURN_TYPE_identifier789 MySQLParser_identifier_return

    MySQLParser_values_return values796;
    #undef	RETURN_TYPE_values796
    #define	RETURN_TYPE_values796 MySQLParser_values_return

    pANTLR3_BASE_TREE set788_tree;
    pANTLR3_BASE_TREE FIRST_SYMBOL790_tree;
    pANTLR3_BASE_TREE NEXT_SYMBOL791_tree;
    pANTLR3_BASE_TREE PREV_SYMBOL792_tree;
    pANTLR3_BASE_TREE LAST_SYMBOL793_tree;
    pANTLR3_BASE_TREE set794_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL795_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL797_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set788       = NULL;
    FIRST_SYMBOL790       = NULL;
    NEXT_SYMBOL791       = NULL;
    PREV_SYMBOL792       = NULL;
    LAST_SYMBOL793       = NULL;
    set794       = NULL;
    OPEN_PAR_SYMBOL795       = NULL;
    CLOSE_PAR_SYMBOL797       = NULL;
    identifier789.tree = NULL;

    values796.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set788_tree   = NULL;
    FIRST_SYMBOL790_tree   = NULL;
    NEXT_SYMBOL791_tree   = NULL;
    PREV_SYMBOL792_tree   = NULL;
    LAST_SYMBOL793_tree   = NULL;
    set794_tree   = NULL;
    OPEN_PAR_SYMBOL795_tree   = NULL;
    CLOSE_PAR_SYMBOL797_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1033:21: ( ( FIRST_SYMBOL | NEXT_SYMBOL ) | identifier ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL | ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) OPEN_PAR_SYMBOL values CLOSE_PAR_SYMBOL ) )

            ANTLR3_UINT32 alt259;

            alt259=2;

            {
                int LA259_0 = LA(1);
                if ( (LA259_0 == FIRST_SYMBOL || LA259_0 == NEXT_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case LIMIT_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case WHERE_SYMBOL:
                    	{
                    		alt259=1;
                    	}
                        break;
                    case FIRST_SYMBOL:
                    case LAST_SYMBOL:
                    case NEXT_SYMBOL:
                    case PREV_SYMBOL:
                    case EQUAL_OPERATOR:
                    case GREATER_OR_EQUAL_OPERATOR:
                    case GREATER_THAN_OPERATOR:
                    case LESS_OR_EQUAL_OPERATOR:
                    case LESS_THAN_OPERATOR:
                    	{
                    		alt259=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 259;
                        EXCEPTION->state        = 1;


                        goto rulehandler_read_or_scanEx;

                    }

                }
                else if ( (((LA259_0 >= ACCOUNT_SYMBOL) && (LA259_0 <= FILTER_SYMBOL)) || ((LA259_0 >= FIXED_SYMBOL) && (LA259_0 <= NEVER_SYMBOL)) || ((LA259_0 >= NEW_SYMBOL) && (LA259_0 <= YEAR_SYMBOL)) || LA259_0 == BACK_TICK_QUOTED_ID || LA259_0 == DOUBLE_QUOTED_TEXT || LA259_0 == IDENTIFIER))
                {
                    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 rulehandler_read_or_scanEx;

                }
            }
            switch (alt259)
            {
        	case 1:
        	    // MySQL.g:1034:2: ( FIRST_SYMBOL | NEXT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set788=(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, set788))
        	            );
        	            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_read_or_scanEx;
        	        }


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1035:4: identifier ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL | ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) OPEN_PAR_SYMBOL values CLOSE_PAR_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_handler_read_or_scan4293);
        	        identifier789=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_read_or_scanEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier789.tree);

        	        // MySQL.g:1036:3: ( FIRST_SYMBOL | NEXT_SYMBOL | PREV_SYMBOL | LAST_SYMBOL | ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) OPEN_PAR_SYMBOL values CLOSE_PAR_SYMBOL )
        	        {
        	            int alt258=5;
        	            switch ( LA(1) )
        	            {
        	            case FIRST_SYMBOL:
        	            	{
        	            		alt258=1;
        	            	}
        	                break;
        	            case NEXT_SYMBOL:
        	            	{
        	            		alt258=2;
        	            	}
        	                break;
        	            case PREV_SYMBOL:
        	            	{
        	            		alt258=3;
        	            	}
        	                break;
        	            case LAST_SYMBOL:
        	            	{
        	            		alt258=4;
        	            	}
        	                break;
        	            case EQUAL_OPERATOR:
        	            case GREATER_OR_EQUAL_OPERATOR:
        	            case GREATER_THAN_OPERATOR:
        	            case LESS_OR_EQUAL_OPERATOR:
        	            case LESS_THAN_OPERATOR:
        	            	{
        	            		alt258=5;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 258;
        	                EXCEPTION->state        = 0;


        	                goto rulehandler_read_or_scanEx;

        	            }

        	            switch (alt258)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1037:4: FIRST_SYMBOL
        	        	    {
        	        	        FIRST_SYMBOL790 = (pANTLR3_COMMON_TOKEN) MATCHT(FIRST_SYMBOL, &FOLLOW_FIRST_SYMBOL_in_handler_read_or_scan4302);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        FIRST_SYMBOL790_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FIRST_SYMBOL790));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FIRST_SYMBOL790_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1038:6: NEXT_SYMBOL
        	        	    {
        	        	        NEXT_SYMBOL791 = (pANTLR3_COMMON_TOKEN) MATCHT(NEXT_SYMBOL, &FOLLOW_NEXT_SYMBOL_in_handler_read_or_scan4309);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NEXT_SYMBOL791_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NEXT_SYMBOL791));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NEXT_SYMBOL791_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1039:6: PREV_SYMBOL
        	        	    {
        	        	        PREV_SYMBOL792 = (pANTLR3_COMMON_TOKEN) MATCHT(PREV_SYMBOL, &FOLLOW_PREV_SYMBOL_in_handler_read_or_scan4316);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PREV_SYMBOL792_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREV_SYMBOL792));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PREV_SYMBOL792_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:1040:6: LAST_SYMBOL
        	        	    {
        	        	        LAST_SYMBOL793 = (pANTLR3_COMMON_TOKEN) MATCHT(LAST_SYMBOL, &FOLLOW_LAST_SYMBOL_in_handler_read_or_scan4323);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        LAST_SYMBOL793_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LAST_SYMBOL793));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LAST_SYMBOL793_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 5:
        	        	    // MySQL.g:1041:6: ( EQUAL_OPERATOR | LESS_THAN_OPERATOR | GREATER_THAN_OPERATOR | LESS_OR_EQUAL_OPERATOR | GREATER_OR_EQUAL_OPERATOR ) OPEN_PAR_SYMBOL values CLOSE_PAR_SYMBOL
        	        	    {
        	        	        set794=(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, set794))
        	        	            );
        	        	            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_read_or_scanEx;
        	        	        }


        	        	        OPEN_PAR_SYMBOL795 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_handler_read_or_scan4354);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL795_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL795));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL795_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_values_in_handler_read_or_scan4356);
        	        	        values796=values(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, values796.tree);

        	        	        CLOSE_PAR_SYMBOL797 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_handler_read_or_scan4358);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulehandler_read_or_scanEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL797_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL797));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL797_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulehandler_read_or_scanEx; /* Prevent compiler warnings */
    rulehandler_read_or_scanEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_read_or_scan */

/**
 * $ANTLR start insert_statement
 * MySQL.g:1048:1: insert_statement : INSERT_SYMBOL ^ ( insert_lock_option )? ( IGNORE_SYMBOL )? ( INTO_SYMBOL )? table_ref ( use_partition )? 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_SYMBOL798;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL800;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL801;
    MySQLParser_insert_lock_option_return insert_lock_option799;
    #undef	RETURN_TYPE_insert_lock_option799
    #define	RETURN_TYPE_insert_lock_option799 MySQLParser_insert_lock_option_return

    MySQLParser_table_ref_return table_ref802;
    #undef	RETURN_TYPE_table_ref802
    #define	RETURN_TYPE_table_ref802 MySQLParser_table_ref_return

    MySQLParser_use_partition_return use_partition803;
    #undef	RETURN_TYPE_use_partition803
    #define	RETURN_TYPE_use_partition803 MySQLParser_use_partition_return

    MySQLParser_insert_field_spec_return insert_field_spec804;
    #undef	RETURN_TYPE_insert_field_spec804
    #define	RETURN_TYPE_insert_field_spec804 MySQLParser_insert_field_spec_return

    MySQLParser_duplicate_key_update_return duplicate_key_update805;
    #undef	RETURN_TYPE_duplicate_key_update805
    #define	RETURN_TYPE_duplicate_key_update805 MySQLParser_duplicate_key_update_return

    pANTLR3_BASE_TREE INSERT_SYMBOL798_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL800_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL801_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INSERT_SYMBOL798       = NULL;
    IGNORE_SYMBOL800       = NULL;
    INTO_SYMBOL801       = NULL;
    insert_lock_option799.tree = NULL;

    table_ref802.tree = NULL;

    use_partition803.tree = NULL;

    insert_field_spec804.tree = NULL;

    duplicate_key_update805.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INSERT_SYMBOL798_tree   = NULL;
    IGNORE_SYMBOL800_tree   = NULL;
    INTO_SYMBOL801_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1048:17: ( INSERT_SYMBOL ^ ( insert_lock_option )? ( IGNORE_SYMBOL )? ( INTO_SYMBOL )? table_ref ( use_partition )? insert_field_spec ( duplicate_key_update )? )
        // MySQL.g:1049:2: INSERT_SYMBOL ^ ( insert_lock_option )? ( IGNORE_SYMBOL )? ( INTO_SYMBOL )? table_ref ( use_partition )? insert_field_spec ( duplicate_key_update )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            INSERT_SYMBOL798 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_insert_statement4373);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INSERT_SYMBOL798_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL798))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, INSERT_SYMBOL798_tree, root_0));
            }

            // MySQL.g:1049:17: ( insert_lock_option )?
            {
                int alt260=2;
                switch ( LA(1) )
                {
                    case DELAYED_SYMBOL:
                    case HIGH_PRIORITY_SYMBOL:
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt260=1;
                    	}
                        break;
                }

                switch (alt260)
                {
            	case 1:
            	    // MySQL.g:1049:17: insert_lock_option
            	    {
            	        FOLLOWPUSH(FOLLOW_insert_lock_option_in_insert_statement4376);
            	        insert_lock_option799=insert_lock_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_lock_option799.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1049:37: ( IGNORE_SYMBOL )?
            {
                int alt261=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt261=1;
                    	}
                        break;
                }

                switch (alt261)
                {
            	case 1:
            	    // MySQL.g:1049:37: IGNORE_SYMBOL
            	    {
            	        IGNORE_SYMBOL800 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_insert_statement4379);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL800_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL800));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL800_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1049:52: ( INTO_SYMBOL )?
            {
                int alt262=2;
                switch ( LA(1) )
                {
                    case INTO_SYMBOL:
                    	{
                    		alt262=1;
                    	}
                        break;
                }

                switch (alt262)
                {
            	case 1:
            	    // MySQL.g:1049:52: INTO_SYMBOL
            	    {
            	        INTO_SYMBOL801 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_insert_statement4382);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTO_SYMBOL801_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL801));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL801_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_insert_statement4385);
            table_ref802=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref802.tree);

            // MySQL.g:1049:75: ( use_partition )?
            {
                int alt263=2;
                {
                    int LA263_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50602)) && (LA263_0 == PARTITION_SYMBOL))
                    {
                        alt263=1;
                    }
                }
                switch (alt263)
                {
            	case 1:
            	    // MySQL.g:1049:75: use_partition
            	    {
            	        FOLLOWPUSH(FOLLOW_use_partition_in_insert_statement4387);
            	        use_partition803=use_partition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_partition803.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_insert_field_spec_in_insert_statement4392);
            insert_field_spec804=insert_field_spec(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_field_spec804.tree);

            // MySQL.g:1050:21: ( duplicate_key_update )?
            {
                int alt264=2;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		alt264=1;
                    	}
                        break;
                }

                switch (alt264)
                {
            	case 1:
            	    // MySQL.g:1050:21: duplicate_key_update
            	    {
            	        FOLLOWPUSH(FOLLOW_duplicate_key_update_in_insert_statement4394);
            	        duplicate_key_update805=duplicate_key_update(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, duplicate_key_update805.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_lock_option
 * MySQL.g:1053:1: insert_lock_option : ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL | HIGH_PRIORITY_SYMBOL );
 */
static MySQLParser_insert_lock_option_return
insert_lock_option(pMySQLParser ctx)
{
    MySQLParser_insert_lock_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set806;

    pANTLR3_BASE_TREE set806_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set806       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set806_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1053:19: ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL | HIGH_PRIORITY_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set806=(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, set806))
                );
                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_lock_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_lock_optionEx; /* Prevent compiler warnings */
    ruleinsert_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 insert_lock_option */

/**
 * $ANTLR start insert_field_spec
 * MySQL.g:1059:1: insert_field_spec : ( ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )? ( insert_values | insert_query_expression ) | 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_SYMBOL807;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL809;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL812;
    MySQLParser_fields_return fields808;
    #undef	RETURN_TYPE_fields808
    #define	RETURN_TYPE_fields808 MySQLParser_fields_return

    MySQLParser_insert_values_return insert_values810;
    #undef	RETURN_TYPE_insert_values810
    #define	RETURN_TYPE_insert_values810 MySQLParser_insert_values_return

    MySQLParser_insert_query_expression_return insert_query_expression811;
    #undef	RETURN_TYPE_insert_query_expression811
    #define	RETURN_TYPE_insert_query_expression811 MySQLParser_insert_query_expression_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default813;
    #undef	RETURN_TYPE_column_assignment_list_with_default813
    #define	RETURN_TYPE_column_assignment_list_with_default813 MySQLParser_column_assignment_list_with_default_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL807_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL809_tree;
    pANTLR3_BASE_TREE SET_SYMBOL812_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL807       = NULL;
    CLOSE_PAR_SYMBOL809       = NULL;
    SET_SYMBOL812       = NULL;
    fields808.tree = NULL;

    insert_values810.tree = NULL;

    insert_query_expression811.tree = NULL;

    column_assignment_list_with_default813.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL807_tree   = NULL;
    CLOSE_PAR_SYMBOL809_tree   = NULL;
    SET_SYMBOL812_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1059:18: ( ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )? ( insert_values | insert_query_expression ) | SET_SYMBOL column_assignment_list_with_default )

            ANTLR3_UINT32 alt268;

            alt268=2;

            switch ( LA(1) )
            {
            case VALUE_SYMBOL:
            case OPEN_PAR_SYMBOL:
            case SELECT_SYMBOL:
            case VALUES_SYMBOL:
            	{
            		alt268=1;
            	}
                break;
            case SET_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 ruleinsert_field_specEx;

            }

            switch (alt268)
            {
        	case 1:
        	    // MySQL.g:1060:2: ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )? ( insert_values | insert_query_expression )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1060:2: ( OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL )?
        	        {
        	            int alt266=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		{
        	                		    int LA266_1 = LA(2);
        	                		    if ( (((LA266_1 >= ACCOUNT_SYMBOL) && (LA266_1 <= YEAR_SYMBOL)) || LA266_1 == BACK_TICK_QUOTED_ID || LA266_1 == CLOSE_PAR_SYMBOL || LA266_1 == DOUBLE_QUOTED_TEXT || LA266_1 == IDENTIFIER))
        	                		    {
        	                		        alt266=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt266)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1060:3: OPEN_PAR_SYMBOL ( fields )? CLOSE_PAR_SYMBOL
        	        	    {
        	        	        OPEN_PAR_SYMBOL807 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_field_spec4426);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPEN_PAR_SYMBOL807_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL807));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL807_tree);
        	        	        }

        	        	        // MySQL.g:1060:19: ( fields )?
        	        	        {
        	        	            int alt265=2;
        	        	            {
        	        	                int LA265_0 = LA(1);
        	        	                if ( (((LA265_0 >= ACCOUNT_SYMBOL) && (LA265_0 <= YEAR_SYMBOL)) || LA265_0 == BACK_TICK_QUOTED_ID || LA265_0 == DOUBLE_QUOTED_TEXT || LA265_0 == IDENTIFIER))
        	        	                {
        	        	                    alt265=1;
        	        	                }
        	        	            }
        	        	            switch (alt265)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1060:19: fields
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_fields_in_insert_field_spec4428);
        	        	        	        fields808=fields(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleinsert_field_specEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields808.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CLOSE_PAR_SYMBOL809 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_field_spec4431);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CLOSE_PAR_SYMBOL809_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL809));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL809_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1061:3: ( insert_values | insert_query_expression )
        	        {
        	            int alt267=2;
        	            switch ( LA(1) )
        	            {
        	            case VALUE_SYMBOL:
        	            case VALUES_SYMBOL:
        	            	{
        	            		alt267=1;
        	            	}
        	                break;
        	            case OPEN_PAR_SYMBOL:
        	            case SELECT_SYMBOL:
        	            	{
        	            		alt267=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 267;
        	                EXCEPTION->state        = 0;


        	                goto ruleinsert_field_specEx;

        	            }

        	            switch (alt267)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1062:4: insert_values
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_insert_values_in_insert_field_spec4443);
        	        	        insert_values810=insert_values(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_values810.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1063:6: insert_query_expression
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_insert_query_expression_in_insert_field_spec4450);
        	        	        insert_query_expression811=insert_query_expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_field_specEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_query_expression811.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1065:4: SET_SYMBOL column_assignment_list_with_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL812 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_insert_field_spec4459);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_field_specEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL812_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL812));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL812_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_insert_field_spec4461);
        	        column_assignment_list_with_default813=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_default813.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:1068: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_SYMBOL815;
    MySQLParser_insert_identifier_return insert_identifier814;
    #undef	RETURN_TYPE_insert_identifier814
    #define	RETURN_TYPE_insert_identifier814 MySQLParser_insert_identifier_return

    MySQLParser_insert_identifier_return insert_identifier816;
    #undef	RETURN_TYPE_insert_identifier816
    #define	RETURN_TYPE_insert_identifier816 MySQLParser_insert_identifier_return

    pANTLR3_BASE_TREE COMMA_SYMBOL815_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL815       = NULL;
    insert_identifier814.tree = NULL;

    insert_identifier816.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL815_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1068:7: ( insert_identifier ( COMMA_SYMBOL insert_identifier )* )
        // MySQL.g:1069:2: insert_identifier ( COMMA_SYMBOL insert_identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_insert_identifier_in_fields4470);
            insert_identifier814=insert_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefieldsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_identifier814.tree);

            // MySQL.g:1069:20: ( COMMA_SYMBOL insert_identifier )*

            for (;;)
            {
                int alt269=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt269=1;
                	}
                    break;

                }

                switch (alt269)
                {
            	case 1:
            	    // MySQL.g:1069:21: COMMA_SYMBOL insert_identifier
            	    {
            	        COMMA_SYMBOL815 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_fields4473);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefieldsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL815_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL815));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL815_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_insert_identifier_in_fields4475);
            	        insert_identifier816=insert_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefieldsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_identifier816.tree);

            	    }
            	    break;

            	default:
            	    goto loop269;	/* break out of the loop */
            	    break;
                }
            }
            loop269: ; /* 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:1072:1: insert_identifier : column_ref_with_wildcard -> ^( COLUMN_NAME_TOKEN column_ref_with_wildcard ) ;
 */
static MySQLParser_insert_identifier_return
insert_identifier(pMySQLParser ctx)
{
    MySQLParser_insert_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_column_ref_with_wildcard_return column_ref_with_wildcard817;
    #undef	RETURN_TYPE_column_ref_with_wildcard817
    #define	RETURN_TYPE_column_ref_with_wildcard817 MySQLParser_column_ref_with_wildcard_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_column_ref_with_wildcard;
    /* Initialize rule variables
     */

    root_0 = NULL;

    column_ref_with_wildcard817.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_column_ref_with_wildcard   = NULL;
    #define CREATE_stream_column_ref_with_wildcard  if (stream_column_ref_with_wildcard == NULL) {stream_column_ref_with_wildcard = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule column_ref_with_wildcard"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1072:18: ( column_ref_with_wildcard -> ^( COLUMN_NAME_TOKEN column_ref_with_wildcard ) )
        // MySQL.g:1073:2: column_ref_with_wildcard
        {
            FOLLOWPUSH(FOLLOW_column_ref_with_wildcard_in_insert_identifier4486);
            column_ref_with_wildcard817=column_ref_with_wildcard(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_identifierEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_column_ref_with_wildcard; stream_column_ref_with_wildcard->add(stream_column_ref_with_wildcard, column_ref_with_wildcard817.tree, NULL); }

            /* AST REWRITE
             * elements          : column_ref_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;
            	// 1073:27: -> ^( COLUMN_NAME_TOKEN column_ref_with_wildcard )
            	{
            	    // MySQL.g:1073:30: ^( COLUMN_NAME_TOKEN column_ref_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, COLUMN_NAME_TOKEN, (pANTLR3_UINT8)"COLUMN_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_column_ref_with_wildcard == NULL ? NULL : stream_column_ref_with_wildcard->nextTree(stream_column_ref_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);


            }
        }

    }

    // 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_column_ref_with_wildcard != NULL) stream_column_ref_with_wildcard->free(stream_column_ref_with_wildcard);
    }


            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_values
 * MySQL.g:1076:1: insert_values : ( VALUES_SYMBOL | VALUE_SYMBOL ) insert_value_list ;
 */
static MySQLParser_insert_values_return
insert_values(pMySQLParser ctx)
{
    MySQLParser_insert_values_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set818;
    MySQLParser_insert_value_list_return insert_value_list819;
    #undef	RETURN_TYPE_insert_value_list819
    #define	RETURN_TYPE_insert_value_list819 MySQLParser_insert_value_list_return

    pANTLR3_BASE_TREE set818_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set818       = NULL;
    insert_value_list819.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set818_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1076:14: ( ( VALUES_SYMBOL | VALUE_SYMBOL ) insert_value_list )
        // MySQL.g:1077:2: ( VALUES_SYMBOL | VALUE_SYMBOL ) insert_value_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set818=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == VALUE_SYMBOL || LA(1) == VALUES_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set818))
                );
                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_values4511);
            insert_value_list819=insert_value_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinsert_valuesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_value_list819.tree);

        }

    }

    // 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_query_expression
 * MySQL.g:1080:1: insert_query_expression : ( create_select ( union_clause )? | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? );
 */
static MySQLParser_insert_query_expression_return
insert_query_expression(pMySQLParser ctx)
{
    MySQLParser_insert_query_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL822;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL824;
    MySQLParser_create_select_return create_select820;
    #undef	RETURN_TYPE_create_select820
    #define	RETURN_TYPE_create_select820 MySQLParser_create_select_return

    MySQLParser_union_clause_return union_clause821;
    #undef	RETURN_TYPE_union_clause821
    #define	RETURN_TYPE_union_clause821 MySQLParser_union_clause_return

    MySQLParser_create_select_return create_select823;
    #undef	RETURN_TYPE_create_select823
    #define	RETURN_TYPE_create_select823 MySQLParser_create_select_return

    MySQLParser_union_or_order_by_or_limit_return union_or_order_by_or_limit825;
    #undef	RETURN_TYPE_union_or_order_by_or_limit825
    #define	RETURN_TYPE_union_or_order_by_or_limit825 MySQLParser_union_or_order_by_or_limit_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL822_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL824_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL822       = NULL;
    CLOSE_PAR_SYMBOL824       = NULL;
    create_select820.tree = NULL;

    union_clause821.tree = NULL;

    create_select823.tree = NULL;

    union_or_order_by_or_limit825.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL822_tree   = NULL;
    CLOSE_PAR_SYMBOL824_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1080:24: ( create_select ( union_clause )? | OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? )

            ANTLR3_UINT32 alt272;

            alt272=2;

            switch ( LA(1) )
            {
            case SELECT_SYMBOL:
            	{
            		alt272=1;
            	}
                break;
            case OPEN_PAR_SYMBOL:
            	{
            		alt272=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 272;
                EXCEPTION->state        = 0;


                goto ruleinsert_query_expressionEx;

            }

            switch (alt272)
            {
        	case 1:
        	    // MySQL.g:1081:2: create_select ( union_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_create_select_in_insert_query_expression4520);
        	        create_select820=create_select(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_query_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select820.tree);

        	        // MySQL.g:1081:16: ( union_clause )?
        	        {
        	            int alt270=2;
        	            switch ( LA(1) )
        	            {
        	                case UNION_SYMBOL:
        	                	{
        	                		alt270=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt270)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1081:16: union_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_insert_query_expression4522);
        	        	        union_clause821=union_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_query_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause821.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1082:4: OPEN_PAR_SYMBOL create_select CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL822 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_query_expression4528);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_query_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL822_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL822));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL822_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_create_select_in_insert_query_expression4530);
        	        create_select823=create_select(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_query_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_select823.tree);

        	        CLOSE_PAR_SYMBOL824 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_query_expression4532);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinsert_query_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL824_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL824));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL824_tree);
        	        }

        	        // MySQL.g:1082:51: ( union_or_order_by_or_limit )?
        	        {
        	            int alt271=2;
        	            switch ( LA(1) )
        	            {
        	                case LIMIT_SYMBOL:
        	                case ORDER_SYMBOL:
        	                case UNION_SYMBOL:
        	                	{
        	                		alt271=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt271)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1082:51: union_or_order_by_or_limit
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_or_order_by_or_limit_in_insert_query_expression4534);
        	        	        union_or_order_by_or_limit825=union_or_order_by_or_limit(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinsert_query_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_or_order_by_or_limit825.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleinsert_query_expressionEx; /* Prevent compiler warnings */
    ruleinsert_query_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 insert_query_expression */

/**
 * $ANTLR start insert_value_list
 * MySQL.g:1085:1: insert_value_list : OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL ( COMMA_SYMBOL OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL )* ;
 */
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    OPEN_PAR_SYMBOL826;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL828;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL829;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL830;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL832;
    MySQLParser_values_return values827;
    #undef	RETURN_TYPE_values827
    #define	RETURN_TYPE_values827 MySQLParser_values_return

    MySQLParser_values_return values831;
    #undef	RETURN_TYPE_values831
    #define	RETURN_TYPE_values831 MySQLParser_values_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL826_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL828_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL829_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL830_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL832_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL826       = NULL;
    CLOSE_PAR_SYMBOL828       = NULL;
    COMMA_SYMBOL829       = NULL;
    OPEN_PAR_SYMBOL830       = NULL;
    CLOSE_PAR_SYMBOL832       = NULL;
    values827.tree = NULL;

    values831.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL826_tree   = NULL;
    CLOSE_PAR_SYMBOL828_tree   = NULL;
    COMMA_SYMBOL829_tree   = NULL;
    OPEN_PAR_SYMBOL830_tree   = NULL;
    CLOSE_PAR_SYMBOL832_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1085:18: ( OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL ( COMMA_SYMBOL OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL )* )
        // MySQL.g:1086:2: OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL ( COMMA_SYMBOL OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL826 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4544);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL826_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL826));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL826_tree);
            }

            // MySQL.g:1086:18: ( values )?
            {
                int alt273=2;
                {
                    int LA273_0 = LA(1);
                    if ( (((LA273_0 >= ACCOUNT_SYMBOL) && (LA273_0 <= YEAR_SYMBOL)) || ((LA273_0 >= AT_AT_SIGN_SYMBOL) && (LA273_0 <= AT_TEXT_SUFFIX)) || LA273_0 == BACK_TICK_QUOTED_ID || ((LA273_0 >= BINARY_SYMBOL) && (LA273_0 <= BIN_NUMBER)) || LA273_0 == BITWISE_NOT_OPERATOR || ((LA273_0 >= BIT_AND_SYMBOL) && (LA273_0 <= BIT_XOR_SYMBOL)) || ((LA273_0 >= CASE_SYMBOL) && (LA273_0 <= CAST_SYMBOL)) || LA273_0 == CHAR_SYMBOL || ((LA273_0 >= CONVERT_SYMBOL) && (LA273_0 <= COUNT_SYMBOL)) || LA273_0 == CURDATE_SYMBOL || LA273_0 == CURRENT_USER_SYMBOL || LA273_0 == CURTIME_SYMBOL || LA273_0 == DATABASE_SYMBOL || LA273_0 == DATE_ADD_SYMBOL || LA273_0 == DATE_SUB_SYMBOL || LA273_0 == DECIMAL_NUMBER || LA273_0 == DEFAULT_SYMBOL || LA273_0 == DOT_SYMBOL || LA273_0 == DOUBLE_QUOTED_TEXT || LA273_0 == EXISTS_SYMBOL || ((LA273_0 >= EXTRACT_SYMBOL) && (LA273_0 <= FALSE_SYMBOL)) || LA273_0 == FLOAT_NUMBER || LA273_0 == GROUP_CONCAT_SYMBOL || LA273_0 == HEX_NUMBER || ((LA273_0 >= IDENTIFIER) && (LA273_0 <= IF_SYMBOL)) || LA273_0 == INSERT_SYMBOL || LA273_0 == INTERVAL_SYMBOL || LA273_0 == INT_NUMBER || LA273_0 == LEFT_SYMBOL || LA273_0 == LOGICAL_NOT_OPERATOR || LA273_0 == LONG_NUMBER || LA273_0 == MATCH_SYMBOL || LA273_0 == MAX_SYMBOL || LA273_0 == MINUS_OPERATOR || LA273_0 == MIN_SYMBOL || LA273_0 == MOD_SYMBOL || LA273_0 == NCHAR_TEXT || LA273_0 == NOT2_SYMBOL || ((LA273_0 >= NOT_SYMBOL) && (LA273_0 <= NOW_SYMBOL)) || LA273_0 == NULL2_SYMBOL || LA273_0 == NULL_SYMBOL || ((LA273_0 >= OPEN_CURLY_SYMBOL) && (LA273_0 <= OPEN_PAR_SYMBOL)) || LA273_0 == PARAM_MARKER || ((LA273_0 >= PLUS_OPERATOR) && (LA273_0 <= POSITION_SYMBOL)) || ((LA273_0 >= REPEAT_SYMBOL) && (LA273_0 <= REPLACE_SYMBOL)) || LA273_0 == RIGHT_SYMBOL || LA273_0 == SINGLE_QUOTED_TEXT || LA273_0 == STDDEV_SAMP_SYMBOL || LA273_0 == STD_SYMBOL || LA273_0 == SUBSTRING_SYMBOL || ((LA273_0 >= SUM_SYMBOL) && (LA273_0 <= SYSDATE_SYMBOL)) || ((LA273_0 >= TRIM_SYMBOL) && (LA273_0 <= TRUE_SYMBOL)) || LA273_0 == ULONGLONG_NUMBER || LA273_0 == UNDERSCORE_CHARSET || ((LA273_0 >= UTC_DATE_SYMBOL) && (LA273_0 <= UTC_TIME_SYMBOL)) || LA273_0 == VALUES_SYMBOL || LA273_0 == VARIANCE_SYMBOL || LA273_0 == VAR_SAMP_SYMBOL))
                    {
                        alt273=1;
                    }
                }
                switch (alt273)
                {
            	case 1:
            	    // MySQL.g:1086:18: values
            	    {
            	        FOLLOWPUSH(FOLLOW_values_in_insert_value_list4546);
            	        values827=values(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, values827.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL828 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4549);
            if  (HASEXCEPTION())
            {
                goto ruleinsert_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL828_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL828));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL828_tree);
            }

            // MySQL.g:1086:43: ( COMMA_SYMBOL OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL )*

            for (;;)
            {
                int alt275=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt275=1;
                	}
                    break;

                }

                switch (alt275)
                {
            	case 1:
            	    // MySQL.g:1086:44: COMMA_SYMBOL OPEN_PAR_SYMBOL ( values )? CLOSE_PAR_SYMBOL
            	    {
            	        COMMA_SYMBOL829 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_insert_value_list4552);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL829_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL829));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL829_tree);
            	        }

            	        OPEN_PAR_SYMBOL830 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_insert_value_list4554);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL830_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL830));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL830_tree);
            	        }

            	        // MySQL.g:1086:73: ( values )?
            	        {
            	            int alt274=2;
            	            {
            	                int LA274_0 = LA(1);
            	                if ( (((LA274_0 >= ACCOUNT_SYMBOL) && (LA274_0 <= YEAR_SYMBOL)) || ((LA274_0 >= AT_AT_SIGN_SYMBOL) && (LA274_0 <= AT_TEXT_SUFFIX)) || LA274_0 == BACK_TICK_QUOTED_ID || ((LA274_0 >= BINARY_SYMBOL) && (LA274_0 <= BIN_NUMBER)) || LA274_0 == BITWISE_NOT_OPERATOR || ((LA274_0 >= BIT_AND_SYMBOL) && (LA274_0 <= BIT_XOR_SYMBOL)) || ((LA274_0 >= CASE_SYMBOL) && (LA274_0 <= CAST_SYMBOL)) || LA274_0 == CHAR_SYMBOL || ((LA274_0 >= CONVERT_SYMBOL) && (LA274_0 <= COUNT_SYMBOL)) || LA274_0 == CURDATE_SYMBOL || LA274_0 == CURRENT_USER_SYMBOL || LA274_0 == CURTIME_SYMBOL || LA274_0 == DATABASE_SYMBOL || LA274_0 == DATE_ADD_SYMBOL || LA274_0 == DATE_SUB_SYMBOL || LA274_0 == DECIMAL_NUMBER || LA274_0 == DEFAULT_SYMBOL || LA274_0 == DOT_SYMBOL || LA274_0 == DOUBLE_QUOTED_TEXT || LA274_0 == EXISTS_SYMBOL || ((LA274_0 >= EXTRACT_SYMBOL) && (LA274_0 <= FALSE_SYMBOL)) || LA274_0 == FLOAT_NUMBER || LA274_0 == GROUP_CONCAT_SYMBOL || LA274_0 == HEX_NUMBER || ((LA274_0 >= IDENTIFIER) && (LA274_0 <= IF_SYMBOL)) || LA274_0 == INSERT_SYMBOL || LA274_0 == INTERVAL_SYMBOL || LA274_0 == INT_NUMBER || LA274_0 == LEFT_SYMBOL || LA274_0 == LOGICAL_NOT_OPERATOR || LA274_0 == LONG_NUMBER || LA274_0 == MATCH_SYMBOL || LA274_0 == MAX_SYMBOL || LA274_0 == MINUS_OPERATOR || LA274_0 == MIN_SYMBOL || LA274_0 == MOD_SYMBOL || LA274_0 == NCHAR_TEXT || LA274_0 == NOT2_SYMBOL || ((LA274_0 >= NOT_SYMBOL) && (LA274_0 <= NOW_SYMBOL)) || LA274_0 == NULL2_SYMBOL || LA274_0 == NULL_SYMBOL || ((LA274_0 >= OPEN_CURLY_SYMBOL) && (LA274_0 <= OPEN_PAR_SYMBOL)) || LA274_0 == PARAM_MARKER || ((LA274_0 >= PLUS_OPERATOR) && (LA274_0 <= POSITION_SYMBOL)) || ((LA274_0 >= REPEAT_SYMBOL) && (LA274_0 <= REPLACE_SYMBOL)) || LA274_0 == RIGHT_SYMBOL || LA274_0 == SINGLE_QUOTED_TEXT || LA274_0 == STDDEV_SAMP_SYMBOL || LA274_0 == STD_SYMBOL || LA274_0 == SUBSTRING_SYMBOL || ((LA274_0 >= SUM_SYMBOL) && (LA274_0 <= SYSDATE_SYMBOL)) || ((LA274_0 >= TRIM_SYMBOL) && (LA274_0 <= TRUE_SYMBOL)) || LA274_0 == ULONGLONG_NUMBER || LA274_0 == UNDERSCORE_CHARSET || ((LA274_0 >= UTC_DATE_SYMBOL) && (LA274_0 <= UTC_TIME_SYMBOL)) || LA274_0 == VALUES_SYMBOL || LA274_0 == VARIANCE_SYMBOL || LA274_0 == VAR_SAMP_SYMBOL))
            	                {
            	                    alt274=1;
            	                }
            	            }
            	            switch (alt274)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1086:73: values
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_values_in_insert_value_list4556);
            	        	        values831=values(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinsert_value_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, values831.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        CLOSE_PAR_SYMBOL832 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_insert_value_list4559);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinsert_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL832_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL832));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL832_tree);
            	        }

            	    }
            	    break;

            	default:
            	    goto loop275;	/* break out of the loop */
            	    break;
                }
            }
            loop275: ; /* 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 values
 * MySQL.g:1089:1: values : ( expression | DEFAULT_SYMBOL ) ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )* ;
 */
static MySQLParser_values_return
values(pMySQLParser ctx)
{
    MySQLParser_values_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL834;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL835;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL837;
    MySQLParser_expression_return expression833;
    #undef	RETURN_TYPE_expression833
    #define	RETURN_TYPE_expression833 MySQLParser_expression_return

    MySQLParser_expression_return expression836;
    #undef	RETURN_TYPE_expression836
    #define	RETURN_TYPE_expression836 MySQLParser_expression_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL834_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL835_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL837_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL834       = NULL;
    COMMA_SYMBOL835       = NULL;
    DEFAULT_SYMBOL837       = NULL;
    expression833.tree = NULL;

    expression836.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL834_tree   = NULL;
    COMMA_SYMBOL835_tree   = NULL;
    DEFAULT_SYMBOL837_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1089:7: ( ( expression | DEFAULT_SYMBOL ) ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )* )
        // MySQL.g:1090:2: ( expression | DEFAULT_SYMBOL ) ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1090:2: ( expression | DEFAULT_SYMBOL )
            {
                int alt276=2;
                {
                    int LA276_0 = LA(1);
                    if ( (((LA276_0 >= ACCOUNT_SYMBOL) && (LA276_0 <= YEAR_SYMBOL)) || ((LA276_0 >= AT_AT_SIGN_SYMBOL) && (LA276_0 <= AT_TEXT_SUFFIX)) || LA276_0 == BACK_TICK_QUOTED_ID || ((LA276_0 >= BINARY_SYMBOL) && (LA276_0 <= BIN_NUMBER)) || LA276_0 == BITWISE_NOT_OPERATOR || ((LA276_0 >= BIT_AND_SYMBOL) && (LA276_0 <= BIT_XOR_SYMBOL)) || ((LA276_0 >= CASE_SYMBOL) && (LA276_0 <= CAST_SYMBOL)) || LA276_0 == CHAR_SYMBOL || ((LA276_0 >= CONVERT_SYMBOL) && (LA276_0 <= COUNT_SYMBOL)) || LA276_0 == CURDATE_SYMBOL || LA276_0 == CURRENT_USER_SYMBOL || LA276_0 == CURTIME_SYMBOL || LA276_0 == DATABASE_SYMBOL || LA276_0 == DATE_ADD_SYMBOL || LA276_0 == DATE_SUB_SYMBOL || LA276_0 == DECIMAL_NUMBER || LA276_0 == DOT_SYMBOL || LA276_0 == DOUBLE_QUOTED_TEXT || LA276_0 == EXISTS_SYMBOL || ((LA276_0 >= EXTRACT_SYMBOL) && (LA276_0 <= FALSE_SYMBOL)) || LA276_0 == FLOAT_NUMBER || LA276_0 == GROUP_CONCAT_SYMBOL || LA276_0 == HEX_NUMBER || ((LA276_0 >= IDENTIFIER) && (LA276_0 <= IF_SYMBOL)) || LA276_0 == INSERT_SYMBOL || LA276_0 == INTERVAL_SYMBOL || LA276_0 == INT_NUMBER || LA276_0 == LEFT_SYMBOL || LA276_0 == LOGICAL_NOT_OPERATOR || LA276_0 == LONG_NUMBER || LA276_0 == MATCH_SYMBOL || LA276_0 == MAX_SYMBOL || LA276_0 == MINUS_OPERATOR || LA276_0 == MIN_SYMBOL || LA276_0 == MOD_SYMBOL || LA276_0 == NCHAR_TEXT || LA276_0 == NOT2_SYMBOL || ((LA276_0 >= NOT_SYMBOL) && (LA276_0 <= NOW_SYMBOL)) || LA276_0 == NULL2_SYMBOL || LA276_0 == NULL_SYMBOL || ((LA276_0 >= OPEN_CURLY_SYMBOL) && (LA276_0 <= OPEN_PAR_SYMBOL)) || LA276_0 == PARAM_MARKER || ((LA276_0 >= PLUS_OPERATOR) && (LA276_0 <= POSITION_SYMBOL)) || ((LA276_0 >= REPEAT_SYMBOL) && (LA276_0 <= REPLACE_SYMBOL)) || LA276_0 == RIGHT_SYMBOL || LA276_0 == SINGLE_QUOTED_TEXT || LA276_0 == STDDEV_SAMP_SYMBOL || LA276_0 == STD_SYMBOL || LA276_0 == SUBSTRING_SYMBOL || ((LA276_0 >= SUM_SYMBOL) && (LA276_0 <= SYSDATE_SYMBOL)) || ((LA276_0 >= TRIM_SYMBOL) && (LA276_0 <= TRUE_SYMBOL)) || LA276_0 == ULONGLONG_NUMBER || LA276_0 == UNDERSCORE_CHARSET || ((LA276_0 >= UTC_DATE_SYMBOL) && (LA276_0 <= UTC_TIME_SYMBOL)) || LA276_0 == VALUES_SYMBOL || LA276_0 == VARIANCE_SYMBOL || LA276_0 == VAR_SAMP_SYMBOL))
                    {
                        alt276=1;
                    }
                    else if ( (LA276_0 == DEFAULT_SYMBOL))
                    {
                        alt276=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 276;
                        EXCEPTION->state        = 0;


                        goto rulevaluesEx;

                    }
                }
                switch (alt276)
                {
            	case 1:
            	    // MySQL.g:1090:3: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_values4571);
            	        expression833=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevaluesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression833.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1090:16: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL834 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_values4575);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevaluesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL834_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL834));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL834_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1090:32: ( COMMA_SYMBOL ( expression | DEFAULT_SYMBOL ) )*

            for (;;)
            {
                int alt278=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt278=1;
                	}
                    break;

                }

                switch (alt278)
                {
            	case 1:
            	    // MySQL.g:1090:33: COMMA_SYMBOL ( expression | DEFAULT_SYMBOL )
            	    {
            	        COMMA_SYMBOL835 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_values4579);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevaluesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL835_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL835));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL835_tree);
            	        }

            	        // MySQL.g:1090:46: ( expression | DEFAULT_SYMBOL )
            	        {
            	            int alt277=2;
            	            {
            	                int LA277_0 = LA(1);
            	                if ( (((LA277_0 >= ACCOUNT_SYMBOL) && (LA277_0 <= YEAR_SYMBOL)) || ((LA277_0 >= AT_AT_SIGN_SYMBOL) && (LA277_0 <= AT_TEXT_SUFFIX)) || LA277_0 == BACK_TICK_QUOTED_ID || ((LA277_0 >= BINARY_SYMBOL) && (LA277_0 <= BIN_NUMBER)) || LA277_0 == BITWISE_NOT_OPERATOR || ((LA277_0 >= BIT_AND_SYMBOL) && (LA277_0 <= BIT_XOR_SYMBOL)) || ((LA277_0 >= CASE_SYMBOL) && (LA277_0 <= CAST_SYMBOL)) || LA277_0 == CHAR_SYMBOL || ((LA277_0 >= CONVERT_SYMBOL) && (LA277_0 <= COUNT_SYMBOL)) || LA277_0 == CURDATE_SYMBOL || LA277_0 == CURRENT_USER_SYMBOL || LA277_0 == CURTIME_SYMBOL || LA277_0 == DATABASE_SYMBOL || LA277_0 == DATE_ADD_SYMBOL || LA277_0 == DATE_SUB_SYMBOL || LA277_0 == DECIMAL_NUMBER || LA277_0 == DOT_SYMBOL || LA277_0 == DOUBLE_QUOTED_TEXT || LA277_0 == EXISTS_SYMBOL || ((LA277_0 >= EXTRACT_SYMBOL) && (LA277_0 <= FALSE_SYMBOL)) || LA277_0 == FLOAT_NUMBER || LA277_0 == GROUP_CONCAT_SYMBOL || LA277_0 == HEX_NUMBER || ((LA277_0 >= IDENTIFIER) && (LA277_0 <= IF_SYMBOL)) || LA277_0 == INSERT_SYMBOL || LA277_0 == INTERVAL_SYMBOL || LA277_0 == INT_NUMBER || LA277_0 == LEFT_SYMBOL || LA277_0 == LOGICAL_NOT_OPERATOR || LA277_0 == LONG_NUMBER || LA277_0 == MATCH_SYMBOL || LA277_0 == MAX_SYMBOL || LA277_0 == MINUS_OPERATOR || LA277_0 == MIN_SYMBOL || LA277_0 == MOD_SYMBOL || LA277_0 == NCHAR_TEXT || LA277_0 == NOT2_SYMBOL || ((LA277_0 >= NOT_SYMBOL) && (LA277_0 <= NOW_SYMBOL)) || LA277_0 == NULL2_SYMBOL || LA277_0 == NULL_SYMBOL || ((LA277_0 >= OPEN_CURLY_SYMBOL) && (LA277_0 <= OPEN_PAR_SYMBOL)) || LA277_0 == PARAM_MARKER || ((LA277_0 >= PLUS_OPERATOR) && (LA277_0 <= POSITION_SYMBOL)) || ((LA277_0 >= REPEAT_SYMBOL) && (LA277_0 <= REPLACE_SYMBOL)) || LA277_0 == RIGHT_SYMBOL || LA277_0 == SINGLE_QUOTED_TEXT || LA277_0 == STDDEV_SAMP_SYMBOL || LA277_0 == STD_SYMBOL || LA277_0 == SUBSTRING_SYMBOL || ((LA277_0 >= SUM_SYMBOL) && (LA277_0 <= SYSDATE_SYMBOL)) || ((LA277_0 >= TRIM_SYMBOL) && (LA277_0 <= TRUE_SYMBOL)) || LA277_0 == ULONGLONG_NUMBER || LA277_0 == UNDERSCORE_CHARSET || ((LA277_0 >= UTC_DATE_SYMBOL) && (LA277_0 <= UTC_TIME_SYMBOL)) || LA277_0 == VALUES_SYMBOL || LA277_0 == VARIANCE_SYMBOL || LA277_0 == VAR_SAMP_SYMBOL))
            	                {
            	                    alt277=1;
            	                }
            	                else if ( (LA277_0 == DEFAULT_SYMBOL))
            	                {
            	                    alt277=2;
            	                }
            	                else
            	                {
            	                    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 rulevaluesEx;

            	                }
            	            }
            	            switch (alt277)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1090:47: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_values4582);
            	        	        expression836=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulevaluesEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression836.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1090:60: DEFAULT_SYMBOL
            	        	    {
            	        	        DEFAULT_SYMBOL837 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_values4586);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulevaluesEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DEFAULT_SYMBOL837_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL837));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL837_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop278;	/* break out of the loop */
            	    break;
                }
            }
            loop278: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulevaluesEx; /* Prevent compiler warnings */
    rulevaluesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end values */

/**
 * $ANTLR start duplicate_key_update
 * MySQL.g:1093:1: duplicate_key_update : ON_SYMBOL DUPLICATE_SYMBOL KEY_SYMBOL UPDATE_SYMBOL column_assignment_list_with_default ;
 */
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_SYMBOL838;
    pANTLR3_COMMON_TOKEN    DUPLICATE_SYMBOL839;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL840;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL841;
    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default842;
    #undef	RETURN_TYPE_column_assignment_list_with_default842
    #define	RETURN_TYPE_column_assignment_list_with_default842 MySQLParser_column_assignment_list_with_default_return

    pANTLR3_BASE_TREE ON_SYMBOL838_tree;
    pANTLR3_BASE_TREE DUPLICATE_SYMBOL839_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL840_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL841_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL838       = NULL;
    DUPLICATE_SYMBOL839       = NULL;
    KEY_SYMBOL840       = NULL;
    UPDATE_SYMBOL841       = NULL;
    column_assignment_list_with_default842.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL838_tree   = NULL;
    DUPLICATE_SYMBOL839_tree   = NULL;
    KEY_SYMBOL840_tree   = NULL;
    UPDATE_SYMBOL841_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1093:21: ( ON_SYMBOL DUPLICATE_SYMBOL KEY_SYMBOL UPDATE_SYMBOL column_assignment_list_with_default )
        // MySQL.g:1094:2: ON_SYMBOL DUPLICATE_SYMBOL KEY_SYMBOL UPDATE_SYMBOL column_assignment_list_with_default
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ON_SYMBOL838 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_duplicate_key_update4598);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL838_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL838));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL838_tree);
            }

            DUPLICATE_SYMBOL839 = (pANTLR3_COMMON_TOKEN) MATCHT(DUPLICATE_SYMBOL, &FOLLOW_DUPLICATE_SYMBOL_in_duplicate_key_update4600);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DUPLICATE_SYMBOL839_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DUPLICATE_SYMBOL839));
            ADAPTOR->addChild(ADAPTOR, root_0, DUPLICATE_SYMBOL839_tree);
            }

            KEY_SYMBOL840 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_duplicate_key_update4602);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            KEY_SYMBOL840_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL840));
            ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL840_tree);
            }

            UPDATE_SYMBOL841 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_duplicate_key_update4604);
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UPDATE_SYMBOL841_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL841));
            ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL841_tree);
            }

            FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_duplicate_key_update4606);
            column_assignment_list_with_default842=column_assignment_list_with_default(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleduplicate_key_updateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_assignment_list_with_default842.tree);

        }

    }

    // 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_statement
 * MySQL.g:1099:1: load_statement : LOAD_SYMBOL ^ data_or_xml ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_ref ( use_partition )? ( charset_clause )? ( xml_rows_identified_by )? ( fields_clause )? ( lines_clause )? load_data_file_tail ;
 */
static MySQLParser_load_statement_return
load_statement(pMySQLParser ctx)
{
    MySQLParser_load_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LOAD_SYMBOL843;
    pANTLR3_COMMON_TOKEN    set845;
    pANTLR3_COMMON_TOKEN    LOCAL_SYMBOL846;
    pANTLR3_COMMON_TOKEN    INFILE_SYMBOL847;
    pANTLR3_COMMON_TOKEN    set849;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL850;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL851;
    MySQLParser_data_or_xml_return data_or_xml844;
    #undef	RETURN_TYPE_data_or_xml844
    #define	RETURN_TYPE_data_or_xml844 MySQLParser_data_or_xml_return

    MySQLParser_string_literal_return string_literal848;
    #undef	RETURN_TYPE_string_literal848
    #define	RETURN_TYPE_string_literal848 MySQLParser_string_literal_return

    MySQLParser_table_ref_return table_ref852;
    #undef	RETURN_TYPE_table_ref852
    #define	RETURN_TYPE_table_ref852 MySQLParser_table_ref_return

    MySQLParser_use_partition_return use_partition853;
    #undef	RETURN_TYPE_use_partition853
    #define	RETURN_TYPE_use_partition853 MySQLParser_use_partition_return

    MySQLParser_charset_clause_return charset_clause854;
    #undef	RETURN_TYPE_charset_clause854
    #define	RETURN_TYPE_charset_clause854 MySQLParser_charset_clause_return

    MySQLParser_xml_rows_identified_by_return xml_rows_identified_by855;
    #undef	RETURN_TYPE_xml_rows_identified_by855
    #define	RETURN_TYPE_xml_rows_identified_by855 MySQLParser_xml_rows_identified_by_return

    MySQLParser_fields_clause_return fields_clause856;
    #undef	RETURN_TYPE_fields_clause856
    #define	RETURN_TYPE_fields_clause856 MySQLParser_fields_clause_return

    MySQLParser_lines_clause_return lines_clause857;
    #undef	RETURN_TYPE_lines_clause857
    #define	RETURN_TYPE_lines_clause857 MySQLParser_lines_clause_return

    MySQLParser_load_data_file_tail_return load_data_file_tail858;
    #undef	RETURN_TYPE_load_data_file_tail858
    #define	RETURN_TYPE_load_data_file_tail858 MySQLParser_load_data_file_tail_return

    pANTLR3_BASE_TREE LOAD_SYMBOL843_tree;
    pANTLR3_BASE_TREE set845_tree;
    pANTLR3_BASE_TREE LOCAL_SYMBOL846_tree;
    pANTLR3_BASE_TREE INFILE_SYMBOL847_tree;
    pANTLR3_BASE_TREE set849_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL850_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL851_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOAD_SYMBOL843       = NULL;
    set845       = NULL;
    LOCAL_SYMBOL846       = NULL;
    INFILE_SYMBOL847       = NULL;
    set849       = NULL;
    INTO_SYMBOL850       = NULL;
    TABLE_SYMBOL851       = NULL;
    data_or_xml844.tree = NULL;

    string_literal848.tree = NULL;

    table_ref852.tree = NULL;

    use_partition853.tree = NULL;

    charset_clause854.tree = NULL;

    xml_rows_identified_by855.tree = NULL;

    fields_clause856.tree = NULL;

    lines_clause857.tree = NULL;

    load_data_file_tail858.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOAD_SYMBOL843_tree   = NULL;
    set845_tree   = NULL;
    LOCAL_SYMBOL846_tree   = NULL;
    INFILE_SYMBOL847_tree   = NULL;
    set849_tree   = NULL;
    INTO_SYMBOL850_tree   = NULL;
    TABLE_SYMBOL851_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1099:15: ( LOAD_SYMBOL ^ data_or_xml ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_ref ( use_partition )? ( charset_clause )? ( xml_rows_identified_by )? ( fields_clause )? ( lines_clause )? load_data_file_tail )
        // MySQL.g:1100:2: LOAD_SYMBOL ^ data_or_xml ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )? ( LOCAL_SYMBOL )? INFILE_SYMBOL string_literal ( REPLACE_SYMBOL | IGNORE_SYMBOL )? INTO_SYMBOL TABLE_SYMBOL table_ref ( use_partition )? ( charset_clause )? ( xml_rows_identified_by )? ( fields_clause )? ( lines_clause )? load_data_file_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOAD_SYMBOL843 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_load_statement4617);
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOAD_SYMBOL843_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL843))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOAD_SYMBOL843_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_data_or_xml_in_load_statement4620);
            data_or_xml844=data_or_xml(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_or_xml844.tree);

            // MySQL.g:1100:27: ( LOW_PRIORITY_SYMBOL | CONCURRENT_SYMBOL )?
            {
                int alt279=2;
                switch ( LA(1) )
                {
                    case CONCURRENT_SYMBOL:
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt279=1;
                    	}
                        break;
                }

                switch (alt279)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set845=(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, set845))
            	            );
            	            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_statementEx;
            	        }


            	    }
            	    break;

                }
            }

            // MySQL.g:1100:70: ( LOCAL_SYMBOL )?
            {
                int alt280=2;
                switch ( LA(1) )
                {
                    case LOCAL_SYMBOL:
                    	{
                    		alt280=1;
                    	}
                        break;
                }

                switch (alt280)
                {
            	case 1:
            	    // MySQL.g:1100:70: LOCAL_SYMBOL
            	    {
            	        LOCAL_SYMBOL846 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_load_statement4631);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOCAL_SYMBOL846_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL846));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL846_tree);
            	        }

            	    }
            	    break;

                }
            }

            INFILE_SYMBOL847 = (pANTLR3_COMMON_TOKEN) MATCHT(INFILE_SYMBOL, &FOLLOW_INFILE_SYMBOL_in_load_statement4634);
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INFILE_SYMBOL847_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INFILE_SYMBOL847));
            ADAPTOR->addChild(ADAPTOR, root_0, INFILE_SYMBOL847_tree);
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_load_statement4636);
            string_literal848=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal848.tree);

            // MySQL.g:1101:3: ( REPLACE_SYMBOL | IGNORE_SYMBOL )?
            {
                int alt281=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    case REPLACE_SYMBOL:
                    	{
                    		alt281=1;
                    	}
                        break;
                }

                switch (alt281)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set849=(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, set849))
            	            );
            	            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_statementEx;
            	        }


            	    }
            	    break;

                }
            }

            INTO_SYMBOL850 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_load_statement4649);
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL850_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL850));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL850_tree);
            }

            TABLE_SYMBOL851 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_load_statement4651);
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TABLE_SYMBOL851_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL851));
            ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL851_tree);
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_load_statement4653);
            table_ref852=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref852.tree);

            // MySQL.g:1102:3: ( use_partition )?
            {
                int alt282=2;
                {
                    int LA282_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50602)) && (LA282_0 == PARTITION_SYMBOL))
                    {
                        alt282=1;
                    }
                }
                switch (alt282)
                {
            	case 1:
            	    // MySQL.g:1102:3: use_partition
            	    {
            	        FOLLOWPUSH(FOLLOW_use_partition_in_load_statement4657);
            	        use_partition853=use_partition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_partition853.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1102:18: ( charset_clause )?
            {
                int alt283=2;
                switch ( LA(1) )
                {
                    case CHARSET_SYMBOL:
                    case CHAR_SYMBOL:
                    	{
                    		alt283=1;
                    	}
                        break;
                }

                switch (alt283)
                {
            	case 1:
            	    // MySQL.g:1102:18: charset_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_charset_clause_in_load_statement4660);
            	        charset_clause854=charset_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause854.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1103:3: ( xml_rows_identified_by )?
            {
                int alt284=2;
                {
                    int LA284_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50500)) && (LA284_0 == ROWS_SYMBOL))
                    {
                        alt284=1;
                    }
                }
                switch (alt284)
                {
            	case 1:
            	    // MySQL.g:1103:3: xml_rows_identified_by
            	    {
            	        FOLLOWPUSH(FOLLOW_xml_rows_identified_by_in_load_statement4665);
            	        xml_rows_identified_by855=xml_rows_identified_by(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xml_rows_identified_by855.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1104:3: ( fields_clause )?
            {
                int alt285=2;
                switch ( LA(1) )
                {
                    case COLUMNS_SYMBOL:
                    	{
                    		alt285=1;
                    	}
                        break;
                }

                switch (alt285)
                {
            	case 1:
            	    // MySQL.g:1104:3: fields_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_fields_clause_in_load_statement4670);
            	        fields_clause856=fields_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields_clause856.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1104:18: ( lines_clause )?
            {
                int alt286=2;
                switch ( LA(1) )
                {
                    case LINES_SYMBOL:
                    	{
                    		alt286=1;
                    	}
                        break;
                }

                switch (alt286)
                {
            	case 1:
            	    // MySQL.g:1104:18: lines_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_lines_clause_in_load_statement4673);
            	        lines_clause857=lines_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lines_clause857.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_load_data_file_tail_in_load_statement4678);
            load_data_file_tail858=load_data_file_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_data_file_tail858.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleload_statementEx; /* Prevent compiler warnings */
    ruleload_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_statement */

/**
 * $ANTLR start data_or_xml
 * MySQL.g:1108:1: data_or_xml : ( DATA_SYMBOL |{...}? XML_SYMBOL );
 */
static MySQLParser_data_or_xml_return
data_or_xml(pMySQLParser ctx)
{
    MySQLParser_data_or_xml_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DATA_SYMBOL859;
    pANTLR3_COMMON_TOKEN    XML_SYMBOL860;

    pANTLR3_BASE_TREE DATA_SYMBOL859_tree;
    pANTLR3_BASE_TREE XML_SYMBOL860_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATA_SYMBOL859       = NULL;
    XML_SYMBOL860       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DATA_SYMBOL859_tree   = NULL;
    XML_SYMBOL860_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1108:12: ( DATA_SYMBOL |{...}? XML_SYMBOL )

            ANTLR3_UINT32 alt287;

            alt287=2;

            switch ( LA(1) )
            {
            case DATA_SYMBOL:
            	{
            		alt287=1;
            	}
                break;
            case XML_SYMBOL:
            	{
            		alt287=2;
            	}
                break;

            default:
                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 ruledata_or_xmlEx;

            }

            switch (alt287)
            {
        	case 1:
        	    // MySQL.g:1109:2: DATA_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATA_SYMBOL859 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_data_or_xml4687);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_or_xmlEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL859_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL859));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL859_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1110:4: {...}? XML_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 *)"data_or_xml";


        	        }

        	        XML_SYMBOL860 = (pANTLR3_COMMON_TOKEN) MATCHT(XML_SYMBOL, &FOLLOW_XML_SYMBOL_in_data_or_xml4694);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_or_xmlEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        XML_SYMBOL860_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XML_SYMBOL860));
        	        ADAPTOR->addChild(ADAPTOR, root_0, XML_SYMBOL860_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruledata_or_xmlEx; /* Prevent compiler warnings */
    ruledata_or_xmlEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_or_xml */

/**
 * $ANTLR start xml_rows_identified_by
 * MySQL.g:1113:1: xml_rows_identified_by :{...}? => ROWS_SYMBOL IDENTIFIED_SYMBOL BY_SYMBOL text_string ;
 */
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_SYMBOL861;
    pANTLR3_COMMON_TOKEN    IDENTIFIED_SYMBOL862;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL863;
    MySQLParser_text_string_return text_string864;
    #undef	RETURN_TYPE_text_string864
    #define	RETURN_TYPE_text_string864 MySQLParser_text_string_return

    pANTLR3_BASE_TREE ROWS_SYMBOL861_tree;
    pANTLR3_BASE_TREE IDENTIFIED_SYMBOL862_tree;
    pANTLR3_BASE_TREE BY_SYMBOL863_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ROWS_SYMBOL861       = NULL;
    IDENTIFIED_SYMBOL862       = NULL;
    BY_SYMBOL863       = NULL;
    text_string864.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ROWS_SYMBOL861_tree   = NULL;
    IDENTIFIED_SYMBOL862_tree   = NULL;
    BY_SYMBOL863_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1113:23: ({...}? => ROWS_SYMBOL IDENTIFIED_SYMBOL BY_SYMBOL text_string )
        // MySQL.g:1114:2: {...}? => ROWS_SYMBOL IDENTIFIED_SYMBOL BY_SYMBOL text_string
        {
            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 *)"xml_rows_identified_by";


            }

            ROWS_SYMBOL861 = (pANTLR3_COMMON_TOKEN) MATCHT(ROWS_SYMBOL, &FOLLOW_ROWS_SYMBOL_in_xml_rows_identified_by4707);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ROWS_SYMBOL861_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROWS_SYMBOL861));
            ADAPTOR->addChild(ADAPTOR, root_0, ROWS_SYMBOL861_tree);
            }

            IDENTIFIED_SYMBOL862 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIED_SYMBOL, &FOLLOW_IDENTIFIED_SYMBOL_in_xml_rows_identified_by4709);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IDENTIFIED_SYMBOL862_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIED_SYMBOL862));
            ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIED_SYMBOL862_tree);
            }

            BY_SYMBOL863 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_xml_rows_identified_by4711);
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL863_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL863));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL863_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_in_xml_rows_identified_by4713);
            text_string864=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulexml_rows_identified_byEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string864.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:1117:1: load_data_file_tail : ( IGNORE_SYMBOL INT_NUMBER ( LINES_SYMBOL | ROWS_SYMBOL ) )? ( load_data_file_target_list )? ( SET_SYMBOL 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_SYMBOL865;
    pANTLR3_COMMON_TOKEN    INT_NUMBER866;
    pANTLR3_COMMON_TOKEN    set867;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL869;
    MySQLParser_load_data_file_target_list_return load_data_file_target_list868;
    #undef	RETURN_TYPE_load_data_file_target_list868
    #define	RETURN_TYPE_load_data_file_target_list868 MySQLParser_load_data_file_target_list_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default870;
    #undef	RETURN_TYPE_column_assignment_list_with_default870
    #define	RETURN_TYPE_column_assignment_list_with_default870 MySQLParser_column_assignment_list_with_default_return

    pANTLR3_BASE_TREE IGNORE_SYMBOL865_tree;
    pANTLR3_BASE_TREE INT_NUMBER866_tree;
    pANTLR3_BASE_TREE set867_tree;
    pANTLR3_BASE_TREE SET_SYMBOL869_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IGNORE_SYMBOL865       = NULL;
    INT_NUMBER866       = NULL;
    set867       = NULL;
    SET_SYMBOL869       = NULL;
    load_data_file_target_list868.tree = NULL;

    column_assignment_list_with_default870.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IGNORE_SYMBOL865_tree   = NULL;
    INT_NUMBER866_tree   = NULL;
    set867_tree   = NULL;
    SET_SYMBOL869_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1117:20: ( ( IGNORE_SYMBOL INT_NUMBER ( LINES_SYMBOL | ROWS_SYMBOL ) )? ( load_data_file_target_list )? ( SET_SYMBOL column_assignment_list_with_default )? )
        // MySQL.g:1118:2: ( IGNORE_SYMBOL INT_NUMBER ( LINES_SYMBOL | ROWS_SYMBOL ) )? ( load_data_file_target_list )? ( SET_SYMBOL column_assignment_list_with_default )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1118:2: ( IGNORE_SYMBOL INT_NUMBER ( LINES_SYMBOL | ROWS_SYMBOL ) )?
            {
                int alt288=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt288=1;
                    	}
                        break;
                }

                switch (alt288)
                {
            	case 1:
            	    // MySQL.g:1118:3: IGNORE_SYMBOL INT_NUMBER ( LINES_SYMBOL | ROWS_SYMBOL )
            	    {
            	        IGNORE_SYMBOL865 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_load_data_file_tail4723);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL865_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL865));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL865_tree);
            	        }

            	        INT_NUMBER866 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_load_data_file_tail4725);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INT_NUMBER866_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER866));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER866_tree);
            	        }

            	        set867=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == ROWS_SYMBOL || LA(1) == LINES_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set867))
            	            );
            	            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_file_tailEx;
            	        }


            	    }
            	    break;

                }
            }

            // MySQL.g:1118:59: ( load_data_file_target_list )?
            {
                int alt289=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt289=1;
                    	}
                        break;
                }

                switch (alt289)
                {
            	case 1:
            	    // MySQL.g:1118:59: load_data_file_target_list
            	    {
            	        FOLLOWPUSH(FOLLOW_load_data_file_target_list_in_load_data_file_tail4737);
            	        load_data_file_target_list868=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_list868.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1118:87: ( SET_SYMBOL column_assignment_list_with_default )?
            {
                int alt290=2;
                switch ( LA(1) )
                {
                    case SET_SYMBOL:
                    	{
                    		alt290=1;
                    	}
                        break;
                }

                switch (alt290)
                {
            	case 1:
            	    // MySQL.g:1118:88: SET_SYMBOL column_assignment_list_with_default
            	    {
            	        SET_SYMBOL869 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_load_data_file_tail4741);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_data_file_tailEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL869_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL869));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL869_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_load_data_file_tail4743);
            	        column_assignment_list_with_default870=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_default870.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:1121: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_SYMBOL871;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL873;
    MySQLParser_field_or_variable_list_return field_or_variable_list872;
    #undef	RETURN_TYPE_field_or_variable_list872
    #define	RETURN_TYPE_field_or_variable_list872 MySQLParser_field_or_variable_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL871_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL873_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL871       = NULL;
    CLOSE_PAR_SYMBOL873       = NULL;
    field_or_variable_list872.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL871_tree   = NULL;
    CLOSE_PAR_SYMBOL873_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1121:27: ( OPEN_PAR_SYMBOL ( field_or_variable_list )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1122:2: OPEN_PAR_SYMBOL ( field_or_variable_list )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL871 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_load_data_file_target_list4754);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_file_target_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL871_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL871));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL871_tree);
            }

            // MySQL.g:1122:18: ( field_or_variable_list )?
            {
                int alt291=2;
                {
                    int LA291_0 = LA(1);
                    if ( (((LA291_0 >= ACCOUNT_SYMBOL) && (LA291_0 <= YEAR_SYMBOL)) || ((LA291_0 >= AT_SIGN_SYMBOL) && (LA291_0 <= AT_TEXT_SUFFIX)) || LA291_0 == BACK_TICK_QUOTED_ID || LA291_0 == DOT_SYMBOL || LA291_0 == DOUBLE_QUOTED_TEXT || LA291_0 == IDENTIFIER))
                    {
                        alt291=1;
                    }
                }
                switch (alt291)
                {
            	case 1:
            	    // MySQL.g:1122:18: field_or_variable_list
            	    {
            	        FOLLOWPUSH(FOLLOW_field_or_variable_list_in_load_data_file_target_list4756);
            	        field_or_variable_list872=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_list872.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL873 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_load_data_file_target_list4759);
            if  (HASEXCEPTION())
            {
                goto ruleload_data_file_target_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL873_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL873));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL873_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:1125:1: field_or_variable_list : ( column_ref | user_variable ) ( COMMA_SYMBOL ( column_ref | 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_SYMBOL876;
    MySQLParser_column_ref_return column_ref874;
    #undef	RETURN_TYPE_column_ref874
    #define	RETURN_TYPE_column_ref874 MySQLParser_column_ref_return

    MySQLParser_user_variable_return user_variable875;
    #undef	RETURN_TYPE_user_variable875
    #define	RETURN_TYPE_user_variable875 MySQLParser_user_variable_return

    MySQLParser_column_ref_return column_ref877;
    #undef	RETURN_TYPE_column_ref877
    #define	RETURN_TYPE_column_ref877 MySQLParser_column_ref_return

    MySQLParser_user_variable_return user_variable878;
    #undef	RETURN_TYPE_user_variable878
    #define	RETURN_TYPE_user_variable878 MySQLParser_user_variable_return

    pANTLR3_BASE_TREE COMMA_SYMBOL876_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL876       = NULL;
    column_ref874.tree = NULL;

    user_variable875.tree = NULL;

    column_ref877.tree = NULL;

    user_variable878.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL876_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1125:23: ( ( column_ref | user_variable ) ( COMMA_SYMBOL ( column_ref | user_variable ) )* )
        // MySQL.g:1126:2: ( column_ref | user_variable ) ( COMMA_SYMBOL ( column_ref | user_variable ) )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1126:2: ( column_ref | user_variable )
            {
                int alt292=2;
                {
                    int LA292_0 = LA(1);
                    if ( (((LA292_0 >= ACCOUNT_SYMBOL) && (LA292_0 <= YEAR_SYMBOL)) || LA292_0 == BACK_TICK_QUOTED_ID || LA292_0 == DOT_SYMBOL || LA292_0 == DOUBLE_QUOTED_TEXT || LA292_0 == IDENTIFIER))
                    {
                        alt292=1;
                    }
                    else if ( (((LA292_0 >= AT_SIGN_SYMBOL) && (LA292_0 <= AT_TEXT_SUFFIX))))
                    {
                        alt292=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 292;
                        EXCEPTION->state        = 0;


                        goto rulefield_or_variable_listEx;

                    }
                }
                switch (alt292)
                {
            	case 1:
            	    // MySQL.g:1126:3: column_ref
            	    {
            	        FOLLOWPUSH(FOLLOW_column_ref_in_field_or_variable_list4769);
            	        column_ref874=column_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref874.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1126:16: user_variable
            	    {
            	        FOLLOWPUSH(FOLLOW_user_variable_in_field_or_variable_list4773);
            	        user_variable875=user_variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable875.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1126:31: ( COMMA_SYMBOL ( column_ref | user_variable ) )*

            for (;;)
            {
                int alt294=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt294=1;
                	}
                    break;

                }

                switch (alt294)
                {
            	case 1:
            	    // MySQL.g:1126:32: COMMA_SYMBOL ( column_ref | user_variable )
            	    {
            	        COMMA_SYMBOL876 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_field_or_variable_list4777);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_or_variable_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL876_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL876));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL876_tree);
            	        }

            	        // MySQL.g:1126:45: ( column_ref | user_variable )
            	        {
            	            int alt293=2;
            	            {
            	                int LA293_0 = LA(1);
            	                if ( (((LA293_0 >= ACCOUNT_SYMBOL) && (LA293_0 <= YEAR_SYMBOL)) || LA293_0 == BACK_TICK_QUOTED_ID || LA293_0 == DOT_SYMBOL || LA293_0 == DOUBLE_QUOTED_TEXT || LA293_0 == IDENTIFIER))
            	                {
            	                    alt293=1;
            	                }
            	                else if ( (((LA293_0 >= AT_SIGN_SYMBOL) && (LA293_0 <= AT_TEXT_SUFFIX))))
            	                {
            	                    alt293=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 293;
            	                    EXCEPTION->state        = 0;


            	                    goto rulefield_or_variable_listEx;

            	                }
            	            }
            	            switch (alt293)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1126:46: column_ref
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_column_ref_in_field_or_variable_list4780);
            	        	        column_ref877=column_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_or_variable_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref877.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1126:59: user_variable
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_user_variable_in_field_or_variable_list4784);
            	        	        user_variable878=user_variable(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulefield_or_variable_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable878.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop294;	/* break out of the loop */
            	    break;
                }
            }
            loop294: ; /* 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:1131:1: replace_statement : REPLACE_SYMBOL ^ ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )? ( INTO_SYMBOL )? table_ref ( use_partition )? 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_SYMBOL879;
    pANTLR3_COMMON_TOKEN    set880;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL881;
    MySQLParser_table_ref_return table_ref882;
    #undef	RETURN_TYPE_table_ref882
    #define	RETURN_TYPE_table_ref882 MySQLParser_table_ref_return

    MySQLParser_use_partition_return use_partition883;
    #undef	RETURN_TYPE_use_partition883
    #define	RETURN_TYPE_use_partition883 MySQLParser_use_partition_return

    MySQLParser_insert_field_spec_return insert_field_spec884;
    #undef	RETURN_TYPE_insert_field_spec884
    #define	RETURN_TYPE_insert_field_spec884 MySQLParser_insert_field_spec_return

    pANTLR3_BASE_TREE REPLACE_SYMBOL879_tree;
    pANTLR3_BASE_TREE set880_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL881_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPLACE_SYMBOL879       = NULL;
    set880       = NULL;
    INTO_SYMBOL881       = NULL;
    table_ref882.tree = NULL;

    use_partition883.tree = NULL;

    insert_field_spec884.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPLACE_SYMBOL879_tree   = NULL;
    set880_tree   = NULL;
    INTO_SYMBOL881_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1131:18: ( REPLACE_SYMBOL ^ ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )? ( INTO_SYMBOL )? table_ref ( use_partition )? insert_field_spec )
        // MySQL.g:1132:2: REPLACE_SYMBOL ^ ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )? ( INTO_SYMBOL )? table_ref ( use_partition )? insert_field_spec
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REPLACE_SYMBOL879 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_replace_statement4798);
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPLACE_SYMBOL879_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL879))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REPLACE_SYMBOL879_tree, root_0));
            }

            // MySQL.g:1132:18: ( LOW_PRIORITY_SYMBOL | DELAYED_SYMBOL )?
            {
                int alt295=2;
                switch ( LA(1) )
                {
                    case DELAYED_SYMBOL:
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt295=1;
                    	}
                        break;
                }

                switch (alt295)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set880=(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, set880))
            	            );
            	            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:1132:58: ( INTO_SYMBOL )?
            {
                int alt296=2;
                switch ( LA(1) )
                {
                    case INTO_SYMBOL:
                    	{
                    		alt296=1;
                    	}
                        break;
                }

                switch (alt296)
                {
            	case 1:
            	    // MySQL.g:1132:58: INTO_SYMBOL
            	    {
            	        INTO_SYMBOL881 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_replace_statement4810);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplace_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INTO_SYMBOL881_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL881));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL881_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_replace_statement4813);
            table_ref882=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref882.tree);

            // MySQL.g:1133:3: ( use_partition )?
            {
                int alt297=2;
                {
                    int LA297_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50602)) && (LA297_0 == PARTITION_SYMBOL))
                    {
                        alt297=1;
                    }
                }
                switch (alt297)
                {
            	case 1:
            	    // MySQL.g:1133:3: use_partition
            	    {
            	        FOLLOWPUSH(FOLLOW_use_partition_in_replace_statement4817);
            	        use_partition883=use_partition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplace_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_partition883.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_insert_field_spec_in_replace_statement4820);
            insert_field_spec884=insert_field_spec(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereplace_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_field_spec884.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:1138:1: select_statement : ( SELECT_SYMBOL ^ select_part2 ( union_clause )? | OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? );
 */
static MySQLParser_select_statement_return
select_statement(pMySQLParser ctx)
{
    MySQLParser_select_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL885;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL888;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL890;
    MySQLParser_select_part2_return select_part2886;
    #undef	RETURN_TYPE_select_part2886
    #define	RETURN_TYPE_select_part2886 MySQLParser_select_part2_return

    MySQLParser_union_clause_return union_clause887;
    #undef	RETURN_TYPE_union_clause887
    #define	RETURN_TYPE_union_clause887 MySQLParser_union_clause_return

    MySQLParser_select_paren_return select_paren889;
    #undef	RETURN_TYPE_select_paren889
    #define	RETURN_TYPE_select_paren889 MySQLParser_select_paren_return

    MySQLParser_union_or_order_by_or_limit_return union_or_order_by_or_limit891;
    #undef	RETURN_TYPE_union_or_order_by_or_limit891
    #define	RETURN_TYPE_union_or_order_by_or_limit891 MySQLParser_union_or_order_by_or_limit_return

    pANTLR3_BASE_TREE SELECT_SYMBOL885_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL888_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL890_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL885       = NULL;
    OPEN_PAR_SYMBOL888       = NULL;
    CLOSE_PAR_SYMBOL890       = NULL;
    select_part2886.tree = NULL;

    union_clause887.tree = NULL;

    select_paren889.tree = NULL;

    union_or_order_by_or_limit891.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL885_tree   = NULL;
    OPEN_PAR_SYMBOL888_tree   = NULL;
    CLOSE_PAR_SYMBOL890_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1138:17: ( SELECT_SYMBOL ^ select_part2 ( union_clause )? | OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )? )

            ANTLR3_UINT32 alt300;

            alt300=2;

            switch ( LA(1) )
            {
            case SELECT_SYMBOL:
            	{
            		alt300=1;
            	}
                break;
            case OPEN_PAR_SYMBOL:
            	{
            		alt300=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 300;
                EXCEPTION->state        = 0;


                goto ruleselect_statementEx;

            }

            switch (alt300)
            {
        	case 1:
        	    // MySQL.g:1139:2: SELECT_SYMBOL ^ select_part2 ( union_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL885 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_select_statement4831);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL885_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL885))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SELECT_SYMBOL885_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_in_select_statement4834);
        	        select_part2886=select_part2(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2886.tree);

        	        // MySQL.g:1139:30: ( union_clause )?
        	        {
        	            int alt298=2;
        	            switch ( LA(1) )
        	            {
        	                case UNION_SYMBOL:
        	                	{
        	                		alt298=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt298)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1139:30: union_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_clause_in_select_statement4836);
        	        	        union_clause887=union_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause887.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1140:4: OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL ( union_or_order_by_or_limit )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL888 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_select_statement4842);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL888_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL888));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL888_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_paren_in_select_statement4844);
        	        select_paren889=select_paren(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_paren889.tree);

        	        CLOSE_PAR_SYMBOL890 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_select_statement4846);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL890_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL890));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL890_tree);
        	        }

        	        // MySQL.g:1140:50: ( union_or_order_by_or_limit )?
        	        {
        	            int alt299=2;
        	            switch ( LA(1) )
        	            {
        	                case LIMIT_SYMBOL:
        	                case ORDER_SYMBOL:
        	                case UNION_SYMBOL:
        	                	{
        	                		alt299=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt299)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1140:50: union_or_order_by_or_limit
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_union_or_order_by_or_limit_in_select_statement4848);
        	        	        union_or_order_by_or_limit891=union_or_order_by_or_limit(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleselect_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_or_order_by_or_limit891.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:1143: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_SYMBOL892;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL894;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL896;
    MySQLParser_select_part2_return select_part2893;
    #undef	RETURN_TYPE_select_part2893
    #define	RETURN_TYPE_select_part2893 MySQLParser_select_part2_return

    MySQLParser_select_paren_return select_paren895;
    #undef	RETURN_TYPE_select_paren895
    #define	RETURN_TYPE_select_paren895 MySQLParser_select_paren_return

    pANTLR3_BASE_TREE SELECT_SYMBOL892_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL894_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL896_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL892       = NULL;
    OPEN_PAR_SYMBOL894       = NULL;
    CLOSE_PAR_SYMBOL896       = NULL;
    select_part2893.tree = NULL;

    select_paren895.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL892_tree   = NULL;
    OPEN_PAR_SYMBOL894_tree   = NULL;
    CLOSE_PAR_SYMBOL896_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1143:13: ( SELECT_SYMBOL ^ select_part2 | OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt301;

            alt301=2;

            switch ( LA(1) )
            {
            case SELECT_SYMBOL:
            	{
            		alt301=1;
            	}
                break;
            case OPEN_PAR_SYMBOL:
            	{
            		alt301=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 301;
                EXCEPTION->state        = 0;


                goto ruleselect_parenEx;

            }

            switch (alt301)
            {
        	case 1:
        	    // MySQL.g:1144:2: SELECT_SYMBOL ^ select_part2
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL892 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_select_paren4858);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL892_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL892))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SELECT_SYMBOL892_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_in_select_paren4861);
        	        select_part2893=select_part2(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2893.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1145:4: OPEN_PAR_SYMBOL select_paren CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL894 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_select_paren4866);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL894_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL894));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL894_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_paren_in_select_paren4868);
        	        select_paren895=select_paren(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_paren895.tree);

        	        CLOSE_PAR_SYMBOL896 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_select_paren4870);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_parenEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL896_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL896));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL896_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_from
 * MySQL.g:1148:1: select_from : from_clause ( 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;

    MySQLParser_from_clause_return from_clause897;
    #undef	RETURN_TYPE_from_clause897
    #define	RETURN_TYPE_from_clause897 MySQLParser_from_clause_return

    MySQLParser_where_clause_return where_clause898;
    #undef	RETURN_TYPE_where_clause898
    #define	RETURN_TYPE_where_clause898 MySQLParser_where_clause_return

    MySQLParser_group_by_clause_return group_by_clause899;
    #undef	RETURN_TYPE_group_by_clause899
    #define	RETURN_TYPE_group_by_clause899 MySQLParser_group_by_clause_return

    MySQLParser_having_clause_return having_clause900;
    #undef	RETURN_TYPE_having_clause900
    #define	RETURN_TYPE_having_clause900 MySQLParser_having_clause_return

    MySQLParser_order_by_clause_return order_by_clause901;
    #undef	RETURN_TYPE_order_by_clause901
    #define	RETURN_TYPE_order_by_clause901 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause902;
    #undef	RETURN_TYPE_limit_clause902
    #define	RETURN_TYPE_limit_clause902 MySQLParser_limit_clause_return

    MySQLParser_procedure_analyse_clause_return procedure_analyse_clause903;
    #undef	RETURN_TYPE_procedure_analyse_clause903
    #define	RETURN_TYPE_procedure_analyse_clause903 MySQLParser_procedure_analyse_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    from_clause897.tree = NULL;

    where_clause898.tree = NULL;

    group_by_clause899.tree = NULL;

    having_clause900.tree = NULL;

    order_by_clause901.tree = NULL;

    limit_clause902.tree = NULL;

    procedure_analyse_clause903.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1148:12: ( from_clause ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )? )
        // MySQL.g:1149:2: from_clause ( where_clause )? ( group_by_clause )? ( having_clause )? ( order_by_clause )? ( limit_clause )? ( procedure_analyse_clause )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_from_clause_in_select_from4879);
            from_clause897=from_clause(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleselect_fromEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, from_clause897.tree);

            // MySQL.g:1149:14: ( where_clause )?
            {
                int alt302=2;
                switch ( LA(1) )
                {
                    case WHERE_SYMBOL:
                    	{
                    		alt302=1;
                    	}
                        break;
                }

                switch (alt302)
                {
            	case 1:
            	    // MySQL.g:1149:14: where_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_where_clause_in_select_from4881);
            	        where_clause898=where_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause898.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1149:28: ( group_by_clause )?
            {
                int alt303=2;
                switch ( LA(1) )
                {
                    case GROUP_SYMBOL:
                    	{
                    		alt303=1;
                    	}
                        break;
                }

                switch (alt303)
                {
            	case 1:
            	    // MySQL.g:1149:28: group_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_group_by_clause_in_select_from4884);
            	        group_by_clause899=group_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, group_by_clause899.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1149:45: ( having_clause )?
            {
                int alt304=2;
                switch ( LA(1) )
                {
                    case HAVING_SYMBOL:
                    	{
                    		alt304=1;
                    	}
                        break;
                }

                switch (alt304)
                {
            	case 1:
            	    // MySQL.g:1149:45: having_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_having_clause_in_select_from4887);
            	        having_clause900=having_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, having_clause900.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1149:60: ( order_by_clause )?
            {
                int alt305=2;
                switch ( LA(1) )
                {
                    case ORDER_SYMBOL:
                    	{
                    		alt305=1;
                    	}
                        break;
                }

                switch (alt305)
                {
            	case 1:
            	    // MySQL.g:1149:60: order_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_order_by_clause_in_select_from4890);
            	        order_by_clause901=order_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause901.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1149:77: ( limit_clause )?
            {
                int alt306=2;
                switch ( LA(1) )
                {
                    case LIMIT_SYMBOL:
                    	{
                    		alt306=1;
                    	}
                        break;
                }

                switch (alt306)
                {
            	case 1:
            	    // MySQL.g:1149:77: limit_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_from4893);
            	        limit_clause902=limit_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause902.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1149:91: ( procedure_analyse_clause )?
            {
                int alt307=2;
                switch ( LA(1) )
                {
                    case PROCEDURE_SYMBOL:
                    	{
                    		alt307=1;
                    	}
                        break;
                }

                switch (alt307)
                {
            	case 1:
            	    // MySQL.g:1149:91: procedure_analyse_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_procedure_analyse_clause_in_select_from4896);
            	        procedure_analyse_clause903=procedure_analyse_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_fromEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_analyse_clause903.tree);

            	    }
            	    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 (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 select_part2
 * MySQL.g:1152:1: select_part2 : ( options {greedy=true; } : select_option )* select_item_list ( ( order_by_clause )? ( limit_clause )? | into_clause ( select_from )? | select_from ( into_clause )? ) ( select_lock_type )? ;
 */
static MySQLParser_select_part2_return
select_part2(pMySQLParser ctx)
{
    MySQLParser_select_part2_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_select_option_return select_option904;
    #undef	RETURN_TYPE_select_option904
    #define	RETURN_TYPE_select_option904 MySQLParser_select_option_return

    MySQLParser_select_item_list_return select_item_list905;
    #undef	RETURN_TYPE_select_item_list905
    #define	RETURN_TYPE_select_item_list905 MySQLParser_select_item_list_return

    MySQLParser_order_by_clause_return order_by_clause906;
    #undef	RETURN_TYPE_order_by_clause906
    #define	RETURN_TYPE_order_by_clause906 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause907;
    #undef	RETURN_TYPE_limit_clause907
    #define	RETURN_TYPE_limit_clause907 MySQLParser_limit_clause_return

    MySQLParser_into_clause_return into_clause908;
    #undef	RETURN_TYPE_into_clause908
    #define	RETURN_TYPE_into_clause908 MySQLParser_into_clause_return

    MySQLParser_select_from_return select_from909;
    #undef	RETURN_TYPE_select_from909
    #define	RETURN_TYPE_select_from909 MySQLParser_select_from_return

    MySQLParser_select_from_return select_from910;
    #undef	RETURN_TYPE_select_from910
    #define	RETURN_TYPE_select_from910 MySQLParser_select_from_return

    MySQLParser_into_clause_return into_clause911;
    #undef	RETURN_TYPE_into_clause911
    #define	RETURN_TYPE_into_clause911 MySQLParser_into_clause_return

    MySQLParser_select_lock_type_return select_lock_type912;
    #undef	RETURN_TYPE_select_lock_type912
    #define	RETURN_TYPE_select_lock_type912 MySQLParser_select_lock_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    select_option904.tree = NULL;

    select_item_list905.tree = NULL;

    order_by_clause906.tree = NULL;

    limit_clause907.tree = NULL;

    into_clause908.tree = NULL;

    select_from909.tree = NULL;

    select_from910.tree = NULL;

    into_clause911.tree = NULL;

    select_lock_type912.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1152:13: ( ( options {greedy=true; } : select_option )* select_item_list ( ( order_by_clause )? ( limit_clause )? | into_clause ( select_from )? | select_from ( into_clause )? ) ( select_lock_type )? )
        // MySQL.g:1153:2: ( options {greedy=true; } : select_option )* select_item_list ( ( order_by_clause )? ( limit_clause )? | into_clause ( select_from )? | select_from ( into_clause )? ) ( select_lock_type )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1153:2: ( options {greedy=true; } : select_option )*

            for (;;)
            {
                int alt308=2;
                switch ( LA(1) )
                {
                case SQL_BUFFER_RESULT_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA308_96 = LA(2);
                		    if ( (LA308_96 == DOT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == OPEN_PAR_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MOD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MINUS_OPERATOR || LA308_96 == PLUS_OPERATOR))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == NOT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == SOUNDS_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == IDENTIFIER))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == DATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == ASCII_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == BITWISE_NOT_OPERATOR || LA308_96 == INTERVAL_SYMBOL || LA308_96 == LOGICAL_NOT_OPERATOR || LA308_96 == NCHAR_TEXT || LA308_96 == NOT2_SYMBOL || LA308_96 == SINGLE_QUOTED_TEXT || LA308_96 == UNDERSCORE_CHARSET))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == DECIMAL_NUMBER || LA308_96 == FLOAT_NUMBER || LA308_96 == HEX_NUMBER || LA308_96 == INT_NUMBER || LA308_96 == LONG_NUMBER || LA308_96 == ULONGLONG_NUMBER))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == TIME_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == TIMESTAMP_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == DAY_SYMBOL || LA308_96 == FALSE_SYMBOL || LA308_96 == NULL2_SYMBOL || LA308_96 == NULL_SYMBOL || LA308_96 == TRUE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == BIN_NUMBER || LA308_96 == CHAR_SYMBOL || LA308_96 == CURRENT_USER_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == HOUR_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MINUTE_SYMBOL || LA308_96 == INSERT_SYMBOL || LA308_96 == LEFT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MONTH_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == SECOND_SYMBOL || LA308_96 == RIGHT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == USER_SYMBOL || LA308_96 == TRIM_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == YEAR_SYMBOL || LA308_96 == VALUES_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == ADDDATE_SYMBOL || LA308_96 == SUBDATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == GET_FORMAT_SYMBOL || LA308_96 == CURDATE_SYMBOL || LA308_96 == CURTIME_SYMBOL || LA308_96 == DATE_ADD_SYMBOL || LA308_96 == DATE_SUB_SYMBOL || LA308_96 == EXTRACT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (((LA308_96 >= TIMESTAMP_ADD_SYMBOL) && (LA308_96 <= TIMESTAMP_DIFF_SYMBOL)) || LA308_96 == NOW_SYMBOL || LA308_96 == POSITION_SYMBOL || LA308_96 == SUBSTRING_SYMBOL || LA308_96 == SYSDATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == COALESCE_SYMBOL || ((LA308_96 >= UTC_DATE_SYMBOL) && (LA308_96 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == CHARSET_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == FORMAT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == COLLATION_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MICROSECOND_SYMBOL || LA308_96 == DATABASE_SYMBOL || LA308_96 == IF_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == TRUNCATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MULT_OPERATOR))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == PASSWORD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == QUARTER_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == REVERSE_SYMBOL || ((LA308_96 >= REPEAT_SYMBOL) && (LA308_96 <= REPLACE_SYMBOL))))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == ROW_COUNT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == WEEK_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == CONTAINS_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == LINESTRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MULTIPOINT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == POINT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == POLYGON_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == AVG_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == ACCOUNT_SYMBOL || ((LA308_96 >= ALWAYS_SYMBOL) && (LA308_96 <= CACHE_SYMBOL)) || ((LA308_96 >= CHECKSUM_SYMBOL) && (LA308_96 <= COMMIT_SYMBOL)) || ((LA308_96 >= DEALLOCATE_SYMBOL) && (LA308_96 <= FOLLOWS_SYMBOL)) || ((LA308_96 >= GROUP_REPLICATION_SYMBOL) && (LA308_96 <= STOP_SYMBOL)) || ((LA308_96 >= UNICODE_SYMBOL) && (LA308_96 <= XA_SYMBOL)) || LA308_96 == SHUTDOWN_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == ROW_SYMBOL || ((LA308_96 >= AT_AT_SIGN_SYMBOL) && (LA308_96 <= AT_TEXT_SUFFIX)) || ((LA308_96 >= BIT_AND_SYMBOL) && (LA308_96 <= BIT_XOR_SYMBOL)) || LA308_96 == COUNT_SYMBOL || LA308_96 == EXISTS_SYMBOL || LA308_96 == GROUP_CONCAT_SYMBOL || LA308_96 == MAX_SYMBOL || LA308_96 == MIN_SYMBOL || LA308_96 == PARAM_MARKER || LA308_96 == STDDEV_SAMP_SYMBOL || LA308_96 == STD_SYMBOL || LA308_96 == SUM_SYMBOL || LA308_96 == VARIANCE_SYMBOL || LA308_96 == VAR_SAMP_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == SQL_BUFFER_RESULT_SYMBOL || LA308_96 == BINARY_SYMBOL || ((LA308_96 >= CASE_SYMBOL) && (LA308_96 <= CAST_SYMBOL)) || LA308_96 == CONVERT_SYMBOL || LA308_96 == MATCH_SYMBOL || LA308_96 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == SQL_NO_CACHE_SYMBOL || LA308_96 == ALL_SYMBOL || LA308_96 == DISTINCT_SYMBOL || LA308_96 == HIGH_PRIORITY_SYMBOL || ((LA308_96 >= SQL_BIG_RESULT_SYMBOL) && (LA308_96 <= SQL_SMALL_RESULT_SYMBOL)) || LA308_96 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == SQL_CACHE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_96 == ACTION_SYMBOL || ((LA308_96 >= AFTER_SYMBOL) && (LA308_96 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA308_96 >= BINLOG_SYMBOL) && (LA308_96 <= CLASS_ORIGIN_SYMBOL)) || LA308_96 == CODE_SYMBOL || ((LA308_96 >= COLUMN_NAME_SYMBOL) && (LA308_96 <= DATETIME_SYMBOL)) || ((LA308_96 >= DEFAULT_AUTH_SYMBOL) && (LA308_96 <= GEOMETRY_SYMBOL)) || ((LA308_96 >= GRANTS_SYMBOL) && (LA308_96 <= HOSTS_SYMBOL)) || ((LA308_96 >= IDENTIFIED_SYMBOL) && (LA308_96 <= LEVEL_SYMBOL)) || ((LA308_96 >= LIST_SYMBOL) && (LA308_96 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA308_96 >= MAX_SIZE_SYMBOL) && (LA308_96 <= MESSAGE_TEXT_SYMBOL)) || LA308_96 == MIGRATE_SYMBOL || ((LA308_96 >= MIN_ROWS_SYMBOL) && (LA308_96 <= MODE_SYMBOL)) || ((LA308_96 >= MUTEX_SYMBOL) && (LA308_96 <= OFFSET_SYMBOL)) || ((LA308_96 >= ONE_SHOT_SYMBOL) && (LA308_96 <= PARTITIONS_SYMBOL)) || ((LA308_96 >= PHASE_SYMBOL) && (LA308_96 <= PLUGINS_SYMBOL)) || ((LA308_96 >= PRESERVE_SYMBOL) && (LA308_96 <= PROXY_SYMBOL)) || ((LA308_96 >= QUERY_SYMBOL) && (LA308_96 <= RETURNS_SYMBOL)) || ((LA308_96 >= ROLLUP_SYMBOL) && (LA308_96 <= ROWS_SYMBOL)) || LA308_96 == ROW_FORMAT_SYMBOL || ((LA308_96 >= RTREE_SYMBOL) && (LA308_96 <= SCHEMA_NAME_SYMBOL)) || ((LA308_96 >= SERIAL_SYMBOL) && (LA308_96 <= SHARE_SYMBOL)) || ((LA308_96 >= SLOW_SYMBOL) && (LA308_96 <= SNAPSHOT_SYMBOL)) || ((LA308_96 >= SOURCE_SYMBOL) && (LA308_96 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA308_96 >= SQL_THREAD_SYMBOL) && (LA308_96 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA308_96 >= SUBJECT_SYMBOL) && (LA308_96 <= TRIGGERS_SYMBOL)) || ((LA308_96 >= TYPES_SYMBOL) && (LA308_96 <= USER_RESOURCES_SYMBOL)) || ((LA308_96 >= USE_FRM_SYMBOL) && (LA308_96 <= WAIT_SYMBOL)) || LA308_96 == WORK_SYMBOL || ((LA308_96 >= X509_SYMBOL) && (LA308_96 <= XML_SYMBOL))))
                		    {
                		        alt308=1;
                		    }

                		}
                	}
                    break;
                case SQL_NO_CACHE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA308_104 = LA(2);
                		    if ( (LA308_104 == DOT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == OPEN_PAR_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MOD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MINUS_OPERATOR || LA308_104 == PLUS_OPERATOR))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == NOT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == SOUNDS_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == IDENTIFIER))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == DATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == ASCII_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == BITWISE_NOT_OPERATOR || LA308_104 == INTERVAL_SYMBOL || LA308_104 == LOGICAL_NOT_OPERATOR || LA308_104 == NCHAR_TEXT || LA308_104 == NOT2_SYMBOL || LA308_104 == SINGLE_QUOTED_TEXT || LA308_104 == UNDERSCORE_CHARSET))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == DECIMAL_NUMBER || LA308_104 == FLOAT_NUMBER || LA308_104 == HEX_NUMBER || LA308_104 == INT_NUMBER || LA308_104 == LONG_NUMBER || LA308_104 == ULONGLONG_NUMBER))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == TIME_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == TIMESTAMP_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == DAY_SYMBOL || LA308_104 == FALSE_SYMBOL || LA308_104 == NULL2_SYMBOL || LA308_104 == NULL_SYMBOL || LA308_104 == TRUE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == BIN_NUMBER || LA308_104 == CHAR_SYMBOL || LA308_104 == CURRENT_USER_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == HOUR_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MINUTE_SYMBOL || LA308_104 == INSERT_SYMBOL || LA308_104 == LEFT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MONTH_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == SECOND_SYMBOL || LA308_104 == RIGHT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == USER_SYMBOL || LA308_104 == TRIM_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == YEAR_SYMBOL || LA308_104 == VALUES_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == ADDDATE_SYMBOL || LA308_104 == SUBDATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == GET_FORMAT_SYMBOL || LA308_104 == CURDATE_SYMBOL || LA308_104 == CURTIME_SYMBOL || LA308_104 == DATE_ADD_SYMBOL || LA308_104 == DATE_SUB_SYMBOL || LA308_104 == EXTRACT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (((LA308_104 >= TIMESTAMP_ADD_SYMBOL) && (LA308_104 <= TIMESTAMP_DIFF_SYMBOL)) || LA308_104 == NOW_SYMBOL || LA308_104 == POSITION_SYMBOL || LA308_104 == SUBSTRING_SYMBOL || LA308_104 == SYSDATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == COALESCE_SYMBOL || ((LA308_104 >= UTC_DATE_SYMBOL) && (LA308_104 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == CHARSET_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == FORMAT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == COLLATION_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MICROSECOND_SYMBOL || LA308_104 == DATABASE_SYMBOL || LA308_104 == IF_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == TRUNCATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MULT_OPERATOR))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == PASSWORD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == QUARTER_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == REVERSE_SYMBOL || ((LA308_104 >= REPEAT_SYMBOL) && (LA308_104 <= REPLACE_SYMBOL))))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == ROW_COUNT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == WEEK_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == CONTAINS_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == LINESTRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MULTIPOINT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == POINT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == POLYGON_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == AVG_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == ACCOUNT_SYMBOL || ((LA308_104 >= ALWAYS_SYMBOL) && (LA308_104 <= CACHE_SYMBOL)) || ((LA308_104 >= CHECKSUM_SYMBOL) && (LA308_104 <= COMMIT_SYMBOL)) || ((LA308_104 >= DEALLOCATE_SYMBOL) && (LA308_104 <= FOLLOWS_SYMBOL)) || ((LA308_104 >= GROUP_REPLICATION_SYMBOL) && (LA308_104 <= STOP_SYMBOL)) || ((LA308_104 >= UNICODE_SYMBOL) && (LA308_104 <= XA_SYMBOL)) || LA308_104 == SHUTDOWN_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == ROW_SYMBOL || ((LA308_104 >= AT_AT_SIGN_SYMBOL) && (LA308_104 <= AT_TEXT_SUFFIX)) || ((LA308_104 >= BIT_AND_SYMBOL) && (LA308_104 <= BIT_XOR_SYMBOL)) || LA308_104 == COUNT_SYMBOL || LA308_104 == EXISTS_SYMBOL || LA308_104 == GROUP_CONCAT_SYMBOL || LA308_104 == MAX_SYMBOL || LA308_104 == MIN_SYMBOL || LA308_104 == PARAM_MARKER || LA308_104 == STDDEV_SAMP_SYMBOL || LA308_104 == STD_SYMBOL || LA308_104 == SUM_SYMBOL || LA308_104 == VARIANCE_SYMBOL || LA308_104 == VAR_SAMP_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == SQL_BUFFER_RESULT_SYMBOL || LA308_104 == BINARY_SYMBOL || ((LA308_104 >= CASE_SYMBOL) && (LA308_104 <= CAST_SYMBOL)) || LA308_104 == CONVERT_SYMBOL || LA308_104 == MATCH_SYMBOL || LA308_104 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == SQL_NO_CACHE_SYMBOL || LA308_104 == ALL_SYMBOL || LA308_104 == DISTINCT_SYMBOL || LA308_104 == HIGH_PRIORITY_SYMBOL || ((LA308_104 >= SQL_BIG_RESULT_SYMBOL) && (LA308_104 <= SQL_SMALL_RESULT_SYMBOL)) || LA308_104 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == SQL_CACHE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_104 == ACTION_SYMBOL || ((LA308_104 >= AFTER_SYMBOL) && (LA308_104 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA308_104 >= BINLOG_SYMBOL) && (LA308_104 <= CLASS_ORIGIN_SYMBOL)) || LA308_104 == CODE_SYMBOL || ((LA308_104 >= COLUMN_NAME_SYMBOL) && (LA308_104 <= DATETIME_SYMBOL)) || ((LA308_104 >= DEFAULT_AUTH_SYMBOL) && (LA308_104 <= GEOMETRY_SYMBOL)) || ((LA308_104 >= GRANTS_SYMBOL) && (LA308_104 <= HOSTS_SYMBOL)) || ((LA308_104 >= IDENTIFIED_SYMBOL) && (LA308_104 <= LEVEL_SYMBOL)) || ((LA308_104 >= LIST_SYMBOL) && (LA308_104 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA308_104 >= MAX_SIZE_SYMBOL) && (LA308_104 <= MESSAGE_TEXT_SYMBOL)) || LA308_104 == MIGRATE_SYMBOL || ((LA308_104 >= MIN_ROWS_SYMBOL) && (LA308_104 <= MODE_SYMBOL)) || ((LA308_104 >= MUTEX_SYMBOL) && (LA308_104 <= OFFSET_SYMBOL)) || ((LA308_104 >= ONE_SHOT_SYMBOL) && (LA308_104 <= PARTITIONS_SYMBOL)) || ((LA308_104 >= PHASE_SYMBOL) && (LA308_104 <= PLUGINS_SYMBOL)) || ((LA308_104 >= PRESERVE_SYMBOL) && (LA308_104 <= PROXY_SYMBOL)) || ((LA308_104 >= QUERY_SYMBOL) && (LA308_104 <= RETURNS_SYMBOL)) || ((LA308_104 >= ROLLUP_SYMBOL) && (LA308_104 <= ROWS_SYMBOL)) || LA308_104 == ROW_FORMAT_SYMBOL || ((LA308_104 >= RTREE_SYMBOL) && (LA308_104 <= SCHEMA_NAME_SYMBOL)) || ((LA308_104 >= SERIAL_SYMBOL) && (LA308_104 <= SHARE_SYMBOL)) || ((LA308_104 >= SLOW_SYMBOL) && (LA308_104 <= SNAPSHOT_SYMBOL)) || ((LA308_104 >= SOURCE_SYMBOL) && (LA308_104 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA308_104 >= SQL_THREAD_SYMBOL) && (LA308_104 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA308_104 >= SUBJECT_SYMBOL) && (LA308_104 <= TRIGGERS_SYMBOL)) || ((LA308_104 >= TYPES_SYMBOL) && (LA308_104 <= USER_RESOURCES_SYMBOL)) || ((LA308_104 >= USE_FRM_SYMBOL) && (LA308_104 <= WAIT_SYMBOL)) || LA308_104 == WORK_SYMBOL || ((LA308_104 >= X509_SYMBOL) && (LA308_104 <= XML_SYMBOL))))
                		    {
                		        alt308=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_SMALL_RESULT_SYMBOL:
                case STRAIGHT_JOIN_SYMBOL:
                	{
                		alt308=1;
                	}
                    break;
                case SQL_CACHE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA308_106 = LA(2);
                		    if ( (LA308_106 == DOT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == OPEN_PAR_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MOD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MINUS_OPERATOR || LA308_106 == PLUS_OPERATOR))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == NOT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == SOUNDS_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == IDENTIFIER))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == DATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == ASCII_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == BITWISE_NOT_OPERATOR || LA308_106 == INTERVAL_SYMBOL || LA308_106 == LOGICAL_NOT_OPERATOR || LA308_106 == NCHAR_TEXT || LA308_106 == NOT2_SYMBOL || LA308_106 == SINGLE_QUOTED_TEXT || LA308_106 == UNDERSCORE_CHARSET))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == DECIMAL_NUMBER || LA308_106 == FLOAT_NUMBER || LA308_106 == HEX_NUMBER || LA308_106 == INT_NUMBER || LA308_106 == LONG_NUMBER || LA308_106 == ULONGLONG_NUMBER))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == TIME_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == TIMESTAMP_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == DAY_SYMBOL || LA308_106 == FALSE_SYMBOL || LA308_106 == NULL2_SYMBOL || LA308_106 == NULL_SYMBOL || LA308_106 == TRUE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == BIN_NUMBER || LA308_106 == CHAR_SYMBOL || LA308_106 == CURRENT_USER_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == HOUR_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MINUTE_SYMBOL || LA308_106 == INSERT_SYMBOL || LA308_106 == LEFT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MONTH_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == SECOND_SYMBOL || LA308_106 == RIGHT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == USER_SYMBOL || LA308_106 == TRIM_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == YEAR_SYMBOL || LA308_106 == VALUES_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == ADDDATE_SYMBOL || LA308_106 == SUBDATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == GET_FORMAT_SYMBOL || LA308_106 == CURDATE_SYMBOL || LA308_106 == CURTIME_SYMBOL || LA308_106 == DATE_ADD_SYMBOL || LA308_106 == DATE_SUB_SYMBOL || LA308_106 == EXTRACT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (((LA308_106 >= TIMESTAMP_ADD_SYMBOL) && (LA308_106 <= TIMESTAMP_DIFF_SYMBOL)) || LA308_106 == NOW_SYMBOL || LA308_106 == POSITION_SYMBOL || LA308_106 == SUBSTRING_SYMBOL || LA308_106 == SYSDATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == COALESCE_SYMBOL || ((LA308_106 >= UTC_DATE_SYMBOL) && (LA308_106 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == CHARSET_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == FORMAT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == COLLATION_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MICROSECOND_SYMBOL || LA308_106 == DATABASE_SYMBOL || LA308_106 == IF_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == TRUNCATE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MULT_OPERATOR))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == PASSWORD_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == QUARTER_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == REVERSE_SYMBOL || ((LA308_106 >= REPEAT_SYMBOL) && (LA308_106 <= REPLACE_SYMBOL))))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == ROW_COUNT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == WEEK_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == CONTAINS_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == LINESTRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MULTIPOINT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == POINT_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == POLYGON_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == AVG_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == ACCOUNT_SYMBOL || ((LA308_106 >= ALWAYS_SYMBOL) && (LA308_106 <= CACHE_SYMBOL)) || ((LA308_106 >= CHECKSUM_SYMBOL) && (LA308_106 <= COMMIT_SYMBOL)) || ((LA308_106 >= DEALLOCATE_SYMBOL) && (LA308_106 <= FOLLOWS_SYMBOL)) || ((LA308_106 >= GROUP_REPLICATION_SYMBOL) && (LA308_106 <= STOP_SYMBOL)) || ((LA308_106 >= UNICODE_SYMBOL) && (LA308_106 <= XA_SYMBOL)) || LA308_106 == SHUTDOWN_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == ROW_SYMBOL || ((LA308_106 >= AT_AT_SIGN_SYMBOL) && (LA308_106 <= AT_TEXT_SUFFIX)) || ((LA308_106 >= BIT_AND_SYMBOL) && (LA308_106 <= BIT_XOR_SYMBOL)) || LA308_106 == COUNT_SYMBOL || LA308_106 == EXISTS_SYMBOL || LA308_106 == GROUP_CONCAT_SYMBOL || LA308_106 == MAX_SYMBOL || LA308_106 == MIN_SYMBOL || LA308_106 == PARAM_MARKER || LA308_106 == STDDEV_SAMP_SYMBOL || LA308_106 == STD_SYMBOL || LA308_106 == SUM_SYMBOL || LA308_106 == VARIANCE_SYMBOL || LA308_106 == VAR_SAMP_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == SQL_BUFFER_RESULT_SYMBOL || LA308_106 == BINARY_SYMBOL || ((LA308_106 >= CASE_SYMBOL) && (LA308_106 <= CAST_SYMBOL)) || LA308_106 == CONVERT_SYMBOL || LA308_106 == MATCH_SYMBOL || LA308_106 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == SQL_NO_CACHE_SYMBOL || LA308_106 == ALL_SYMBOL || LA308_106 == DISTINCT_SYMBOL || LA308_106 == HIGH_PRIORITY_SYMBOL || ((LA308_106 >= SQL_BIG_RESULT_SYMBOL) && (LA308_106 <= SQL_SMALL_RESULT_SYMBOL)) || LA308_106 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == SQL_CACHE_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == MAX_STATEMENT_TIME_SYMBOL))
                		    {
                		        alt308=1;
                		    }
                		    else if ( (LA308_106 == ACTION_SYMBOL || ((LA308_106 >= AFTER_SYMBOL) && (LA308_106 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA308_106 >= BINLOG_SYMBOL) && (LA308_106 <= CLASS_ORIGIN_SYMBOL)) || LA308_106 == CODE_SYMBOL || ((LA308_106 >= COLUMN_NAME_SYMBOL) && (LA308_106 <= DATETIME_SYMBOL)) || ((LA308_106 >= DEFAULT_AUTH_SYMBOL) && (LA308_106 <= GEOMETRY_SYMBOL)) || ((LA308_106 >= GRANTS_SYMBOL) && (LA308_106 <= HOSTS_SYMBOL)) || ((LA308_106 >= IDENTIFIED_SYMBOL) && (LA308_106 <= LEVEL_SYMBOL)) || ((LA308_106 >= LIST_SYMBOL) && (LA308_106 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA308_106 >= MAX_SIZE_SYMBOL) && (LA308_106 <= MESSAGE_TEXT_SYMBOL)) || LA308_106 == MIGRATE_SYMBOL || ((LA308_106 >= MIN_ROWS_SYMBOL) && (LA308_106 <= MODE_SYMBOL)) || ((LA308_106 >= MUTEX_SYMBOL) && (LA308_106 <= OFFSET_SYMBOL)) || ((LA308_106 >= ONE_SHOT_SYMBOL) && (LA308_106 <= PARTITIONS_SYMBOL)) || ((LA308_106 >= PHASE_SYMBOL) && (LA308_106 <= PLUGINS_SYMBOL)) || ((LA308_106 >= PRESERVE_SYMBOL) && (LA308_106 <= PROXY_SYMBOL)) || ((LA308_106 >= QUERY_SYMBOL) && (LA308_106 <= RETURNS_SYMBOL)) || ((LA308_106 >= ROLLUP_SYMBOL) && (LA308_106 <= ROWS_SYMBOL)) || LA308_106 == ROW_FORMAT_SYMBOL || ((LA308_106 >= RTREE_SYMBOL) && (LA308_106 <= SCHEMA_NAME_SYMBOL)) || ((LA308_106 >= SERIAL_SYMBOL) && (LA308_106 <= SHARE_SYMBOL)) || ((LA308_106 >= SLOW_SYMBOL) && (LA308_106 <= SNAPSHOT_SYMBOL)) || ((LA308_106 >= SOURCE_SYMBOL) && (LA308_106 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA308_106 >= SQL_THREAD_SYMBOL) && (LA308_106 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA308_106 >= SUBJECT_SYMBOL) && (LA308_106 <= TRIGGERS_SYMBOL)) || ((LA308_106 >= TYPES_SYMBOL) && (LA308_106 <= USER_RESOURCES_SYMBOL)) || ((LA308_106 >= USE_FRM_SYMBOL) && (LA308_106 <= WAIT_SYMBOL)) || LA308_106 == WORK_SYMBOL || ((LA308_106 >= X509_SYMBOL) && (LA308_106 <= XML_SYMBOL))))
                		    {
                		        alt308=1;
                		    }

                		}
                	}
                    break;
                case MAX_STATEMENT_TIME_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case EQUAL_OPERATOR:
                			{
                				{
                				   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                				    */
                				    int LA308_532 = LA(3);
                				    if ( ((SERVER_VERSION >= 50704 && SERVER_VERSION < 50708)))
                				    {
                				        alt308=1;
                				    }

                				}
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt308)
                {
            	case 1:
            	    // MySQL.g:1153:32: select_option
            	    {
            	        FOLLOWPUSH(FOLLOW_select_option_in_select_part24920);
            	        select_option904=select_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_option904.tree);

            	    }
            	    break;

            	default:
            	    goto loop308;	/* break out of the loop */
            	    break;
                }
            }
            loop308: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_select_item_list_in_select_part24924);
            select_item_list905=select_item_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleselect_part2Ex;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list905.tree);

            // MySQL.g:1154:3: ( ( order_by_clause )? ( limit_clause )? | into_clause ( select_from )? | select_from ( into_clause )? )
            {
                int alt313=3;
                switch ( LA(1) )
                {
                case EOF:
                case CLOSE_PAR_SYMBOL:
                case FOR_SYMBOL:
                case LIMIT_SYMBOL:
                case LOCK_SYMBOL:
                case ON_SYMBOL:
                case ORDER_SYMBOL:
                case SEMICOLON_SYMBOL:
                case UNION_SYMBOL:
                case WITH_SYMBOL:
                	{
                		alt313=1;
                	}
                    break;
                case INTO_SYMBOL:
                	{
                		alt313=2;
                	}
                    break;
                case FROM_SYMBOL:
                	{
                		alt313=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 313;
                    EXCEPTION->state        = 0;


                    goto ruleselect_part2Ex;

                }

                switch (alt313)
                {
            	case 1:
            	    // MySQL.g:1155:4: ( order_by_clause )? ( limit_clause )?
            	    {
            	        // MySQL.g:1155:4: ( order_by_clause )?
            	        {
            	            int alt309=2;
            	            switch ( LA(1) )
            	            {
            	                case ORDER_SYMBOL:
            	                	{
            	                		alt309=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt309)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1155:4: order_by_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_select_part24933);
            	        	        order_by_clause906=order_by_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_part2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause906.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1155:21: ( limit_clause )?
            	        {
            	            int alt310=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt310=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt310)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1155:21: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_select_part24936);
            	        	        limit_clause907=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_part2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause907.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1156:6: into_clause ( select_from )?
            	    {
            	        FOLLOWPUSH(FOLLOW_into_clause_in_select_part24944);
            	        into_clause908=into_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, into_clause908.tree);

            	        // MySQL.g:1156:18: ( select_from )?
            	        {
            	            int alt311=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt311=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt311)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1156:18: select_from
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_select_from_in_select_part24946);
            	        	        select_from909=select_from(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_part2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_from909.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1157:6: select_from ( into_clause )?
            	    {
            	        FOLLOWPUSH(FOLLOW_select_from_in_select_part24954);
            	        select_from910=select_from(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_from910.tree);

            	        // MySQL.g:1157:18: ( into_clause )?
            	        {
            	            int alt312=2;
            	            switch ( LA(1) )
            	            {
            	                case INTO_SYMBOL:
            	                	{
            	                		alt312=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt312)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1157:18: into_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_into_clause_in_select_part24956);
            	        	        into_clause911=into_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_part2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, into_clause911.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1159:3: ( select_lock_type )?
            {
                int alt314=2;
                switch ( LA(1) )
                {
                    case FOR_SYMBOL:
                    case LOCK_SYMBOL:
                    	{
                    		alt314=1;
                    	}
                        break;
                }

                switch (alt314)
                {
            	case 1:
            	    // MySQL.g:1159:3: select_lock_type
            	    {
            	        FOLLOWPUSH(FOLLOW_select_lock_type_in_select_part24965);
            	        select_lock_type912=select_lock_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_lock_type912.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 table_expression
 * MySQL.g:1162:1: table_expression : ( from_clause )? ( options {greedy=true; } : where_clause )? ( options {greedy=true; } : group_by_clause )? ( options {greedy=true; } : having_clause )? ( options {greedy=true; } : order_by_clause )? ( options {greedy=true; } : limit_clause )? ( options {greedy=true; } : procedure_analyse_clause )? ( options {greedy=true; } : select_lock_type )? ;
 */
static MySQLParser_table_expression_return
table_expression(pMySQLParser ctx)
{
    MySQLParser_table_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_from_clause_return from_clause913;
    #undef	RETURN_TYPE_from_clause913
    #define	RETURN_TYPE_from_clause913 MySQLParser_from_clause_return

    MySQLParser_where_clause_return where_clause914;
    #undef	RETURN_TYPE_where_clause914
    #define	RETURN_TYPE_where_clause914 MySQLParser_where_clause_return

    MySQLParser_group_by_clause_return group_by_clause915;
    #undef	RETURN_TYPE_group_by_clause915
    #define	RETURN_TYPE_group_by_clause915 MySQLParser_group_by_clause_return

    MySQLParser_having_clause_return having_clause916;
    #undef	RETURN_TYPE_having_clause916
    #define	RETURN_TYPE_having_clause916 MySQLParser_having_clause_return

    MySQLParser_order_by_clause_return order_by_clause917;
    #undef	RETURN_TYPE_order_by_clause917
    #define	RETURN_TYPE_order_by_clause917 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause918;
    #undef	RETURN_TYPE_limit_clause918
    #define	RETURN_TYPE_limit_clause918 MySQLParser_limit_clause_return

    MySQLParser_procedure_analyse_clause_return procedure_analyse_clause919;
    #undef	RETURN_TYPE_procedure_analyse_clause919
    #define	RETURN_TYPE_procedure_analyse_clause919 MySQLParser_procedure_analyse_clause_return

    MySQLParser_select_lock_type_return select_lock_type920;
    #undef	RETURN_TYPE_select_lock_type920
    #define	RETURN_TYPE_select_lock_type920 MySQLParser_select_lock_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    from_clause913.tree = NULL;

    where_clause914.tree = NULL;

    group_by_clause915.tree = NULL;

    having_clause916.tree = NULL;

    order_by_clause917.tree = NULL;

    limit_clause918.tree = NULL;

    procedure_analyse_clause919.tree = NULL;

    select_lock_type920.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1162:17: ( ( from_clause )? ( options {greedy=true; } : where_clause )? ( options {greedy=true; } : group_by_clause )? ( options {greedy=true; } : having_clause )? ( options {greedy=true; } : order_by_clause )? ( options {greedy=true; } : limit_clause )? ( options {greedy=true; } : procedure_analyse_clause )? ( options {greedy=true; } : select_lock_type )? )
        // MySQL.g:1163:2: ( from_clause )? ( options {greedy=true; } : where_clause )? ( options {greedy=true; } : group_by_clause )? ( options {greedy=true; } : having_clause )? ( options {greedy=true; } : order_by_clause )? ( options {greedy=true; } : limit_clause )? ( options {greedy=true; } : procedure_analyse_clause )? ( options {greedy=true; } : select_lock_type )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1163:2: ( from_clause )?
            {
                int alt315=2;
                switch ( LA(1) )
                {
                    case FROM_SYMBOL:
                    	{
                    		alt315=1;
                    	}
                        break;
                }

                switch (alt315)
                {
            	case 1:
            	    // MySQL.g:1163:2: from_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_from_clause_in_table_expression4975);
            	        from_clause913=from_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, from_clause913.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1164:2: ( options {greedy=true; } : where_clause )?
            {
                int alt316=2;
                switch ( LA(1) )
                {
                    case WHERE_SYMBOL:
                    	{
                    		alt316=1;
                    	}
                        break;
                }

                switch (alt316)
                {
            	case 1:
            	    // MySQL.g:1164:32: where_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_where_clause_in_table_expression4993);
            	        where_clause914=where_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause914.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1165:2: ( options {greedy=true; } : group_by_clause )?
            {
                int alt317=2;
                switch ( LA(1) )
                {
                    case GROUP_SYMBOL:
                    	{
                    		alt317=1;
                    	}
                        break;
                }

                switch (alt317)
                {
            	case 1:
            	    // MySQL.g:1165:32: group_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_group_by_clause_in_table_expression5012);
            	        group_by_clause915=group_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, group_by_clause915.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1166:2: ( options {greedy=true; } : having_clause )?
            {
                int alt318=2;
                switch ( LA(1) )
                {
                    case HAVING_SYMBOL:
                    	{
                    		alt318=1;
                    	}
                        break;
                }

                switch (alt318)
                {
            	case 1:
            	    // MySQL.g:1166:32: having_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_having_clause_in_table_expression5031);
            	        having_clause916=having_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, having_clause916.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1167:2: ( options {greedy=true; } : order_by_clause )?
            {
                int alt319=2;
                switch ( LA(1) )
                {
                    case ORDER_SYMBOL:
                    	{
                    		alt319=1;
                    	}
                        break;
                }

                switch (alt319)
                {
            	case 1:
            	    // MySQL.g:1167:32: order_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_order_by_clause_in_table_expression5050);
            	        order_by_clause917=order_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause917.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1168:2: ( options {greedy=true; } : limit_clause )?
            {
                int alt320=2;
                switch ( LA(1) )
                {
                    case LIMIT_SYMBOL:
                    	{
                    		alt320=1;
                    	}
                        break;
                }

                switch (alt320)
                {
            	case 1:
            	    // MySQL.g:1168:32: limit_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_limit_clause_in_table_expression5069);
            	        limit_clause918=limit_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause918.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1169:2: ( options {greedy=true; } : procedure_analyse_clause )?
            {
                int alt321=2;
                switch ( LA(1) )
                {
                    case PROCEDURE_SYMBOL:
                    	{
                    		alt321=1;
                    	}
                        break;
                }

                switch (alt321)
                {
            	case 1:
            	    // MySQL.g:1169:32: procedure_analyse_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_procedure_analyse_clause_in_table_expression5088);
            	        procedure_analyse_clause919=procedure_analyse_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_analyse_clause919.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1170:2: ( options {greedy=true; } : select_lock_type )?
            {
                int alt322=2;
                switch ( LA(1) )
                {
                    case FOR_SYMBOL:
                    	{
                    		alt322=1;
                    	}
                        break;
                    case LOCK_SYMBOL:
                    	{
                    		alt322=1;
                    	}
                        break;
                }

                switch (alt322)
                {
            	case 1:
            	    // MySQL.g:1170:32: select_lock_type
            	    {
            	        FOLLOWPUSH(FOLLOW_select_lock_type_in_table_expression5107);
            	        select_lock_type920=select_lock_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_lock_type920.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_expressionEx; /* Prevent compiler warnings */
    ruletable_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 table_expression */

/**
 * $ANTLR start subquery
 * MySQL.g:1173:1: subquery : OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL -> ^( SUBQUERY_TOKEN OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_subquery_return
subquery(pMySQLParser ctx)
{
    MySQLParser_subquery_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL921;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL923;
    MySQLParser_query_expression_body_return query_expression_body922;
    #undef	RETURN_TYPE_query_expression_body922
    #define	RETURN_TYPE_query_expression_body922 MySQLParser_query_expression_body_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL921_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL923_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_query_expression_body;
    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL921       = NULL;
    CLOSE_PAR_SYMBOL923       = NULL;
    query_expression_body922.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL921_tree   = NULL;
    CLOSE_PAR_SYMBOL923_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_query_expression_body   = NULL;
    #define CREATE_stream_query_expression_body  if (stream_query_expression_body == NULL) {stream_query_expression_body = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule query_expression_body"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1173:9: ( OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL -> ^( SUBQUERY_TOKEN OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL ) )
        // MySQL.g:1174:2: OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL921 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_subquery5119);
            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_SYMBOL921, NULL); }


            FOLLOWPUSH(FOLLOW_query_expression_body_in_subquery5121);
            query_expression_body922=query_expression_body(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesubqueryEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_query_expression_body; stream_query_expression_body->add(stream_query_expression_body, query_expression_body922.tree, NULL); }

            CLOSE_PAR_SYMBOL923 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_subquery5123);
            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_SYMBOL923, NULL); }


            /* AST REWRITE
             * elements          : OPEN_PAR_SYMBOL, query_expression_body, 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;
            	// 1175:3: -> ^( SUBQUERY_TOKEN OPEN_PAR_SYMBOL query_expression_body CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:1175:6: ^( SUBQUERY_TOKEN OPEN_PAR_SYMBOL query_expression_body 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_TOKEN, (pANTLR3_UINT8)"SUBQUERY_TOKEN")
            	        , 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_query_expression_body == NULL ? NULL : stream_query_expression_body->nextTree(stream_query_expression_body));

            	        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_query_expression_body != NULL) stream_query_expression_body->free(stream_query_expression_body);
    }


            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 query_expression_body
 * MySQL.g:1178:1: query_expression_body : query_specification ( UNION_SYMBOL union_option query_specification )* ;
 */
static MySQLParser_query_expression_body_return
query_expression_body(pMySQLParser ctx)
{
    MySQLParser_query_expression_body_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNION_SYMBOL925;
    MySQLParser_query_specification_return query_specification924;
    #undef	RETURN_TYPE_query_specification924
    #define	RETURN_TYPE_query_specification924 MySQLParser_query_specification_return

    MySQLParser_union_option_return union_option926;
    #undef	RETURN_TYPE_union_option926
    #define	RETURN_TYPE_union_option926 MySQLParser_union_option_return

    MySQLParser_query_specification_return query_specification927;
    #undef	RETURN_TYPE_query_specification927
    #define	RETURN_TYPE_query_specification927 MySQLParser_query_specification_return

    pANTLR3_BASE_TREE UNION_SYMBOL925_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNION_SYMBOL925       = NULL;
    query_specification924.tree = NULL;

    union_option926.tree = NULL;

    query_specification927.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNION_SYMBOL925_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1178:22: ( query_specification ( UNION_SYMBOL union_option query_specification )* )
        // MySQL.g:1179:2: query_specification ( UNION_SYMBOL union_option query_specification )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_query_specification_in_query_expression_body5146);
            query_specification924=query_specification(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulequery_expression_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_specification924.tree);

            // MySQL.g:1179:22: ( UNION_SYMBOL union_option query_specification )*

            for (;;)
            {
                int alt323=2;
                switch ( LA(1) )
                {
                case UNION_SYMBOL:
                	{
                		alt323=1;
                	}
                    break;

                }

                switch (alt323)
                {
            	case 1:
            	    // MySQL.g:1179:23: UNION_SYMBOL union_option query_specification
            	    {
            	        UNION_SYMBOL925 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_query_expression_body5149);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequery_expression_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UNION_SYMBOL925_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL925));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UNION_SYMBOL925_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_union_option_in_query_expression_body5151);
            	        union_option926=union_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequery_expression_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_option926.tree);

            	        FOLLOWPUSH(FOLLOW_query_specification_in_query_expression_body5153);
            	        query_specification927=query_specification(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequery_expression_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_specification927.tree);

            	    }
            	    break;

            	default:
            	    goto loop323;	/* break out of the loop */
            	    break;
                }
            }
            loop323: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulequery_expression_bodyEx; /* Prevent compiler warnings */
    rulequery_expression_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 query_expression_body */

/**
 * $ANTLR start select_part2_derived
 * MySQL.g:1182:1: select_part2_derived : ( options {greedy=true; } : query_spec_option |{...}? ( SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL ) )* select_item_list ;
 */
static MySQLParser_select_part2_derived_return
select_part2_derived(pMySQLParser ctx)
{
    MySQLParser_select_part2_derived_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set929;
    MySQLParser_query_spec_option_return query_spec_option928;
    #undef	RETURN_TYPE_query_spec_option928
    #define	RETURN_TYPE_query_spec_option928 MySQLParser_query_spec_option_return

    MySQLParser_select_item_list_return select_item_list930;
    #undef	RETURN_TYPE_select_item_list930
    #define	RETURN_TYPE_select_item_list930 MySQLParser_select_item_list_return

    pANTLR3_BASE_TREE set929_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set929       = NULL;
    query_spec_option928.tree = NULL;

    select_item_list930.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set929_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1182:21: ( ( options {greedy=true; } : query_spec_option |{...}? ( SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL ) )* select_item_list )
        // MySQL.g:1183:2: ( options {greedy=true; } : query_spec_option |{...}? ( SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL ) )* select_item_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1183:2: ( options {greedy=true; } : query_spec_option |{...}? ( SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL ) )*

            for (;;)
            {
                int alt324=3;
                switch ( LA(1) )
                {
                case SQL_BUFFER_RESULT_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA324_96 = LA(2);
                		    if ( (LA324_96 == DOT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == OPEN_PAR_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MOD_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MINUS_OPERATOR || LA324_96 == PLUS_OPERATOR))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == NOT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == SOUNDS_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == IDENTIFIER))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == DATE_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == ASCII_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == BITWISE_NOT_OPERATOR || LA324_96 == INTERVAL_SYMBOL || LA324_96 == LOGICAL_NOT_OPERATOR || LA324_96 == NCHAR_TEXT || LA324_96 == NOT2_SYMBOL || LA324_96 == SINGLE_QUOTED_TEXT || LA324_96 == UNDERSCORE_CHARSET))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == DECIMAL_NUMBER || LA324_96 == FLOAT_NUMBER || LA324_96 == HEX_NUMBER || LA324_96 == INT_NUMBER || LA324_96 == LONG_NUMBER || LA324_96 == ULONGLONG_NUMBER))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == TIME_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == TIMESTAMP_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == DAY_SYMBOL || LA324_96 == FALSE_SYMBOL || LA324_96 == NULL2_SYMBOL || LA324_96 == NULL_SYMBOL || LA324_96 == TRUE_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == BIN_NUMBER || LA324_96 == CHAR_SYMBOL || LA324_96 == CURRENT_USER_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == HOUR_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MINUTE_SYMBOL || LA324_96 == INSERT_SYMBOL || LA324_96 == LEFT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MONTH_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == SECOND_SYMBOL || LA324_96 == RIGHT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == USER_SYMBOL || LA324_96 == TRIM_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == YEAR_SYMBOL || LA324_96 == VALUES_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == ADDDATE_SYMBOL || LA324_96 == SUBDATE_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == GET_FORMAT_SYMBOL || LA324_96 == CURDATE_SYMBOL || LA324_96 == CURTIME_SYMBOL || LA324_96 == DATE_ADD_SYMBOL || LA324_96 == DATE_SUB_SYMBOL || LA324_96 == EXTRACT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (((LA324_96 >= TIMESTAMP_ADD_SYMBOL) && (LA324_96 <= TIMESTAMP_DIFF_SYMBOL)) || LA324_96 == NOW_SYMBOL || LA324_96 == POSITION_SYMBOL || LA324_96 == SUBSTRING_SYMBOL || LA324_96 == SYSDATE_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == COALESCE_SYMBOL || ((LA324_96 >= UTC_DATE_SYMBOL) && (LA324_96 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == CHARSET_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == FORMAT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == COLLATION_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MICROSECOND_SYMBOL || LA324_96 == DATABASE_SYMBOL || LA324_96 == IF_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == TRUNCATE_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == OLD_PASSWORD_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MULT_OPERATOR))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == PASSWORD_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == QUARTER_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == REVERSE_SYMBOL || ((LA324_96 >= REPEAT_SYMBOL) && (LA324_96 <= REPLACE_SYMBOL))))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == ROW_COUNT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == WEEK_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == CONTAINS_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == LINESTRING_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MULTIPOINT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == POINT_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == POLYGON_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == AVG_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == ACCOUNT_SYMBOL || ((LA324_96 >= ALWAYS_SYMBOL) && (LA324_96 <= CACHE_SYMBOL)) || ((LA324_96 >= CHECKSUM_SYMBOL) && (LA324_96 <= COMMIT_SYMBOL)) || ((LA324_96 >= DEALLOCATE_SYMBOL) && (LA324_96 <= FOLLOWS_SYMBOL)) || ((LA324_96 >= GROUP_REPLICATION_SYMBOL) && (LA324_96 <= STOP_SYMBOL)) || ((LA324_96 >= UNICODE_SYMBOL) && (LA324_96 <= XA_SYMBOL)) || LA324_96 == SHUTDOWN_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == ROW_SYMBOL || ((LA324_96 >= AT_AT_SIGN_SYMBOL) && (LA324_96 <= AT_TEXT_SUFFIX)) || ((LA324_96 >= BIT_AND_SYMBOL) && (LA324_96 <= BIT_XOR_SYMBOL)) || LA324_96 == COUNT_SYMBOL || LA324_96 == EXISTS_SYMBOL || LA324_96 == GROUP_CONCAT_SYMBOL || LA324_96 == MAX_SYMBOL || LA324_96 == MIN_SYMBOL || LA324_96 == PARAM_MARKER || LA324_96 == STDDEV_SAMP_SYMBOL || LA324_96 == STD_SYMBOL || LA324_96 == SUM_SYMBOL || LA324_96 == VARIANCE_SYMBOL || LA324_96 == VAR_SAMP_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == SQL_BUFFER_RESULT_SYMBOL || LA324_96 == BINARY_SYMBOL || ((LA324_96 >= CASE_SYMBOL) && (LA324_96 <= CAST_SYMBOL)) || LA324_96 == CONVERT_SYMBOL || LA324_96 == MATCH_SYMBOL || LA324_96 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == SQL_CACHE_SYMBOL || LA324_96 == SQL_NO_CACHE_SYMBOL || LA324_96 == ALL_SYMBOL || LA324_96 == DISTINCT_SYMBOL || LA324_96 == HIGH_PRIORITY_SYMBOL || ((LA324_96 >= SQL_BIG_RESULT_SYMBOL) && (LA324_96 <= SQL_SMALL_RESULT_SYMBOL)) || LA324_96 == STRAIGHT_JOIN_SYMBOL))
                		    {
                		        alt324=1;
                		    }
                		    else if ( (LA324_96 == ACTION_SYMBOL || ((LA324_96 >= AFTER_SYMBOL) && (LA324_96 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA324_96 >= BINLOG_SYMBOL) && (LA324_96 <= CLASS_ORIGIN_SYMBOL)) || LA324_96 == CODE_SYMBOL || ((LA324_96 >= COLUMN_NAME_SYMBOL) && (LA324_96 <= DATETIME_SYMBOL)) || ((LA324_96 >= DEFAULT_AUTH_SYMBOL) && (LA324_96 <= GEOMETRY_SYMBOL)) || ((LA324_96 >= GRANTS_SYMBOL) && (LA324_96 <= HOSTS_SYMBOL)) || ((LA324_96 >= IDENTIFIED_SYMBOL) && (LA324_96 <= LEVEL_SYMBOL)) || ((LA324_96 >= LIST_SYMBOL) && (LA324_96 <= MESSAGE_TEXT_SYMBOL)) || LA324_96 == MIGRATE_SYMBOL || ((LA324_96 >= MIN_ROWS_SYMBOL) && (LA324_96 <= MODE_SYMBOL)) || ((LA324_96 >= MUTEX_SYMBOL) && (LA324_96 <= OFFSET_SYMBOL)) || ((LA324_96 >= ONE_SHOT_SYMBOL) && (LA324_96 <= PARTITIONS_SYMBOL)) || ((LA324_96 >= PHASE_SYMBOL) && (LA324_96 <= PLUGINS_SYMBOL)) || ((LA324_96 >= PRESERVE_SYMBOL) && (LA324_96 <= PROXY_SYMBOL)) || ((LA324_96 >= QUERY_SYMBOL) && (LA324_96 <= RETURNS_SYMBOL)) || ((LA324_96 >= ROLLUP_SYMBOL) && (LA324_96 <= ROWS_SYMBOL)) || LA324_96 == ROW_FORMAT_SYMBOL || ((LA324_96 >= RTREE_SYMBOL) && (LA324_96 <= SCHEMA_NAME_SYMBOL)) || ((LA324_96 >= SERIAL_SYMBOL) && (LA324_96 <= SHARE_SYMBOL)) || ((LA324_96 >= SLOW_SYMBOL) && (LA324_96 <= SNAPSHOT_SYMBOL)) || ((LA324_96 >= SOURCE_SYMBOL) && (LA324_96 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA324_96 >= SQL_THREAD_SYMBOL) && (LA324_96 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA324_96 >= SUBJECT_SYMBOL) && (LA324_96 <= TRIGGERS_SYMBOL)) || ((LA324_96 >= TYPES_SYMBOL) && (LA324_96 <= USER_RESOURCES_SYMBOL)) || ((LA324_96 >= USE_FRM_SYMBOL) && (LA324_96 <= WAIT_SYMBOL)) || LA324_96 == WORK_SYMBOL || ((LA324_96 >= X509_SYMBOL) && (LA324_96 <= XML_SYMBOL))))
                		    {
                		        alt324=1;
                		    }

                		}
                	}
                    break;
                case SQL_CACHE_SYMBOL:
                case SQL_NO_CACHE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA324_104 = LA(2);
                		    if ( (LA324_104 == DOT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_245 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == OPEN_PAR_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_246 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MOD_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_251 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MINUS_OPERATOR || LA324_104 == PLUS_OPERATOR))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_252 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == NOT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_256 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == SOUNDS_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_261 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == IDENTIFIER))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_268 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == BACK_TICK_QUOTED_ID))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_269 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == DOUBLE_QUOTED_TEXT))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_270 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == DATE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_271 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ASCII_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_272 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == SINGLE_QUOTED_TEXT))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_273 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ALL_SYMBOL || ((LA324_104 >= AT_AT_SIGN_SYMBOL) && (LA324_104 <= AT_TEXT_SUFFIX)) || LA324_104 == BINARY_SYMBOL || LA324_104 == BITWISE_NOT_OPERATOR || ((LA324_104 >= BIT_AND_SYMBOL) && (LA324_104 <= BIT_XOR_SYMBOL)) || ((LA324_104 >= CASE_SYMBOL) && (LA324_104 <= CAST_SYMBOL)) || LA324_104 == CHAR_SYMBOL || ((LA324_104 >= CONVERT_SYMBOL) && (LA324_104 <= COUNT_SYMBOL)) || LA324_104 == CURDATE_SYMBOL || LA324_104 == CURRENT_USER_SYMBOL || LA324_104 == CURTIME_SYMBOL || LA324_104 == DATABASE_SYMBOL || LA324_104 == DATE_ADD_SYMBOL || LA324_104 == DATE_SUB_SYMBOL || LA324_104 == DECIMAL_NUMBER || LA324_104 == DISTINCT_SYMBOL || LA324_104 == EXISTS_SYMBOL || ((LA324_104 >= EXTRACT_SYMBOL) && (LA324_104 <= FALSE_SYMBOL)) || LA324_104 == FLOAT_NUMBER || LA324_104 == GROUP_CONCAT_SYMBOL || LA324_104 == HIGH_PRIORITY_SYMBOL || LA324_104 == IF_SYMBOL || LA324_104 == INSERT_SYMBOL || LA324_104 == INTERVAL_SYMBOL || LA324_104 == INT_NUMBER || LA324_104 == LEFT_SYMBOL || LA324_104 == LOGICAL_NOT_OPERATOR || LA324_104 == LONG_NUMBER || LA324_104 == MATCH_SYMBOL || LA324_104 == MAX_SYMBOL || LA324_104 == MIN_SYMBOL || LA324_104 == NCHAR_TEXT || LA324_104 == NOT2_SYMBOL || LA324_104 == NOW_SYMBOL || LA324_104 == NULL2_SYMBOL || LA324_104 == NULL_SYMBOL || LA324_104 == OPEN_CURLY_SYMBOL || LA324_104 == PARAM_MARKER || LA324_104 == POSITION_SYMBOL || ((LA324_104 >= REPEAT_SYMBOL) && (LA324_104 <= REPLACE_SYMBOL)) || LA324_104 == RIGHT_SYMBOL || ((LA324_104 >= SQL_BIG_RESULT_SYMBOL) && (LA324_104 <= SQL_SMALL_RESULT_SYMBOL)) || LA324_104 == STDDEV_SAMP_SYMBOL || LA324_104 == STD_SYMBOL || LA324_104 == STRAIGHT_JOIN_SYMBOL || LA324_104 == SUBSTRING_SYMBOL || ((LA324_104 >= SUM_SYMBOL) && (LA324_104 <= SYSDATE_SYMBOL)) || ((LA324_104 >= TRIM_SYMBOL) && (LA324_104 <= TRUE_SYMBOL)) || LA324_104 == ULONGLONG_NUMBER || LA324_104 == UNDERSCORE_CHARSET || ((LA324_104 >= UTC_DATE_SYMBOL) && (LA324_104 <= UTC_TIME_SYMBOL)) || LA324_104 == VALUES_SYMBOL || LA324_104 == VARIANCE_SYMBOL || LA324_104 == VAR_SAMP_SYMBOL))
                		    {
                		        alt324=2;
                		    }
                		    else if ( (LA324_104 == HEX_NUMBER))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_291 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == TIME_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_293 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == TIMESTAMP_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_294 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == DAY_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_295 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == BIN_NUMBER))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_298 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == HOUR_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_301 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MINUTE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_302 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MONTH_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_305 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == SECOND_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_306 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == USER_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_308 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == YEAR_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_310 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ADDDATE_SYMBOL || LA324_104 == SUBDATE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_312 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == GET_FORMAT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_313 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (((LA324_104 >= TIMESTAMP_ADD_SYMBOL) && (LA324_104 <= TIMESTAMP_DIFF_SYMBOL))))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_318 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == COALESCE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_323 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == CHARSET_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_327 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == FORMAT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_328 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == COLLATION_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_329 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MICROSECOND_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_330 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == TRUNCATE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_333 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == OLD_PASSWORD_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_334 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MULT_OPERATOR))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_335 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == PASSWORD_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_336 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == QUARTER_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_337 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == REVERSE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_338 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ROW_COUNT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_341 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == WEEK_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_342 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == CONTAINS_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_343 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == WEIGHT_STRING_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_344 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_345 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == LINESTRING_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_346 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MULTILINESTRING_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_347 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MULTIPOINT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_348 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == MULTIPOLYGON_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_349 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == POINT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_350 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == POLYGON_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_351 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == AVG_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_352 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ACCOUNT_SYMBOL || ((LA324_104 >= ALWAYS_SYMBOL) && (LA324_104 <= CACHE_SYMBOL)) || ((LA324_104 >= CHECKSUM_SYMBOL) && (LA324_104 <= COMMIT_SYMBOL)) || ((LA324_104 >= DEALLOCATE_SYMBOL) && (LA324_104 <= FOLLOWS_SYMBOL)) || ((LA324_104 >= GROUP_REPLICATION_SYMBOL) && (LA324_104 <= STOP_SYMBOL)) || ((LA324_104 >= UNICODE_SYMBOL) && (LA324_104 <= XA_SYMBOL)) || LA324_104 == SHUTDOWN_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_353 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ROW_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_354 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == SQL_BUFFER_RESULT_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_372 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == SQL_CACHE_SYMBOL || LA324_104 == SQL_NO_CACHE_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_380 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }
                		    else if ( (LA324_104 == ACTION_SYMBOL || ((LA324_104 >= AFTER_SYMBOL) && (LA324_104 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA324_104 >= BINLOG_SYMBOL) && (LA324_104 <= CLASS_ORIGIN_SYMBOL)) || LA324_104 == CODE_SYMBOL || ((LA324_104 >= COLUMN_NAME_SYMBOL) && (LA324_104 <= DATETIME_SYMBOL)) || ((LA324_104 >= DEFAULT_AUTH_SYMBOL) && (LA324_104 <= GEOMETRY_SYMBOL)) || ((LA324_104 >= GRANTS_SYMBOL) && (LA324_104 <= HOSTS_SYMBOL)) || ((LA324_104 >= IDENTIFIED_SYMBOL) && (LA324_104 <= LEVEL_SYMBOL)) || ((LA324_104 >= LIST_SYMBOL) && (LA324_104 <= MESSAGE_TEXT_SYMBOL)) || LA324_104 == MIGRATE_SYMBOL || ((LA324_104 >= MIN_ROWS_SYMBOL) && (LA324_104 <= MODE_SYMBOL)) || ((LA324_104 >= MUTEX_SYMBOL) && (LA324_104 <= OFFSET_SYMBOL)) || ((LA324_104 >= ONE_SHOT_SYMBOL) && (LA324_104 <= PARTITIONS_SYMBOL)) || ((LA324_104 >= PHASE_SYMBOL) && (LA324_104 <= PLUGINS_SYMBOL)) || ((LA324_104 >= PRESERVE_SYMBOL) && (LA324_104 <= PROXY_SYMBOL)) || ((LA324_104 >= QUERY_SYMBOL) && (LA324_104 <= RETURNS_SYMBOL)) || ((LA324_104 >= ROLLUP_SYMBOL) && (LA324_104 <= ROWS_SYMBOL)) || LA324_104 == ROW_FORMAT_SYMBOL || ((LA324_104 >= RTREE_SYMBOL) && (LA324_104 <= SCHEMA_NAME_SYMBOL)) || ((LA324_104 >= SERIAL_SYMBOL) && (LA324_104 <= SHARE_SYMBOL)) || ((LA324_104 >= SLOW_SYMBOL) && (LA324_104 <= SNAPSHOT_SYMBOL)) || ((LA324_104 >= SOURCE_SYMBOL) && (LA324_104 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA324_104 >= SQL_THREAD_SYMBOL) && (LA324_104 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA324_104 >= SUBJECT_SYMBOL) && (LA324_104 <= TRIGGERS_SYMBOL)) || ((LA324_104 >= TYPES_SYMBOL) && (LA324_104 <= USER_RESOURCES_SYMBOL)) || ((LA324_104 >= USE_FRM_SYMBOL) && (LA324_104 <= WAIT_SYMBOL)) || LA324_104 == WORK_SYMBOL || ((LA324_104 >= X509_SYMBOL) && (LA324_104 <= XML_SYMBOL))))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA324_382 = LA(3);
                		            if ( ((SERVER_VERSION <= 50100)))
                		            {
                		                alt324=2;
                		            }

                		        }
                		    }

                		}
                	}
                    break;
                case ALL_SYMBOL:
                case DISTINCT_SYMBOL:
                case HIGH_PRIORITY_SYMBOL:
                case SQL_BIG_RESULT_SYMBOL:
                case SQL_CALC_FOUND_ROWS_SYMBOL:
                case SQL_SMALL_RESULT_SYMBOL:
                case STRAIGHT_JOIN_SYMBOL:
                	{
                		alt324=1;
                	}
                    break;

                }

                switch (alt324)
                {
            	case 1:
            	    // MySQL.g:1184:3: query_spec_option
            	    {
            	        FOLLOWPUSH(FOLLOW_query_spec_option_in_select_part2_derived5181);
            	        query_spec_option928=query_spec_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_part2_derivedEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_spec_option928.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1185:5: {...}? ( SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL )
            	    {
            	        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 *)"select_part2_derived";


            	        }

            	        set929=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == SQL_CACHE_SYMBOL || LA(1) == SQL_NO_CACHE_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set929))
            	            );
            	            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 ruleselect_part2_derivedEx;
            	        }


            	    }
            	    break;

            	default:
            	    goto loop324;	/* break out of the loop */
            	    break;
                }
            }
            loop324: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_select_item_list_in_select_part2_derived5201);
            select_item_list930=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_list930.tree);

        }

    }

    // 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:1189:1: select_option : ( query_spec_option | SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL |{...}? MAX_STATEMENT_TIME_SYMBOL EQUAL_OPERATOR real_ulong_number );
 */
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_SYMBOL932;
    pANTLR3_COMMON_TOKEN    SQL_CACHE_SYMBOL933;
    pANTLR3_COMMON_TOKEN    MAX_STATEMENT_TIME_SYMBOL934;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR935;
    MySQLParser_query_spec_option_return query_spec_option931;
    #undef	RETURN_TYPE_query_spec_option931
    #define	RETURN_TYPE_query_spec_option931 MySQLParser_query_spec_option_return

    MySQLParser_real_ulong_number_return real_ulong_number936;
    #undef	RETURN_TYPE_real_ulong_number936
    #define	RETURN_TYPE_real_ulong_number936 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE SQL_NO_CACHE_SYMBOL932_tree;
    pANTLR3_BASE_TREE SQL_CACHE_SYMBOL933_tree;
    pANTLR3_BASE_TREE MAX_STATEMENT_TIME_SYMBOL934_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR935_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQL_NO_CACHE_SYMBOL932       = NULL;
    SQL_CACHE_SYMBOL933       = NULL;
    MAX_STATEMENT_TIME_SYMBOL934       = NULL;
    EQUAL_OPERATOR935       = NULL;
    query_spec_option931.tree = NULL;

    real_ulong_number936.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQL_NO_CACHE_SYMBOL932_tree   = NULL;
    SQL_CACHE_SYMBOL933_tree   = NULL;
    MAX_STATEMENT_TIME_SYMBOL934_tree   = NULL;
    EQUAL_OPERATOR935_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1189:14: ( query_spec_option | SQL_NO_CACHE_SYMBOL | SQL_CACHE_SYMBOL |{...}? MAX_STATEMENT_TIME_SYMBOL EQUAL_OPERATOR real_ulong_number )

            ANTLR3_UINT32 alt325;

            alt325=4;

            switch ( LA(1) )
            {
            case SQL_BUFFER_RESULT_SYMBOL:
            case ALL_SYMBOL:
            case DISTINCT_SYMBOL:
            case HIGH_PRIORITY_SYMBOL:
            case SQL_BIG_RESULT_SYMBOL:
            case SQL_CALC_FOUND_ROWS_SYMBOL:
            case SQL_SMALL_RESULT_SYMBOL:
            case STRAIGHT_JOIN_SYMBOL:
            	{
            		alt325=1;
            	}
                break;
            case SQL_NO_CACHE_SYMBOL:
            	{
            		alt325=2;
            	}
                break;
            case SQL_CACHE_SYMBOL:
            	{
            		alt325=3;
            	}
                break;
            case MAX_STATEMENT_TIME_SYMBOL:
            	{
            		alt325=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 325;
                EXCEPTION->state        = 0;


                goto ruleselect_optionEx;

            }

            switch (alt325)
            {
        	case 1:
        	    // MySQL.g:1190:2: query_spec_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_query_spec_option_in_select_option5210);
        	        query_spec_option931=query_spec_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_spec_option931.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1191:4: SQL_NO_CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_NO_CACHE_SYMBOL932 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_NO_CACHE_SYMBOL, &FOLLOW_SQL_NO_CACHE_SYMBOL_in_select_option5215);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_NO_CACHE_SYMBOL932_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_NO_CACHE_SYMBOL932));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_NO_CACHE_SYMBOL932_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1192:4: SQL_CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQL_CACHE_SYMBOL933 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_CACHE_SYMBOL, &FOLLOW_SQL_CACHE_SYMBOL_in_select_option5220);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQL_CACHE_SYMBOL933_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_CACHE_SYMBOL933));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_CACHE_SYMBOL933_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1193:4: {...}? MAX_STATEMENT_TIME_SYMBOL EQUAL_OPERATOR real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50704 && SERVER_VERSION < 50708)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50704 && SERVER_VERSION < 50708";
        	                EXCEPTION->ruleName	 = (void *)"select_option";


        	        }

        	        MAX_STATEMENT_TIME_SYMBOL934 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_STATEMENT_TIME_SYMBOL, &FOLLOW_MAX_STATEMENT_TIME_SYMBOL_in_select_option5227);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_STATEMENT_TIME_SYMBOL934_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_STATEMENT_TIME_SYMBOL934));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_STATEMENT_TIME_SYMBOL934_tree);
        	        }

        	        EQUAL_OPERATOR935 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_select_option5229);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR935_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR935));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR935_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_select_option5231);
        	        real_ulong_number936=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number936.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_spec_option
 * MySQL.g:1196:1: query_spec_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_spec_option_return
query_spec_option(pMySQLParser ctx)
{
    MySQLParser_query_spec_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set937;

    pANTLR3_BASE_TREE set937_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set937       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set937_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1196:18: ( ( 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));


            set937=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == SQL_BUFFER_RESULT_SYMBOL || LA(1) == ALL_SYMBOL || LA(1) == DISTINCT_SYMBOL || LA(1) == HIGH_PRIORITY_SYMBOL || ((LA(1) >= SQL_BIG_RESULT_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, set937))
                );
                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_spec_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulequery_spec_optionEx; /* Prevent compiler warnings */
    rulequery_spec_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_spec_option */

/**
 * $ANTLR start select_item_list
 * MySQL.g:1206:1: select_item_list : ( select_item | MULT_OPERATOR ) ( options {greedy=true; } : 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_OPERATOR939;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL940;
    MySQLParser_select_item_return select_item938;
    #undef	RETURN_TYPE_select_item938
    #define	RETURN_TYPE_select_item938 MySQLParser_select_item_return

    MySQLParser_select_item_return select_item941;
    #undef	RETURN_TYPE_select_item941
    #define	RETURN_TYPE_select_item941 MySQLParser_select_item_return

    pANTLR3_BASE_TREE MULT_OPERATOR939_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL940_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MULT_OPERATOR939       = NULL;
    COMMA_SYMBOL940       = NULL;
    select_item938.tree = NULL;

    select_item941.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MULT_OPERATOR939_tree   = NULL;
    COMMA_SYMBOL940_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1206:17: ( ( select_item | MULT_OPERATOR ) ( options {greedy=true; } : COMMA_SYMBOL select_item )* )
        // MySQL.g:1207:2: ( select_item | MULT_OPERATOR ) ( options {greedy=true; } : COMMA_SYMBOL select_item )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1207:2: ( select_item | MULT_OPERATOR )
            {
                int alt326=2;
                {
                    int LA326_0 = LA(1);
                    if ( (((LA326_0 >= ACCOUNT_SYMBOL) && (LA326_0 <= YEAR_SYMBOL)) || ((LA326_0 >= AT_AT_SIGN_SYMBOL) && (LA326_0 <= AT_TEXT_SUFFIX)) || LA326_0 == BACK_TICK_QUOTED_ID || ((LA326_0 >= BINARY_SYMBOL) && (LA326_0 <= BIN_NUMBER)) || LA326_0 == BITWISE_NOT_OPERATOR || ((LA326_0 >= BIT_AND_SYMBOL) && (LA326_0 <= BIT_XOR_SYMBOL)) || ((LA326_0 >= CASE_SYMBOL) && (LA326_0 <= CAST_SYMBOL)) || LA326_0 == CHAR_SYMBOL || ((LA326_0 >= CONVERT_SYMBOL) && (LA326_0 <= COUNT_SYMBOL)) || LA326_0 == CURDATE_SYMBOL || LA326_0 == CURRENT_USER_SYMBOL || LA326_0 == CURTIME_SYMBOL || LA326_0 == DATABASE_SYMBOL || LA326_0 == DATE_ADD_SYMBOL || LA326_0 == DATE_SUB_SYMBOL || LA326_0 == DECIMAL_NUMBER || LA326_0 == DOT_SYMBOL || LA326_0 == DOUBLE_QUOTED_TEXT || LA326_0 == EXISTS_SYMBOL || ((LA326_0 >= EXTRACT_SYMBOL) && (LA326_0 <= FALSE_SYMBOL)) || LA326_0 == FLOAT_NUMBER || LA326_0 == GROUP_CONCAT_SYMBOL || LA326_0 == HEX_NUMBER || ((LA326_0 >= IDENTIFIER) && (LA326_0 <= IF_SYMBOL)) || LA326_0 == INSERT_SYMBOL || LA326_0 == INTERVAL_SYMBOL || LA326_0 == INT_NUMBER || LA326_0 == LEFT_SYMBOL || LA326_0 == LOGICAL_NOT_OPERATOR || LA326_0 == LONG_NUMBER || LA326_0 == MATCH_SYMBOL || LA326_0 == MAX_SYMBOL || LA326_0 == MINUS_OPERATOR || LA326_0 == MIN_SYMBOL || LA326_0 == MOD_SYMBOL || LA326_0 == NCHAR_TEXT || LA326_0 == NOT2_SYMBOL || ((LA326_0 >= NOT_SYMBOL) && (LA326_0 <= NOW_SYMBOL)) || LA326_0 == NULL2_SYMBOL || LA326_0 == NULL_SYMBOL || ((LA326_0 >= OPEN_CURLY_SYMBOL) && (LA326_0 <= OPEN_PAR_SYMBOL)) || LA326_0 == PARAM_MARKER || ((LA326_0 >= PLUS_OPERATOR) && (LA326_0 <= POSITION_SYMBOL)) || ((LA326_0 >= REPEAT_SYMBOL) && (LA326_0 <= REPLACE_SYMBOL)) || LA326_0 == RIGHT_SYMBOL || LA326_0 == SINGLE_QUOTED_TEXT || LA326_0 == STDDEV_SAMP_SYMBOL || LA326_0 == STD_SYMBOL || LA326_0 == SUBSTRING_SYMBOL || ((LA326_0 >= SUM_SYMBOL) && (LA326_0 <= SYSDATE_SYMBOL)) || ((LA326_0 >= TRIM_SYMBOL) && (LA326_0 <= TRUE_SYMBOL)) || LA326_0 == ULONGLONG_NUMBER || LA326_0 == UNDERSCORE_CHARSET || ((LA326_0 >= UTC_DATE_SYMBOL) && (LA326_0 <= UTC_TIME_SYMBOL)) || LA326_0 == VALUES_SYMBOL || LA326_0 == VARIANCE_SYMBOL || LA326_0 == VAR_SAMP_SYMBOL))
                    {
                        alt326=1;
                    }
                    else if ( (LA326_0 == MULT_OPERATOR))
                    {
                        alt326=2;
                    }
                    else
                    {
                        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 ruleselect_item_listEx;

                    }
                }
                switch (alt326)
                {
            	case 1:
            	    // MySQL.g:1207:3: select_item
            	    {
            	        FOLLOWPUSH(FOLLOW_select_item_in_select_item_list5286);
            	        select_item938=select_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item938.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1207:17: MULT_OPERATOR
            	    {
            	        MULT_OPERATOR939 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_select_item_list5290);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR939_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR939));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR939_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1207:32: ( options {greedy=true; } : COMMA_SYMBOL select_item )*

            for (;;)
            {
                int alt327=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA327_22 = LA(2);
                		    if ( (LA327_22 == OPEN_PAR_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == IDENTIFIER))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == DATE_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == ASCII_SYMBOL || LA327_22 == BITWISE_NOT_OPERATOR || LA327_22 == DECIMAL_NUMBER || LA327_22 == FLOAT_NUMBER || LA327_22 == INTERVAL_SYMBOL || LA327_22 == INT_NUMBER || LA327_22 == LOGICAL_NOT_OPERATOR || LA327_22 == LONG_NUMBER || LA327_22 == MINUS_OPERATOR || LA327_22 == NCHAR_TEXT || LA327_22 == NOT2_SYMBOL || LA327_22 == NOT_SYMBOL || LA327_22 == PLUS_OPERATOR || LA327_22 == SINGLE_QUOTED_TEXT || LA327_22 == ULONGLONG_NUMBER || LA327_22 == UNDERSCORE_CHARSET))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == DOT_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == TIME_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == TIMESTAMP_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == DAY_SYMBOL || LA327_22 == BIN_NUMBER || LA327_22 == CHAR_SYMBOL || LA327_22 == CURRENT_USER_SYMBOL || LA327_22 == FALSE_SYMBOL || LA327_22 == HEX_NUMBER || LA327_22 == NULL2_SYMBOL || LA327_22 == NULL_SYMBOL || LA327_22 == TRUE_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == HOUR_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == MINUTE_SYMBOL || LA327_22 == INSERT_SYMBOL || LA327_22 == LEFT_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == MONTH_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == SECOND_SYMBOL || LA327_22 == RIGHT_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == USER_SYMBOL || LA327_22 == TRIM_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == YEAR_SYMBOL || LA327_22 == VALUES_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == ADDDATE_SYMBOL || LA327_22 == SUBDATE_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == GET_FORMAT_SYMBOL || LA327_22 == CURDATE_SYMBOL || LA327_22 == CURTIME_SYMBOL || LA327_22 == DATE_ADD_SYMBOL || LA327_22 == DATE_SUB_SYMBOL || LA327_22 == EXTRACT_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (((LA327_22 >= TIMESTAMP_ADD_SYMBOL) && (LA327_22 <= TIMESTAMP_DIFF_SYMBOL)) || LA327_22 == NOW_SYMBOL || LA327_22 == POSITION_SYMBOL || LA327_22 == SUBSTRING_SYMBOL || LA327_22 == SYSDATE_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == COALESCE_SYMBOL || ((LA327_22 >= UTC_DATE_SYMBOL) && (LA327_22 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == CHARSET_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == FORMAT_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == COLLATION_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == MICROSECOND_SYMBOL || LA327_22 == DATABASE_SYMBOL || LA327_22 == IF_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == TRUNCATE_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == OLD_PASSWORD_SYMBOL || LA327_22 == MOD_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == PASSWORD_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == QUARTER_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == REVERSE_SYMBOL || ((LA327_22 >= REPEAT_SYMBOL) && (LA327_22 <= REPLACE_SYMBOL))))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == ROW_COUNT_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == WEEK_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == CONTAINS_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == LINESTRING_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == MULTIPOINT_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == POINT_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == POLYGON_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == AVG_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == ACCOUNT_SYMBOL || ((LA327_22 >= ALWAYS_SYMBOL) && (LA327_22 <= CACHE_SYMBOL)) || ((LA327_22 >= CHECKSUM_SYMBOL) && (LA327_22 <= COMMIT_SYMBOL)) || ((LA327_22 >= DEALLOCATE_SYMBOL) && (LA327_22 <= FOLLOWS_SYMBOL)) || ((LA327_22 >= GROUP_REPLICATION_SYMBOL) && (LA327_22 <= STOP_SYMBOL)) || ((LA327_22 >= UNICODE_SYMBOL) && (LA327_22 <= XA_SYMBOL)) || LA327_22 == SHUTDOWN_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == ROW_SYMBOL || ((LA327_22 >= AT_AT_SIGN_SYMBOL) && (LA327_22 <= AT_TEXT_SUFFIX)) || ((LA327_22 >= BIT_AND_SYMBOL) && (LA327_22 <= BIT_XOR_SYMBOL)) || LA327_22 == COUNT_SYMBOL || LA327_22 == EXISTS_SYMBOL || LA327_22 == GROUP_CONCAT_SYMBOL || LA327_22 == MAX_SYMBOL || LA327_22 == MIN_SYMBOL || LA327_22 == PARAM_MARKER || LA327_22 == STDDEV_SAMP_SYMBOL || LA327_22 == STD_SYMBOL || LA327_22 == SUM_SYMBOL || LA327_22 == VARIANCE_SYMBOL || LA327_22 == VAR_SAMP_SYMBOL))
                		    {
                		        alt327=1;
                		    }
                		    else if ( (LA327_22 == ACTION_SYMBOL || ((LA327_22 >= AFTER_SYMBOL) && (LA327_22 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA327_22 >= BINLOG_SYMBOL) && (LA327_22 <= CLASS_ORIGIN_SYMBOL)) || LA327_22 == CODE_SYMBOL || ((LA327_22 >= COLUMN_NAME_SYMBOL) && (LA327_22 <= DATETIME_SYMBOL)) || ((LA327_22 >= DEFAULT_AUTH_SYMBOL) && (LA327_22 <= GEOMETRY_SYMBOL)) || ((LA327_22 >= GRANTS_SYMBOL) && (LA327_22 <= HOSTS_SYMBOL)) || ((LA327_22 >= IDENTIFIED_SYMBOL) && (LA327_22 <= LEVEL_SYMBOL)) || ((LA327_22 >= LIST_SYMBOL) && (LA327_22 <= MESSAGE_TEXT_SYMBOL)) || LA327_22 == MIGRATE_SYMBOL || ((LA327_22 >= MIN_ROWS_SYMBOL) && (LA327_22 <= MODE_SYMBOL)) || ((LA327_22 >= MUTEX_SYMBOL) && (LA327_22 <= OFFSET_SYMBOL)) || ((LA327_22 >= ONE_SHOT_SYMBOL) && (LA327_22 <= PARTITIONS_SYMBOL)) || ((LA327_22 >= PHASE_SYMBOL) && (LA327_22 <= PLUGINS_SYMBOL)) || ((LA327_22 >= PRESERVE_SYMBOL) && (LA327_22 <= PROXY_SYMBOL)) || ((LA327_22 >= QUERY_SYMBOL) && (LA327_22 <= RETURNS_SYMBOL)) || ((LA327_22 >= ROLLUP_SYMBOL) && (LA327_22 <= ROWS_SYMBOL)) || LA327_22 == ROW_FORMAT_SYMBOL || ((LA327_22 >= RTREE_SYMBOL) && (LA327_22 <= SCHEMA_NAME_SYMBOL)) || ((LA327_22 >= SERIAL_SYMBOL) && (LA327_22 <= SHARE_SYMBOL)) || ((LA327_22 >= SLOW_SYMBOL) && (LA327_22 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA327_22 >= SUBJECT_SYMBOL) && (LA327_22 <= TRIGGERS_SYMBOL)) || ((LA327_22 >= TYPES_SYMBOL) && (LA327_22 <= USER_RESOURCES_SYMBOL)) || ((LA327_22 >= USE_FRM_SYMBOL) && (LA327_22 <= WAIT_SYMBOL)) || LA327_22 == WORK_SYMBOL || ((LA327_22 >= X509_SYMBOL) && (LA327_22 <= XML_SYMBOL)) || LA327_22 == BINARY_SYMBOL || ((LA327_22 >= CASE_SYMBOL) && (LA327_22 <= CAST_SYMBOL)) || LA327_22 == CONVERT_SYMBOL || LA327_22 == MATCH_SYMBOL))
                		    {
                		        alt327=1;
                		    }

                		}
                	}
                    break;

                }

                switch (alt327)
                {
            	case 1:
            	    // MySQL.g:1207:62: COMMA_SYMBOL select_item
            	    {
            	        COMMA_SYMBOL940 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_select_item_list5307);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL940_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL940));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL940_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_select_item_in_select_item_list5309);
            	        select_item941=select_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_item_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item941.tree);

            	    }
            	    break;

            	default:
            	    goto loop327;	/* break out of the loop */
            	    break;
                }
            }
            loop327: ; /* 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:1210:1: select_item options {k=5; } : ( table_wild -> ^( COLUMN_REF_TOKEN table_wild ) | expression ( select_alias )? -> ^( SELECT_EXPR_TOKEN expression ( select_alias )? ) );
 */
static MySQLParser_select_item_return
select_item(pMySQLParser ctx)
{
    MySQLParser_select_item_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_table_wild_return table_wild942;
    #undef	RETURN_TYPE_table_wild942
    #define	RETURN_TYPE_table_wild942 MySQLParser_table_wild_return

    MySQLParser_expression_return expression943;
    #undef	RETURN_TYPE_expression943
    #define	RETURN_TYPE_expression943 MySQLParser_expression_return

    MySQLParser_select_alias_return select_alias944;
    #undef	RETURN_TYPE_select_alias944
    #define	RETURN_TYPE_select_alias944 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_table_wild;
    /* Initialize rule variables
     */

    root_0 = NULL;

    table_wild942.tree = NULL;

    expression943.tree = NULL;

    select_alias944.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_table_wild   = NULL;
    #define CREATE_stream_table_wild  if (stream_table_wild == NULL) {stream_table_wild = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule table_wild"); }

    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1210:31: ( table_wild -> ^( COLUMN_REF_TOKEN table_wild ) | expression ( select_alias )? -> ^( SELECT_EXPR_TOKEN expression ( select_alias )? ) )

            ANTLR3_UINT32 alt329;

            alt329=2;

            {
                int LA329_0 = LA(1);
                if ( (LA329_0 == IDENTIFIER))
                {
                    {
                        int LA329_1 = LA(2);
                        if ( (LA329_1 == EOF || ((LA329_1 >= ACCOUNT_SYMBOL) && (LA329_1 <= YEAR_SYMBOL)) || LA329_1 == AND_SYMBOL || LA329_1 == AS_SYMBOL || LA329_1 == BACK_TICK_QUOTED_ID || LA329_1 == BETWEEN_SYMBOL || LA329_1 == BIN_NUMBER || LA329_1 == BITWISE_AND_OPERATOR || ((LA329_1 >= BITWISE_OR_OPERATOR) && (LA329_1 <= BITWISE_XOR_OPERATOR)) || ((LA329_1 >= CLOSE_CURLY_SYMBOL) && (LA329_1 <= COLLATE_SYMBOL)) || LA329_1 == COMMA_SYMBOL || LA329_1 == CONCAT_PIPES_SYMBOL || LA329_1 == CROSS_SYMBOL || ((LA329_1 >= DIV_OPERATOR) && (LA329_1 <= DIV_SYMBOL)) || LA329_1 == DOUBLE_QUOTED_TEXT || LA329_1 == EQUAL_OPERATOR || LA329_1 == FOR_SYMBOL || LA329_1 == FROM_SYMBOL || ((LA329_1 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_1 <= GREATER_THAN_OPERATOR)) || ((LA329_1 >= GROUP_SYMBOL) && (LA329_1 <= HAVING_SYMBOL)) || LA329_1 == HEX_NUMBER || LA329_1 == IDENTIFIER || LA329_1 == INNER_SYMBOL || LA329_1 == INTO_SYMBOL || LA329_1 == IN_SYMBOL || LA329_1 == IS_SYMBOL || ((LA329_1 >= JOIN_SYMBOL) && (LA329_1 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_1 >= LEFT_SYMBOL) && (LA329_1 <= LESS_THAN_OPERATOR)) || ((LA329_1 >= LIKE_SYMBOL) && (LA329_1 <= LIMIT_SYMBOL)) || LA329_1 == LOCK_SYMBOL || LA329_1 == LOGICAL_AND_OPERATOR || LA329_1 == LOGICAL_OR_OPERATOR || LA329_1 == MINUS_OPERATOR || ((LA329_1 >= MOD_OPERATOR) && (LA329_1 <= MOD_SYMBOL)) || ((LA329_1 >= MULT_OPERATOR) && (LA329_1 <= NATURAL_SYMBOL)) || ((LA329_1 >= NOT_EQUAL2_OPERATOR) && (LA329_1 <= NOT_SYMBOL)) || LA329_1 == NULL_SAFE_EQUAL_OPERATOR || LA329_1 == ON_SYMBOL || LA329_1 == OPEN_PAR_SYMBOL || ((LA329_1 >= ORDER_SYMBOL) && (LA329_1 <= OR_SYMBOL)) || LA329_1 == PLUS_OPERATOR || LA329_1 == PROCEDURE_SYMBOL || LA329_1 == REGEXP_SYMBOL || LA329_1 == RIGHT_SYMBOL || LA329_1 == SEMICOLON_SYMBOL || LA329_1 == SET_SYMBOL || ((LA329_1 >= SHIFT_LEFT_OPERATOR) && (LA329_1 <= SHIFT_RIGHT_OPERATOR)) || LA329_1 == SINGLE_QUOTED_TEXT || LA329_1 == STRAIGHT_JOIN_SYMBOL || LA329_1 == UNION_SYMBOL || LA329_1 == USING_SYMBOL || LA329_1 == WHERE_SYMBOL || LA329_1 == WITH_SYMBOL || LA329_1 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_1 == DOT_SYMBOL))
                        {
                            {
                                int LA329_104 = LA(3);
                                if ( (LA329_104 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_104 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2376 = LA(4);
                                        if ( (LA329_2376 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_2627 = LA(5);
                                                if ( (LA329_2627 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_2627 >= ACCOUNT_SYMBOL) && (LA329_2627 <= YEAR_SYMBOL)) || LA329_2627 == BACK_TICK_QUOTED_ID || LA329_2627 == DOUBLE_QUOTED_TEXT || LA329_2627 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 2627;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2376 == EOF || ((LA329_2376 >= ACCOUNT_SYMBOL) && (LA329_2376 <= YEAR_SYMBOL)) || LA329_2376 == AND_SYMBOL || LA329_2376 == AS_SYMBOL || LA329_2376 == BACK_TICK_QUOTED_ID || LA329_2376 == BETWEEN_SYMBOL || LA329_2376 == BIN_NUMBER || LA329_2376 == BITWISE_AND_OPERATOR || ((LA329_2376 >= BITWISE_OR_OPERATOR) && (LA329_2376 <= BITWISE_XOR_OPERATOR)) || ((LA329_2376 >= CLOSE_CURLY_SYMBOL) && (LA329_2376 <= COLLATE_SYMBOL)) || LA329_2376 == COMMA_SYMBOL || LA329_2376 == CONCAT_PIPES_SYMBOL || LA329_2376 == CROSS_SYMBOL || ((LA329_2376 >= DIV_OPERATOR) && (LA329_2376 <= DIV_SYMBOL)) || LA329_2376 == DOUBLE_QUOTED_TEXT || LA329_2376 == EQUAL_OPERATOR || LA329_2376 == FOR_SYMBOL || LA329_2376 == FROM_SYMBOL || ((LA329_2376 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2376 <= GREATER_THAN_OPERATOR)) || ((LA329_2376 >= GROUP_SYMBOL) && (LA329_2376 <= HAVING_SYMBOL)) || LA329_2376 == HEX_NUMBER || LA329_2376 == IDENTIFIER || LA329_2376 == INNER_SYMBOL || LA329_2376 == INTO_SYMBOL || LA329_2376 == IN_SYMBOL || LA329_2376 == IS_SYMBOL || ((LA329_2376 >= JOIN_SYMBOL) && (LA329_2376 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2376 >= LEFT_SYMBOL) && (LA329_2376 <= LESS_THAN_OPERATOR)) || ((LA329_2376 >= LIKE_SYMBOL) && (LA329_2376 <= LIMIT_SYMBOL)) || LA329_2376 == LOCK_SYMBOL || LA329_2376 == LOGICAL_AND_OPERATOR || LA329_2376 == LOGICAL_OR_OPERATOR || LA329_2376 == MINUS_OPERATOR || ((LA329_2376 >= MOD_OPERATOR) && (LA329_2376 <= MOD_SYMBOL)) || ((LA329_2376 >= MULT_OPERATOR) && (LA329_2376 <= NATURAL_SYMBOL)) || ((LA329_2376 >= NOT_EQUAL2_OPERATOR) && (LA329_2376 <= NOT_SYMBOL)) || LA329_2376 == NULL_SAFE_EQUAL_OPERATOR || LA329_2376 == ON_SYMBOL || LA329_2376 == OPEN_PAR_SYMBOL || ((LA329_2376 >= ORDER_SYMBOL) && (LA329_2376 <= OR_SYMBOL)) || LA329_2376 == PLUS_OPERATOR || LA329_2376 == PROCEDURE_SYMBOL || LA329_2376 == REGEXP_SYMBOL || LA329_2376 == RIGHT_SYMBOL || LA329_2376 == SEMICOLON_SYMBOL || LA329_2376 == SET_SYMBOL || ((LA329_2376 >= SHIFT_LEFT_OPERATOR) && (LA329_2376 <= SHIFT_RIGHT_OPERATOR)) || LA329_2376 == SINGLE_QUOTED_TEXT || LA329_2376 == STRAIGHT_JOIN_SYMBOL || LA329_2376 == UNION_SYMBOL || LA329_2376 == USING_SYMBOL || LA329_2376 == WHERE_SYMBOL || LA329_2376 == WITH_SYMBOL || LA329_2376 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2376;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_104 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2377 = LA(4);
                                        if ( (LA329_2377 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_2681 = LA(5);
                                                if ( (LA329_2681 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_2681 >= ACCOUNT_SYMBOL) && (LA329_2681 <= YEAR_SYMBOL)) || LA329_2681 == BACK_TICK_QUOTED_ID || LA329_2681 == DOUBLE_QUOTED_TEXT || LA329_2681 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 2681;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2377 == EOF || ((LA329_2377 >= ACCOUNT_SYMBOL) && (LA329_2377 <= YEAR_SYMBOL)) || LA329_2377 == AND_SYMBOL || LA329_2377 == AS_SYMBOL || LA329_2377 == BACK_TICK_QUOTED_ID || LA329_2377 == BETWEEN_SYMBOL || LA329_2377 == BIN_NUMBER || LA329_2377 == BITWISE_AND_OPERATOR || ((LA329_2377 >= BITWISE_OR_OPERATOR) && (LA329_2377 <= BITWISE_XOR_OPERATOR)) || ((LA329_2377 >= CLOSE_CURLY_SYMBOL) && (LA329_2377 <= COLLATE_SYMBOL)) || LA329_2377 == COMMA_SYMBOL || LA329_2377 == CONCAT_PIPES_SYMBOL || LA329_2377 == CROSS_SYMBOL || ((LA329_2377 >= DIV_OPERATOR) && (LA329_2377 <= DIV_SYMBOL)) || LA329_2377 == DOUBLE_QUOTED_TEXT || LA329_2377 == EQUAL_OPERATOR || LA329_2377 == FOR_SYMBOL || LA329_2377 == FROM_SYMBOL || ((LA329_2377 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2377 <= GREATER_THAN_OPERATOR)) || ((LA329_2377 >= GROUP_SYMBOL) && (LA329_2377 <= HAVING_SYMBOL)) || LA329_2377 == HEX_NUMBER || LA329_2377 == IDENTIFIER || LA329_2377 == INNER_SYMBOL || LA329_2377 == INTO_SYMBOL || LA329_2377 == IN_SYMBOL || LA329_2377 == IS_SYMBOL || ((LA329_2377 >= JOIN_SYMBOL) && (LA329_2377 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2377 >= LEFT_SYMBOL) && (LA329_2377 <= LESS_THAN_OPERATOR)) || ((LA329_2377 >= LIKE_SYMBOL) && (LA329_2377 <= LIMIT_SYMBOL)) || LA329_2377 == LOCK_SYMBOL || LA329_2377 == LOGICAL_AND_OPERATOR || LA329_2377 == LOGICAL_OR_OPERATOR || LA329_2377 == MINUS_OPERATOR || ((LA329_2377 >= MOD_OPERATOR) && (LA329_2377 <= MOD_SYMBOL)) || ((LA329_2377 >= MULT_OPERATOR) && (LA329_2377 <= NATURAL_SYMBOL)) || ((LA329_2377 >= NOT_EQUAL2_OPERATOR) && (LA329_2377 <= NOT_SYMBOL)) || LA329_2377 == NULL_SAFE_EQUAL_OPERATOR || LA329_2377 == ON_SYMBOL || LA329_2377 == OPEN_PAR_SYMBOL || ((LA329_2377 >= ORDER_SYMBOL) && (LA329_2377 <= OR_SYMBOL)) || LA329_2377 == PLUS_OPERATOR || LA329_2377 == PROCEDURE_SYMBOL || LA329_2377 == REGEXP_SYMBOL || LA329_2377 == RIGHT_SYMBOL || LA329_2377 == SEMICOLON_SYMBOL || LA329_2377 == SET_SYMBOL || ((LA329_2377 >= SHIFT_LEFT_OPERATOR) && (LA329_2377 <= SHIFT_RIGHT_OPERATOR)) || LA329_2377 == SINGLE_QUOTED_TEXT || LA329_2377 == STRAIGHT_JOIN_SYMBOL || LA329_2377 == UNION_SYMBOL || LA329_2377 == USING_SYMBOL || LA329_2377 == WHERE_SYMBOL || LA329_2377 == WITH_SYMBOL || LA329_2377 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2377;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_104 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2378 = LA(4);
                                        if ( (LA329_2378 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_2735 = LA(5);
                                                if ( (LA329_2735 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_2735 >= ACCOUNT_SYMBOL) && (LA329_2735 <= YEAR_SYMBOL)) || LA329_2735 == BACK_TICK_QUOTED_ID || LA329_2735 == DOUBLE_QUOTED_TEXT || LA329_2735 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 2735;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2378 == EOF || ((LA329_2378 >= ACCOUNT_SYMBOL) && (LA329_2378 <= YEAR_SYMBOL)) || LA329_2378 == AND_SYMBOL || LA329_2378 == AS_SYMBOL || LA329_2378 == BACK_TICK_QUOTED_ID || LA329_2378 == BETWEEN_SYMBOL || LA329_2378 == BIN_NUMBER || LA329_2378 == BITWISE_AND_OPERATOR || ((LA329_2378 >= BITWISE_OR_OPERATOR) && (LA329_2378 <= BITWISE_XOR_OPERATOR)) || ((LA329_2378 >= CLOSE_CURLY_SYMBOL) && (LA329_2378 <= COLLATE_SYMBOL)) || LA329_2378 == COMMA_SYMBOL || LA329_2378 == CONCAT_PIPES_SYMBOL || LA329_2378 == CROSS_SYMBOL || ((LA329_2378 >= DIV_OPERATOR) && (LA329_2378 <= DIV_SYMBOL)) || LA329_2378 == DOUBLE_QUOTED_TEXT || LA329_2378 == EQUAL_OPERATOR || LA329_2378 == FOR_SYMBOL || LA329_2378 == FROM_SYMBOL || ((LA329_2378 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2378 <= GREATER_THAN_OPERATOR)) || ((LA329_2378 >= GROUP_SYMBOL) && (LA329_2378 <= HAVING_SYMBOL)) || LA329_2378 == HEX_NUMBER || LA329_2378 == IDENTIFIER || LA329_2378 == INNER_SYMBOL || LA329_2378 == INTO_SYMBOL || LA329_2378 == IN_SYMBOL || LA329_2378 == IS_SYMBOL || ((LA329_2378 >= JOIN_SYMBOL) && (LA329_2378 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2378 >= LEFT_SYMBOL) && (LA329_2378 <= LESS_THAN_OPERATOR)) || ((LA329_2378 >= LIKE_SYMBOL) && (LA329_2378 <= LIMIT_SYMBOL)) || LA329_2378 == LOCK_SYMBOL || LA329_2378 == LOGICAL_AND_OPERATOR || LA329_2378 == LOGICAL_OR_OPERATOR || LA329_2378 == MINUS_OPERATOR || ((LA329_2378 >= MOD_OPERATOR) && (LA329_2378 <= MOD_SYMBOL)) || ((LA329_2378 >= MULT_OPERATOR) && (LA329_2378 <= NATURAL_SYMBOL)) || ((LA329_2378 >= NOT_EQUAL2_OPERATOR) && (LA329_2378 <= NOT_SYMBOL)) || LA329_2378 == NULL_SAFE_EQUAL_OPERATOR || LA329_2378 == ON_SYMBOL || LA329_2378 == OPEN_PAR_SYMBOL || ((LA329_2378 >= ORDER_SYMBOL) && (LA329_2378 <= OR_SYMBOL)) || LA329_2378 == PLUS_OPERATOR || LA329_2378 == PROCEDURE_SYMBOL || LA329_2378 == REGEXP_SYMBOL || LA329_2378 == RIGHT_SYMBOL || LA329_2378 == SEMICOLON_SYMBOL || LA329_2378 == SET_SYMBOL || ((LA329_2378 >= SHIFT_LEFT_OPERATOR) && (LA329_2378 <= SHIFT_RIGHT_OPERATOR)) || LA329_2378 == SINGLE_QUOTED_TEXT || LA329_2378 == STRAIGHT_JOIN_SYMBOL || LA329_2378 == UNION_SYMBOL || LA329_2378 == USING_SYMBOL || LA329_2378 == WHERE_SYMBOL || LA329_2378 == WITH_SYMBOL || LA329_2378 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2378;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_104 >= ACTION_SYMBOL) && (LA329_104 <= SHARE_SYMBOL)) || ((LA329_104 >= SLOW_SYMBOL) && (LA329_104 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2379 = LA(4);
                                        if ( (LA329_2379 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_2789 = LA(5);
                                                if ( (LA329_2789 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_2789 >= ACCOUNT_SYMBOL) && (LA329_2789 <= YEAR_SYMBOL)) || LA329_2789 == BACK_TICK_QUOTED_ID || LA329_2789 == DOUBLE_QUOTED_TEXT || LA329_2789 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 2789;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2379 == EOF || ((LA329_2379 >= ACCOUNT_SYMBOL) && (LA329_2379 <= YEAR_SYMBOL)) || LA329_2379 == AND_SYMBOL || LA329_2379 == AS_SYMBOL || LA329_2379 == BACK_TICK_QUOTED_ID || LA329_2379 == BETWEEN_SYMBOL || LA329_2379 == BIN_NUMBER || LA329_2379 == BITWISE_AND_OPERATOR || ((LA329_2379 >= BITWISE_OR_OPERATOR) && (LA329_2379 <= BITWISE_XOR_OPERATOR)) || ((LA329_2379 >= CLOSE_CURLY_SYMBOL) && (LA329_2379 <= COLLATE_SYMBOL)) || LA329_2379 == COMMA_SYMBOL || LA329_2379 == CONCAT_PIPES_SYMBOL || LA329_2379 == CROSS_SYMBOL || ((LA329_2379 >= DIV_OPERATOR) && (LA329_2379 <= DIV_SYMBOL)) || LA329_2379 == DOUBLE_QUOTED_TEXT || LA329_2379 == EQUAL_OPERATOR || LA329_2379 == FOR_SYMBOL || LA329_2379 == FROM_SYMBOL || ((LA329_2379 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2379 <= GREATER_THAN_OPERATOR)) || ((LA329_2379 >= GROUP_SYMBOL) && (LA329_2379 <= HAVING_SYMBOL)) || LA329_2379 == HEX_NUMBER || LA329_2379 == IDENTIFIER || LA329_2379 == INNER_SYMBOL || LA329_2379 == INTO_SYMBOL || LA329_2379 == IN_SYMBOL || LA329_2379 == IS_SYMBOL || ((LA329_2379 >= JOIN_SYMBOL) && (LA329_2379 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2379 >= LEFT_SYMBOL) && (LA329_2379 <= LESS_THAN_OPERATOR)) || ((LA329_2379 >= LIKE_SYMBOL) && (LA329_2379 <= LIMIT_SYMBOL)) || LA329_2379 == LOCK_SYMBOL || LA329_2379 == LOGICAL_AND_OPERATOR || LA329_2379 == LOGICAL_OR_OPERATOR || LA329_2379 == MINUS_OPERATOR || ((LA329_2379 >= MOD_OPERATOR) && (LA329_2379 <= MOD_SYMBOL)) || ((LA329_2379 >= MULT_OPERATOR) && (LA329_2379 <= NATURAL_SYMBOL)) || ((LA329_2379 >= NOT_EQUAL2_OPERATOR) && (LA329_2379 <= NOT_SYMBOL)) || LA329_2379 == NULL_SAFE_EQUAL_OPERATOR || LA329_2379 == ON_SYMBOL || LA329_2379 == OPEN_PAR_SYMBOL || ((LA329_2379 >= ORDER_SYMBOL) && (LA329_2379 <= OR_SYMBOL)) || LA329_2379 == PLUS_OPERATOR || LA329_2379 == PROCEDURE_SYMBOL || LA329_2379 == REGEXP_SYMBOL || LA329_2379 == RIGHT_SYMBOL || LA329_2379 == SEMICOLON_SYMBOL || LA329_2379 == SET_SYMBOL || ((LA329_2379 >= SHIFT_LEFT_OPERATOR) && (LA329_2379 <= SHIFT_RIGHT_OPERATOR)) || LA329_2379 == SINGLE_QUOTED_TEXT || LA329_2379 == STRAIGHT_JOIN_SYMBOL || LA329_2379 == UNION_SYMBOL || LA329_2379 == USING_SYMBOL || LA329_2379 == WHERE_SYMBOL || LA329_2379 == WITH_SYMBOL || LA329_2379 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2379;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_104 >= ACCOUNT_SYMBOL) && (LA329_104 <= XA_SYMBOL)) || LA329_104 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2380 = LA(4);
                                        if ( (LA329_2380 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_2843 = LA(5);
                                                if ( (LA329_2843 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_2843 >= ACCOUNT_SYMBOL) && (LA329_2843 <= YEAR_SYMBOL)) || LA329_2843 == BACK_TICK_QUOTED_ID || LA329_2843 == DOUBLE_QUOTED_TEXT || LA329_2843 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 2843;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2380 == EOF || ((LA329_2380 >= ACCOUNT_SYMBOL) && (LA329_2380 <= YEAR_SYMBOL)) || LA329_2380 == AND_SYMBOL || LA329_2380 == AS_SYMBOL || LA329_2380 == BACK_TICK_QUOTED_ID || LA329_2380 == BETWEEN_SYMBOL || LA329_2380 == BIN_NUMBER || LA329_2380 == BITWISE_AND_OPERATOR || ((LA329_2380 >= BITWISE_OR_OPERATOR) && (LA329_2380 <= BITWISE_XOR_OPERATOR)) || ((LA329_2380 >= CLOSE_CURLY_SYMBOL) && (LA329_2380 <= COLLATE_SYMBOL)) || LA329_2380 == COMMA_SYMBOL || LA329_2380 == CONCAT_PIPES_SYMBOL || LA329_2380 == CROSS_SYMBOL || ((LA329_2380 >= DIV_OPERATOR) && (LA329_2380 <= DIV_SYMBOL)) || LA329_2380 == DOUBLE_QUOTED_TEXT || LA329_2380 == EQUAL_OPERATOR || LA329_2380 == FOR_SYMBOL || LA329_2380 == FROM_SYMBOL || ((LA329_2380 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2380 <= GREATER_THAN_OPERATOR)) || ((LA329_2380 >= GROUP_SYMBOL) && (LA329_2380 <= HAVING_SYMBOL)) || LA329_2380 == HEX_NUMBER || LA329_2380 == IDENTIFIER || LA329_2380 == INNER_SYMBOL || LA329_2380 == INTO_SYMBOL || LA329_2380 == IN_SYMBOL || LA329_2380 == IS_SYMBOL || ((LA329_2380 >= JOIN_SYMBOL) && (LA329_2380 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2380 >= LEFT_SYMBOL) && (LA329_2380 <= LESS_THAN_OPERATOR)) || ((LA329_2380 >= LIKE_SYMBOL) && (LA329_2380 <= LIMIT_SYMBOL)) || LA329_2380 == LOCK_SYMBOL || LA329_2380 == LOGICAL_AND_OPERATOR || LA329_2380 == LOGICAL_OR_OPERATOR || LA329_2380 == MINUS_OPERATOR || ((LA329_2380 >= MOD_OPERATOR) && (LA329_2380 <= MOD_SYMBOL)) || ((LA329_2380 >= MULT_OPERATOR) && (LA329_2380 <= NATURAL_SYMBOL)) || ((LA329_2380 >= NOT_EQUAL2_OPERATOR) && (LA329_2380 <= NOT_SYMBOL)) || LA329_2380 == NULL_SAFE_EQUAL_OPERATOR || LA329_2380 == ON_SYMBOL || LA329_2380 == OPEN_PAR_SYMBOL || ((LA329_2380 >= ORDER_SYMBOL) && (LA329_2380 <= OR_SYMBOL)) || LA329_2380 == PLUS_OPERATOR || LA329_2380 == PROCEDURE_SYMBOL || LA329_2380 == REGEXP_SYMBOL || LA329_2380 == RIGHT_SYMBOL || LA329_2380 == SEMICOLON_SYMBOL || LA329_2380 == SET_SYMBOL || ((LA329_2380 >= SHIFT_LEFT_OPERATOR) && (LA329_2380 <= SHIFT_RIGHT_OPERATOR)) || LA329_2380 == SINGLE_QUOTED_TEXT || LA329_2380 == STRAIGHT_JOIN_SYMBOL || LA329_2380 == UNION_SYMBOL || LA329_2380 == USING_SYMBOL || LA329_2380 == WHERE_SYMBOL || LA329_2380 == WITH_SYMBOL || LA329_2380 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2380;


                                            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  = 329;
                                    EXCEPTION->state        = 104;


                                    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  = 329;
                            EXCEPTION->state        = 1;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == BACK_TICK_QUOTED_ID))
                {
                    {
                        int LA329_2 = LA(2);
                        if ( (LA329_2 == EOF || ((LA329_2 >= ACCOUNT_SYMBOL) && (LA329_2 <= YEAR_SYMBOL)) || LA329_2 == AND_SYMBOL || LA329_2 == AS_SYMBOL || LA329_2 == BACK_TICK_QUOTED_ID || LA329_2 == BETWEEN_SYMBOL || LA329_2 == BIN_NUMBER || LA329_2 == BITWISE_AND_OPERATOR || ((LA329_2 >= BITWISE_OR_OPERATOR) && (LA329_2 <= BITWISE_XOR_OPERATOR)) || ((LA329_2 >= CLOSE_CURLY_SYMBOL) && (LA329_2 <= COLLATE_SYMBOL)) || LA329_2 == COMMA_SYMBOL || LA329_2 == CONCAT_PIPES_SYMBOL || LA329_2 == CROSS_SYMBOL || ((LA329_2 >= DIV_OPERATOR) && (LA329_2 <= DIV_SYMBOL)) || LA329_2 == DOUBLE_QUOTED_TEXT || LA329_2 == EQUAL_OPERATOR || LA329_2 == FOR_SYMBOL || LA329_2 == FROM_SYMBOL || ((LA329_2 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2 <= GREATER_THAN_OPERATOR)) || ((LA329_2 >= GROUP_SYMBOL) && (LA329_2 <= HAVING_SYMBOL)) || LA329_2 == HEX_NUMBER || LA329_2 == IDENTIFIER || LA329_2 == INNER_SYMBOL || LA329_2 == INTO_SYMBOL || LA329_2 == IN_SYMBOL || LA329_2 == IS_SYMBOL || ((LA329_2 >= JOIN_SYMBOL) && (LA329_2 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2 >= LEFT_SYMBOL) && (LA329_2 <= LESS_THAN_OPERATOR)) || ((LA329_2 >= LIKE_SYMBOL) && (LA329_2 <= LIMIT_SYMBOL)) || LA329_2 == LOCK_SYMBOL || LA329_2 == LOGICAL_AND_OPERATOR || LA329_2 == LOGICAL_OR_OPERATOR || LA329_2 == MINUS_OPERATOR || ((LA329_2 >= MOD_OPERATOR) && (LA329_2 <= MOD_SYMBOL)) || ((LA329_2 >= MULT_OPERATOR) && (LA329_2 <= NATURAL_SYMBOL)) || ((LA329_2 >= NOT_EQUAL2_OPERATOR) && (LA329_2 <= NOT_SYMBOL)) || LA329_2 == NULL_SAFE_EQUAL_OPERATOR || LA329_2 == ON_SYMBOL || LA329_2 == OPEN_PAR_SYMBOL || ((LA329_2 >= ORDER_SYMBOL) && (LA329_2 <= OR_SYMBOL)) || LA329_2 == PLUS_OPERATOR || LA329_2 == PROCEDURE_SYMBOL || LA329_2 == REGEXP_SYMBOL || LA329_2 == RIGHT_SYMBOL || LA329_2 == SEMICOLON_SYMBOL || LA329_2 == SET_SYMBOL || ((LA329_2 >= SHIFT_LEFT_OPERATOR) && (LA329_2 <= SHIFT_RIGHT_OPERATOR)) || LA329_2 == SINGLE_QUOTED_TEXT || LA329_2 == STRAIGHT_JOIN_SYMBOL || LA329_2 == UNION_SYMBOL || LA329_2 == USING_SYMBOL || LA329_2 == WHERE_SYMBOL || LA329_2 == WITH_SYMBOL || LA329_2 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_2 == DOT_SYMBOL))
                        {
                            {
                                int LA329_158 = LA(3);
                                if ( (LA329_158 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_158 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2382 = LA(4);
                                        if ( (LA329_2382 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_2897 = LA(5);
                                                if ( (LA329_2897 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_2897 >= ACCOUNT_SYMBOL) && (LA329_2897 <= YEAR_SYMBOL)) || LA329_2897 == BACK_TICK_QUOTED_ID || LA329_2897 == DOUBLE_QUOTED_TEXT || LA329_2897 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 2897;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2382 == EOF || ((LA329_2382 >= ACCOUNT_SYMBOL) && (LA329_2382 <= YEAR_SYMBOL)) || LA329_2382 == AND_SYMBOL || LA329_2382 == AS_SYMBOL || LA329_2382 == BACK_TICK_QUOTED_ID || LA329_2382 == BETWEEN_SYMBOL || LA329_2382 == BIN_NUMBER || LA329_2382 == BITWISE_AND_OPERATOR || ((LA329_2382 >= BITWISE_OR_OPERATOR) && (LA329_2382 <= BITWISE_XOR_OPERATOR)) || ((LA329_2382 >= CLOSE_CURLY_SYMBOL) && (LA329_2382 <= COLLATE_SYMBOL)) || LA329_2382 == COMMA_SYMBOL || LA329_2382 == CONCAT_PIPES_SYMBOL || LA329_2382 == CROSS_SYMBOL || ((LA329_2382 >= DIV_OPERATOR) && (LA329_2382 <= DIV_SYMBOL)) || LA329_2382 == DOUBLE_QUOTED_TEXT || LA329_2382 == EQUAL_OPERATOR || LA329_2382 == FOR_SYMBOL || LA329_2382 == FROM_SYMBOL || ((LA329_2382 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2382 <= GREATER_THAN_OPERATOR)) || ((LA329_2382 >= GROUP_SYMBOL) && (LA329_2382 <= HAVING_SYMBOL)) || LA329_2382 == HEX_NUMBER || LA329_2382 == IDENTIFIER || LA329_2382 == INNER_SYMBOL || LA329_2382 == INTO_SYMBOL || LA329_2382 == IN_SYMBOL || LA329_2382 == IS_SYMBOL || ((LA329_2382 >= JOIN_SYMBOL) && (LA329_2382 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2382 >= LEFT_SYMBOL) && (LA329_2382 <= LESS_THAN_OPERATOR)) || ((LA329_2382 >= LIKE_SYMBOL) && (LA329_2382 <= LIMIT_SYMBOL)) || LA329_2382 == LOCK_SYMBOL || LA329_2382 == LOGICAL_AND_OPERATOR || LA329_2382 == LOGICAL_OR_OPERATOR || LA329_2382 == MINUS_OPERATOR || ((LA329_2382 >= MOD_OPERATOR) && (LA329_2382 <= MOD_SYMBOL)) || ((LA329_2382 >= MULT_OPERATOR) && (LA329_2382 <= NATURAL_SYMBOL)) || ((LA329_2382 >= NOT_EQUAL2_OPERATOR) && (LA329_2382 <= NOT_SYMBOL)) || LA329_2382 == NULL_SAFE_EQUAL_OPERATOR || LA329_2382 == ON_SYMBOL || LA329_2382 == OPEN_PAR_SYMBOL || ((LA329_2382 >= ORDER_SYMBOL) && (LA329_2382 <= OR_SYMBOL)) || LA329_2382 == PLUS_OPERATOR || LA329_2382 == PROCEDURE_SYMBOL || LA329_2382 == REGEXP_SYMBOL || LA329_2382 == RIGHT_SYMBOL || LA329_2382 == SEMICOLON_SYMBOL || LA329_2382 == SET_SYMBOL || ((LA329_2382 >= SHIFT_LEFT_OPERATOR) && (LA329_2382 <= SHIFT_RIGHT_OPERATOR)) || LA329_2382 == SINGLE_QUOTED_TEXT || LA329_2382 == STRAIGHT_JOIN_SYMBOL || LA329_2382 == UNION_SYMBOL || LA329_2382 == USING_SYMBOL || LA329_2382 == WHERE_SYMBOL || LA329_2382 == WITH_SYMBOL || LA329_2382 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2382;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_158 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2383 = LA(4);
                                        if ( (LA329_2383 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_2951 = LA(5);
                                                if ( (LA329_2951 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_2951 >= ACCOUNT_SYMBOL) && (LA329_2951 <= YEAR_SYMBOL)) || LA329_2951 == BACK_TICK_QUOTED_ID || LA329_2951 == DOUBLE_QUOTED_TEXT || LA329_2951 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 2951;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2383 == EOF || ((LA329_2383 >= ACCOUNT_SYMBOL) && (LA329_2383 <= YEAR_SYMBOL)) || LA329_2383 == AND_SYMBOL || LA329_2383 == AS_SYMBOL || LA329_2383 == BACK_TICK_QUOTED_ID || LA329_2383 == BETWEEN_SYMBOL || LA329_2383 == BIN_NUMBER || LA329_2383 == BITWISE_AND_OPERATOR || ((LA329_2383 >= BITWISE_OR_OPERATOR) && (LA329_2383 <= BITWISE_XOR_OPERATOR)) || ((LA329_2383 >= CLOSE_CURLY_SYMBOL) && (LA329_2383 <= COLLATE_SYMBOL)) || LA329_2383 == COMMA_SYMBOL || LA329_2383 == CONCAT_PIPES_SYMBOL || LA329_2383 == CROSS_SYMBOL || ((LA329_2383 >= DIV_OPERATOR) && (LA329_2383 <= DIV_SYMBOL)) || LA329_2383 == DOUBLE_QUOTED_TEXT || LA329_2383 == EQUAL_OPERATOR || LA329_2383 == FOR_SYMBOL || LA329_2383 == FROM_SYMBOL || ((LA329_2383 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2383 <= GREATER_THAN_OPERATOR)) || ((LA329_2383 >= GROUP_SYMBOL) && (LA329_2383 <= HAVING_SYMBOL)) || LA329_2383 == HEX_NUMBER || LA329_2383 == IDENTIFIER || LA329_2383 == INNER_SYMBOL || LA329_2383 == INTO_SYMBOL || LA329_2383 == IN_SYMBOL || LA329_2383 == IS_SYMBOL || ((LA329_2383 >= JOIN_SYMBOL) && (LA329_2383 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2383 >= LEFT_SYMBOL) && (LA329_2383 <= LESS_THAN_OPERATOR)) || ((LA329_2383 >= LIKE_SYMBOL) && (LA329_2383 <= LIMIT_SYMBOL)) || LA329_2383 == LOCK_SYMBOL || LA329_2383 == LOGICAL_AND_OPERATOR || LA329_2383 == LOGICAL_OR_OPERATOR || LA329_2383 == MINUS_OPERATOR || ((LA329_2383 >= MOD_OPERATOR) && (LA329_2383 <= MOD_SYMBOL)) || ((LA329_2383 >= MULT_OPERATOR) && (LA329_2383 <= NATURAL_SYMBOL)) || ((LA329_2383 >= NOT_EQUAL2_OPERATOR) && (LA329_2383 <= NOT_SYMBOL)) || LA329_2383 == NULL_SAFE_EQUAL_OPERATOR || LA329_2383 == ON_SYMBOL || LA329_2383 == OPEN_PAR_SYMBOL || ((LA329_2383 >= ORDER_SYMBOL) && (LA329_2383 <= OR_SYMBOL)) || LA329_2383 == PLUS_OPERATOR || LA329_2383 == PROCEDURE_SYMBOL || LA329_2383 == REGEXP_SYMBOL || LA329_2383 == RIGHT_SYMBOL || LA329_2383 == SEMICOLON_SYMBOL || LA329_2383 == SET_SYMBOL || ((LA329_2383 >= SHIFT_LEFT_OPERATOR) && (LA329_2383 <= SHIFT_RIGHT_OPERATOR)) || LA329_2383 == SINGLE_QUOTED_TEXT || LA329_2383 == STRAIGHT_JOIN_SYMBOL || LA329_2383 == UNION_SYMBOL || LA329_2383 == USING_SYMBOL || LA329_2383 == WHERE_SYMBOL || LA329_2383 == WITH_SYMBOL || LA329_2383 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2383;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_158 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2384 = LA(4);
                                        if ( (LA329_2384 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3005 = LA(5);
                                                if ( (LA329_3005 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3005 >= ACCOUNT_SYMBOL) && (LA329_3005 <= YEAR_SYMBOL)) || LA329_3005 == BACK_TICK_QUOTED_ID || LA329_3005 == DOUBLE_QUOTED_TEXT || LA329_3005 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3005;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2384 == EOF || ((LA329_2384 >= ACCOUNT_SYMBOL) && (LA329_2384 <= YEAR_SYMBOL)) || LA329_2384 == AND_SYMBOL || LA329_2384 == AS_SYMBOL || LA329_2384 == BACK_TICK_QUOTED_ID || LA329_2384 == BETWEEN_SYMBOL || LA329_2384 == BIN_NUMBER || LA329_2384 == BITWISE_AND_OPERATOR || ((LA329_2384 >= BITWISE_OR_OPERATOR) && (LA329_2384 <= BITWISE_XOR_OPERATOR)) || ((LA329_2384 >= CLOSE_CURLY_SYMBOL) && (LA329_2384 <= COLLATE_SYMBOL)) || LA329_2384 == COMMA_SYMBOL || LA329_2384 == CONCAT_PIPES_SYMBOL || LA329_2384 == CROSS_SYMBOL || ((LA329_2384 >= DIV_OPERATOR) && (LA329_2384 <= DIV_SYMBOL)) || LA329_2384 == DOUBLE_QUOTED_TEXT || LA329_2384 == EQUAL_OPERATOR || LA329_2384 == FOR_SYMBOL || LA329_2384 == FROM_SYMBOL || ((LA329_2384 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2384 <= GREATER_THAN_OPERATOR)) || ((LA329_2384 >= GROUP_SYMBOL) && (LA329_2384 <= HAVING_SYMBOL)) || LA329_2384 == HEX_NUMBER || LA329_2384 == IDENTIFIER || LA329_2384 == INNER_SYMBOL || LA329_2384 == INTO_SYMBOL || LA329_2384 == IN_SYMBOL || LA329_2384 == IS_SYMBOL || ((LA329_2384 >= JOIN_SYMBOL) && (LA329_2384 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2384 >= LEFT_SYMBOL) && (LA329_2384 <= LESS_THAN_OPERATOR)) || ((LA329_2384 >= LIKE_SYMBOL) && (LA329_2384 <= LIMIT_SYMBOL)) || LA329_2384 == LOCK_SYMBOL || LA329_2384 == LOGICAL_AND_OPERATOR || LA329_2384 == LOGICAL_OR_OPERATOR || LA329_2384 == MINUS_OPERATOR || ((LA329_2384 >= MOD_OPERATOR) && (LA329_2384 <= MOD_SYMBOL)) || ((LA329_2384 >= MULT_OPERATOR) && (LA329_2384 <= NATURAL_SYMBOL)) || ((LA329_2384 >= NOT_EQUAL2_OPERATOR) && (LA329_2384 <= NOT_SYMBOL)) || LA329_2384 == NULL_SAFE_EQUAL_OPERATOR || LA329_2384 == ON_SYMBOL || LA329_2384 == OPEN_PAR_SYMBOL || ((LA329_2384 >= ORDER_SYMBOL) && (LA329_2384 <= OR_SYMBOL)) || LA329_2384 == PLUS_OPERATOR || LA329_2384 == PROCEDURE_SYMBOL || LA329_2384 == REGEXP_SYMBOL || LA329_2384 == RIGHT_SYMBOL || LA329_2384 == SEMICOLON_SYMBOL || LA329_2384 == SET_SYMBOL || ((LA329_2384 >= SHIFT_LEFT_OPERATOR) && (LA329_2384 <= SHIFT_RIGHT_OPERATOR)) || LA329_2384 == SINGLE_QUOTED_TEXT || LA329_2384 == STRAIGHT_JOIN_SYMBOL || LA329_2384 == UNION_SYMBOL || LA329_2384 == USING_SYMBOL || LA329_2384 == WHERE_SYMBOL || LA329_2384 == WITH_SYMBOL || LA329_2384 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2384;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_158 >= ACTION_SYMBOL) && (LA329_158 <= SHARE_SYMBOL)) || ((LA329_158 >= SLOW_SYMBOL) && (LA329_158 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2385 = LA(4);
                                        if ( (LA329_2385 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3059 = LA(5);
                                                if ( (LA329_3059 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3059 >= ACCOUNT_SYMBOL) && (LA329_3059 <= YEAR_SYMBOL)) || LA329_3059 == BACK_TICK_QUOTED_ID || LA329_3059 == DOUBLE_QUOTED_TEXT || LA329_3059 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3059;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2385 == EOF || ((LA329_2385 >= ACCOUNT_SYMBOL) && (LA329_2385 <= YEAR_SYMBOL)) || LA329_2385 == AND_SYMBOL || LA329_2385 == AS_SYMBOL || LA329_2385 == BACK_TICK_QUOTED_ID || LA329_2385 == BETWEEN_SYMBOL || LA329_2385 == BIN_NUMBER || LA329_2385 == BITWISE_AND_OPERATOR || ((LA329_2385 >= BITWISE_OR_OPERATOR) && (LA329_2385 <= BITWISE_XOR_OPERATOR)) || ((LA329_2385 >= CLOSE_CURLY_SYMBOL) && (LA329_2385 <= COLLATE_SYMBOL)) || LA329_2385 == COMMA_SYMBOL || LA329_2385 == CONCAT_PIPES_SYMBOL || LA329_2385 == CROSS_SYMBOL || ((LA329_2385 >= DIV_OPERATOR) && (LA329_2385 <= DIV_SYMBOL)) || LA329_2385 == DOUBLE_QUOTED_TEXT || LA329_2385 == EQUAL_OPERATOR || LA329_2385 == FOR_SYMBOL || LA329_2385 == FROM_SYMBOL || ((LA329_2385 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2385 <= GREATER_THAN_OPERATOR)) || ((LA329_2385 >= GROUP_SYMBOL) && (LA329_2385 <= HAVING_SYMBOL)) || LA329_2385 == HEX_NUMBER || LA329_2385 == IDENTIFIER || LA329_2385 == INNER_SYMBOL || LA329_2385 == INTO_SYMBOL || LA329_2385 == IN_SYMBOL || LA329_2385 == IS_SYMBOL || ((LA329_2385 >= JOIN_SYMBOL) && (LA329_2385 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2385 >= LEFT_SYMBOL) && (LA329_2385 <= LESS_THAN_OPERATOR)) || ((LA329_2385 >= LIKE_SYMBOL) && (LA329_2385 <= LIMIT_SYMBOL)) || LA329_2385 == LOCK_SYMBOL || LA329_2385 == LOGICAL_AND_OPERATOR || LA329_2385 == LOGICAL_OR_OPERATOR || LA329_2385 == MINUS_OPERATOR || ((LA329_2385 >= MOD_OPERATOR) && (LA329_2385 <= MOD_SYMBOL)) || ((LA329_2385 >= MULT_OPERATOR) && (LA329_2385 <= NATURAL_SYMBOL)) || ((LA329_2385 >= NOT_EQUAL2_OPERATOR) && (LA329_2385 <= NOT_SYMBOL)) || LA329_2385 == NULL_SAFE_EQUAL_OPERATOR || LA329_2385 == ON_SYMBOL || LA329_2385 == OPEN_PAR_SYMBOL || ((LA329_2385 >= ORDER_SYMBOL) && (LA329_2385 <= OR_SYMBOL)) || LA329_2385 == PLUS_OPERATOR || LA329_2385 == PROCEDURE_SYMBOL || LA329_2385 == REGEXP_SYMBOL || LA329_2385 == RIGHT_SYMBOL || LA329_2385 == SEMICOLON_SYMBOL || LA329_2385 == SET_SYMBOL || ((LA329_2385 >= SHIFT_LEFT_OPERATOR) && (LA329_2385 <= SHIFT_RIGHT_OPERATOR)) || LA329_2385 == SINGLE_QUOTED_TEXT || LA329_2385 == STRAIGHT_JOIN_SYMBOL || LA329_2385 == UNION_SYMBOL || LA329_2385 == USING_SYMBOL || LA329_2385 == WHERE_SYMBOL || LA329_2385 == WITH_SYMBOL || LA329_2385 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2385;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_158 >= ACCOUNT_SYMBOL) && (LA329_158 <= XA_SYMBOL)) || LA329_158 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2386 = LA(4);
                                        if ( (LA329_2386 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3113 = LA(5);
                                                if ( (LA329_3113 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3113 >= ACCOUNT_SYMBOL) && (LA329_3113 <= YEAR_SYMBOL)) || LA329_3113 == BACK_TICK_QUOTED_ID || LA329_3113 == DOUBLE_QUOTED_TEXT || LA329_3113 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3113;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2386 == EOF || ((LA329_2386 >= ACCOUNT_SYMBOL) && (LA329_2386 <= YEAR_SYMBOL)) || LA329_2386 == AND_SYMBOL || LA329_2386 == AS_SYMBOL || LA329_2386 == BACK_TICK_QUOTED_ID || LA329_2386 == BETWEEN_SYMBOL || LA329_2386 == BIN_NUMBER || LA329_2386 == BITWISE_AND_OPERATOR || ((LA329_2386 >= BITWISE_OR_OPERATOR) && (LA329_2386 <= BITWISE_XOR_OPERATOR)) || ((LA329_2386 >= CLOSE_CURLY_SYMBOL) && (LA329_2386 <= COLLATE_SYMBOL)) || LA329_2386 == COMMA_SYMBOL || LA329_2386 == CONCAT_PIPES_SYMBOL || LA329_2386 == CROSS_SYMBOL || ((LA329_2386 >= DIV_OPERATOR) && (LA329_2386 <= DIV_SYMBOL)) || LA329_2386 == DOUBLE_QUOTED_TEXT || LA329_2386 == EQUAL_OPERATOR || LA329_2386 == FOR_SYMBOL || LA329_2386 == FROM_SYMBOL || ((LA329_2386 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2386 <= GREATER_THAN_OPERATOR)) || ((LA329_2386 >= GROUP_SYMBOL) && (LA329_2386 <= HAVING_SYMBOL)) || LA329_2386 == HEX_NUMBER || LA329_2386 == IDENTIFIER || LA329_2386 == INNER_SYMBOL || LA329_2386 == INTO_SYMBOL || LA329_2386 == IN_SYMBOL || LA329_2386 == IS_SYMBOL || ((LA329_2386 >= JOIN_SYMBOL) && (LA329_2386 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2386 >= LEFT_SYMBOL) && (LA329_2386 <= LESS_THAN_OPERATOR)) || ((LA329_2386 >= LIKE_SYMBOL) && (LA329_2386 <= LIMIT_SYMBOL)) || LA329_2386 == LOCK_SYMBOL || LA329_2386 == LOGICAL_AND_OPERATOR || LA329_2386 == LOGICAL_OR_OPERATOR || LA329_2386 == MINUS_OPERATOR || ((LA329_2386 >= MOD_OPERATOR) && (LA329_2386 <= MOD_SYMBOL)) || ((LA329_2386 >= MULT_OPERATOR) && (LA329_2386 <= NATURAL_SYMBOL)) || ((LA329_2386 >= NOT_EQUAL2_OPERATOR) && (LA329_2386 <= NOT_SYMBOL)) || LA329_2386 == NULL_SAFE_EQUAL_OPERATOR || LA329_2386 == ON_SYMBOL || LA329_2386 == OPEN_PAR_SYMBOL || ((LA329_2386 >= ORDER_SYMBOL) && (LA329_2386 <= OR_SYMBOL)) || LA329_2386 == PLUS_OPERATOR || LA329_2386 == PROCEDURE_SYMBOL || LA329_2386 == REGEXP_SYMBOL || LA329_2386 == RIGHT_SYMBOL || LA329_2386 == SEMICOLON_SYMBOL || LA329_2386 == SET_SYMBOL || ((LA329_2386 >= SHIFT_LEFT_OPERATOR) && (LA329_2386 <= SHIFT_RIGHT_OPERATOR)) || LA329_2386 == SINGLE_QUOTED_TEXT || LA329_2386 == STRAIGHT_JOIN_SYMBOL || LA329_2386 == UNION_SYMBOL || LA329_2386 == USING_SYMBOL || LA329_2386 == WHERE_SYMBOL || LA329_2386 == WITH_SYMBOL || LA329_2386 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2386;


                                            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  = 329;
                                    EXCEPTION->state        = 158;


                                    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  = 329;
                            EXCEPTION->state        = 2;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == DOUBLE_QUOTED_TEXT))
                {
                    {
                        int LA329_3 = LA(2);
                        if ( (LA329_3 == DOT_SYMBOL))
                        {
                            {
                                int LA329_211 = LA(3);
                                if ( (LA329_211 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_211 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2388 = LA(4);
                                        if ( (LA329_2388 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3167 = LA(5);
                                                if ( (LA329_3167 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3167 >= ACCOUNT_SYMBOL) && (LA329_3167 <= YEAR_SYMBOL)) || LA329_3167 == BACK_TICK_QUOTED_ID || LA329_3167 == DOUBLE_QUOTED_TEXT || LA329_3167 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3167;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2388 == EOF || ((LA329_2388 >= ACCOUNT_SYMBOL) && (LA329_2388 <= YEAR_SYMBOL)) || LA329_2388 == AND_SYMBOL || LA329_2388 == AS_SYMBOL || LA329_2388 == BACK_TICK_QUOTED_ID || LA329_2388 == BETWEEN_SYMBOL || LA329_2388 == BIN_NUMBER || LA329_2388 == BITWISE_AND_OPERATOR || ((LA329_2388 >= BITWISE_OR_OPERATOR) && (LA329_2388 <= BITWISE_XOR_OPERATOR)) || ((LA329_2388 >= CLOSE_CURLY_SYMBOL) && (LA329_2388 <= COLLATE_SYMBOL)) || LA329_2388 == COMMA_SYMBOL || LA329_2388 == CONCAT_PIPES_SYMBOL || LA329_2388 == CROSS_SYMBOL || ((LA329_2388 >= DIV_OPERATOR) && (LA329_2388 <= DIV_SYMBOL)) || LA329_2388 == DOUBLE_QUOTED_TEXT || LA329_2388 == EQUAL_OPERATOR || LA329_2388 == FOR_SYMBOL || LA329_2388 == FROM_SYMBOL || ((LA329_2388 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2388 <= GREATER_THAN_OPERATOR)) || ((LA329_2388 >= GROUP_SYMBOL) && (LA329_2388 <= HAVING_SYMBOL)) || LA329_2388 == HEX_NUMBER || LA329_2388 == IDENTIFIER || LA329_2388 == INNER_SYMBOL || LA329_2388 == INTO_SYMBOL || LA329_2388 == IN_SYMBOL || LA329_2388 == IS_SYMBOL || ((LA329_2388 >= JOIN_SYMBOL) && (LA329_2388 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2388 >= LEFT_SYMBOL) && (LA329_2388 <= LESS_THAN_OPERATOR)) || ((LA329_2388 >= LIKE_SYMBOL) && (LA329_2388 <= LIMIT_SYMBOL)) || LA329_2388 == LOCK_SYMBOL || LA329_2388 == LOGICAL_AND_OPERATOR || LA329_2388 == LOGICAL_OR_OPERATOR || LA329_2388 == MINUS_OPERATOR || ((LA329_2388 >= MOD_OPERATOR) && (LA329_2388 <= MOD_SYMBOL)) || ((LA329_2388 >= MULT_OPERATOR) && (LA329_2388 <= NATURAL_SYMBOL)) || ((LA329_2388 >= NOT_EQUAL2_OPERATOR) && (LA329_2388 <= NOT_SYMBOL)) || LA329_2388 == NULL_SAFE_EQUAL_OPERATOR || LA329_2388 == ON_SYMBOL || LA329_2388 == OPEN_PAR_SYMBOL || ((LA329_2388 >= ORDER_SYMBOL) && (LA329_2388 <= OR_SYMBOL)) || LA329_2388 == PLUS_OPERATOR || LA329_2388 == PROCEDURE_SYMBOL || LA329_2388 == REGEXP_SYMBOL || LA329_2388 == RIGHT_SYMBOL || LA329_2388 == SEMICOLON_SYMBOL || LA329_2388 == SET_SYMBOL || ((LA329_2388 >= SHIFT_LEFT_OPERATOR) && (LA329_2388 <= SHIFT_RIGHT_OPERATOR)) || LA329_2388 == SINGLE_QUOTED_TEXT || LA329_2388 == STRAIGHT_JOIN_SYMBOL || LA329_2388 == UNION_SYMBOL || LA329_2388 == USING_SYMBOL || LA329_2388 == WHERE_SYMBOL || LA329_2388 == WITH_SYMBOL || LA329_2388 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2388;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_211 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2389 = LA(4);
                                        if ( (LA329_2389 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3221 = LA(5);
                                                if ( (LA329_3221 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3221 >= ACCOUNT_SYMBOL) && (LA329_3221 <= YEAR_SYMBOL)) || LA329_3221 == BACK_TICK_QUOTED_ID || LA329_3221 == DOUBLE_QUOTED_TEXT || LA329_3221 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3221;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2389 == EOF || ((LA329_2389 >= ACCOUNT_SYMBOL) && (LA329_2389 <= YEAR_SYMBOL)) || LA329_2389 == AND_SYMBOL || LA329_2389 == AS_SYMBOL || LA329_2389 == BACK_TICK_QUOTED_ID || LA329_2389 == BETWEEN_SYMBOL || LA329_2389 == BIN_NUMBER || LA329_2389 == BITWISE_AND_OPERATOR || ((LA329_2389 >= BITWISE_OR_OPERATOR) && (LA329_2389 <= BITWISE_XOR_OPERATOR)) || ((LA329_2389 >= CLOSE_CURLY_SYMBOL) && (LA329_2389 <= COLLATE_SYMBOL)) || LA329_2389 == COMMA_SYMBOL || LA329_2389 == CONCAT_PIPES_SYMBOL || LA329_2389 == CROSS_SYMBOL || ((LA329_2389 >= DIV_OPERATOR) && (LA329_2389 <= DIV_SYMBOL)) || LA329_2389 == DOUBLE_QUOTED_TEXT || LA329_2389 == EQUAL_OPERATOR || LA329_2389 == FOR_SYMBOL || LA329_2389 == FROM_SYMBOL || ((LA329_2389 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2389 <= GREATER_THAN_OPERATOR)) || ((LA329_2389 >= GROUP_SYMBOL) && (LA329_2389 <= HAVING_SYMBOL)) || LA329_2389 == HEX_NUMBER || LA329_2389 == IDENTIFIER || LA329_2389 == INNER_SYMBOL || LA329_2389 == INTO_SYMBOL || LA329_2389 == IN_SYMBOL || LA329_2389 == IS_SYMBOL || ((LA329_2389 >= JOIN_SYMBOL) && (LA329_2389 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2389 >= LEFT_SYMBOL) && (LA329_2389 <= LESS_THAN_OPERATOR)) || ((LA329_2389 >= LIKE_SYMBOL) && (LA329_2389 <= LIMIT_SYMBOL)) || LA329_2389 == LOCK_SYMBOL || LA329_2389 == LOGICAL_AND_OPERATOR || LA329_2389 == LOGICAL_OR_OPERATOR || LA329_2389 == MINUS_OPERATOR || ((LA329_2389 >= MOD_OPERATOR) && (LA329_2389 <= MOD_SYMBOL)) || ((LA329_2389 >= MULT_OPERATOR) && (LA329_2389 <= NATURAL_SYMBOL)) || ((LA329_2389 >= NOT_EQUAL2_OPERATOR) && (LA329_2389 <= NOT_SYMBOL)) || LA329_2389 == NULL_SAFE_EQUAL_OPERATOR || LA329_2389 == ON_SYMBOL || LA329_2389 == OPEN_PAR_SYMBOL || ((LA329_2389 >= ORDER_SYMBOL) && (LA329_2389 <= OR_SYMBOL)) || LA329_2389 == PLUS_OPERATOR || LA329_2389 == PROCEDURE_SYMBOL || LA329_2389 == REGEXP_SYMBOL || LA329_2389 == RIGHT_SYMBOL || LA329_2389 == SEMICOLON_SYMBOL || LA329_2389 == SET_SYMBOL || ((LA329_2389 >= SHIFT_LEFT_OPERATOR) && (LA329_2389 <= SHIFT_RIGHT_OPERATOR)) || LA329_2389 == SINGLE_QUOTED_TEXT || LA329_2389 == STRAIGHT_JOIN_SYMBOL || LA329_2389 == UNION_SYMBOL || LA329_2389 == USING_SYMBOL || LA329_2389 == WHERE_SYMBOL || LA329_2389 == WITH_SYMBOL || LA329_2389 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2389;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_211 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2390 = LA(4);
                                        if ( (LA329_2390 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3275 = LA(5);
                                                if ( (LA329_3275 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3275 >= ACCOUNT_SYMBOL) && (LA329_3275 <= YEAR_SYMBOL)) || LA329_3275 == BACK_TICK_QUOTED_ID || LA329_3275 == DOUBLE_QUOTED_TEXT || LA329_3275 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3275;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2390 == EOF || ((LA329_2390 >= ACCOUNT_SYMBOL) && (LA329_2390 <= YEAR_SYMBOL)) || LA329_2390 == AND_SYMBOL || LA329_2390 == AS_SYMBOL || LA329_2390 == BACK_TICK_QUOTED_ID || LA329_2390 == BETWEEN_SYMBOL || LA329_2390 == BIN_NUMBER || LA329_2390 == BITWISE_AND_OPERATOR || ((LA329_2390 >= BITWISE_OR_OPERATOR) && (LA329_2390 <= BITWISE_XOR_OPERATOR)) || ((LA329_2390 >= CLOSE_CURLY_SYMBOL) && (LA329_2390 <= COLLATE_SYMBOL)) || LA329_2390 == COMMA_SYMBOL || LA329_2390 == CONCAT_PIPES_SYMBOL || LA329_2390 == CROSS_SYMBOL || ((LA329_2390 >= DIV_OPERATOR) && (LA329_2390 <= DIV_SYMBOL)) || LA329_2390 == DOUBLE_QUOTED_TEXT || LA329_2390 == EQUAL_OPERATOR || LA329_2390 == FOR_SYMBOL || LA329_2390 == FROM_SYMBOL || ((LA329_2390 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2390 <= GREATER_THAN_OPERATOR)) || ((LA329_2390 >= GROUP_SYMBOL) && (LA329_2390 <= HAVING_SYMBOL)) || LA329_2390 == HEX_NUMBER || LA329_2390 == IDENTIFIER || LA329_2390 == INNER_SYMBOL || LA329_2390 == INTO_SYMBOL || LA329_2390 == IN_SYMBOL || LA329_2390 == IS_SYMBOL || ((LA329_2390 >= JOIN_SYMBOL) && (LA329_2390 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2390 >= LEFT_SYMBOL) && (LA329_2390 <= LESS_THAN_OPERATOR)) || ((LA329_2390 >= LIKE_SYMBOL) && (LA329_2390 <= LIMIT_SYMBOL)) || LA329_2390 == LOCK_SYMBOL || LA329_2390 == LOGICAL_AND_OPERATOR || LA329_2390 == LOGICAL_OR_OPERATOR || LA329_2390 == MINUS_OPERATOR || ((LA329_2390 >= MOD_OPERATOR) && (LA329_2390 <= MOD_SYMBOL)) || ((LA329_2390 >= MULT_OPERATOR) && (LA329_2390 <= NATURAL_SYMBOL)) || ((LA329_2390 >= NOT_EQUAL2_OPERATOR) && (LA329_2390 <= NOT_SYMBOL)) || LA329_2390 == NULL_SAFE_EQUAL_OPERATOR || LA329_2390 == ON_SYMBOL || LA329_2390 == OPEN_PAR_SYMBOL || ((LA329_2390 >= ORDER_SYMBOL) && (LA329_2390 <= OR_SYMBOL)) || LA329_2390 == PLUS_OPERATOR || LA329_2390 == PROCEDURE_SYMBOL || LA329_2390 == REGEXP_SYMBOL || LA329_2390 == RIGHT_SYMBOL || LA329_2390 == SEMICOLON_SYMBOL || LA329_2390 == SET_SYMBOL || ((LA329_2390 >= SHIFT_LEFT_OPERATOR) && (LA329_2390 <= SHIFT_RIGHT_OPERATOR)) || LA329_2390 == SINGLE_QUOTED_TEXT || LA329_2390 == STRAIGHT_JOIN_SYMBOL || LA329_2390 == UNION_SYMBOL || LA329_2390 == USING_SYMBOL || LA329_2390 == WHERE_SYMBOL || LA329_2390 == WITH_SYMBOL || LA329_2390 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2390;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_211 >= ACTION_SYMBOL) && (LA329_211 <= SHARE_SYMBOL)) || ((LA329_211 >= SLOW_SYMBOL) && (LA329_211 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2391 = LA(4);
                                        if ( (LA329_2391 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3329 = LA(5);
                                                if ( (LA329_3329 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3329 >= ACCOUNT_SYMBOL) && (LA329_3329 <= YEAR_SYMBOL)) || LA329_3329 == BACK_TICK_QUOTED_ID || LA329_3329 == DOUBLE_QUOTED_TEXT || LA329_3329 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3329;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2391 == EOF || ((LA329_2391 >= ACCOUNT_SYMBOL) && (LA329_2391 <= YEAR_SYMBOL)) || LA329_2391 == AND_SYMBOL || LA329_2391 == AS_SYMBOL || LA329_2391 == BACK_TICK_QUOTED_ID || LA329_2391 == BETWEEN_SYMBOL || LA329_2391 == BIN_NUMBER || LA329_2391 == BITWISE_AND_OPERATOR || ((LA329_2391 >= BITWISE_OR_OPERATOR) && (LA329_2391 <= BITWISE_XOR_OPERATOR)) || ((LA329_2391 >= CLOSE_CURLY_SYMBOL) && (LA329_2391 <= COLLATE_SYMBOL)) || LA329_2391 == COMMA_SYMBOL || LA329_2391 == CONCAT_PIPES_SYMBOL || LA329_2391 == CROSS_SYMBOL || ((LA329_2391 >= DIV_OPERATOR) && (LA329_2391 <= DIV_SYMBOL)) || LA329_2391 == DOUBLE_QUOTED_TEXT || LA329_2391 == EQUAL_OPERATOR || LA329_2391 == FOR_SYMBOL || LA329_2391 == FROM_SYMBOL || ((LA329_2391 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2391 <= GREATER_THAN_OPERATOR)) || ((LA329_2391 >= GROUP_SYMBOL) && (LA329_2391 <= HAVING_SYMBOL)) || LA329_2391 == HEX_NUMBER || LA329_2391 == IDENTIFIER || LA329_2391 == INNER_SYMBOL || LA329_2391 == INTO_SYMBOL || LA329_2391 == IN_SYMBOL || LA329_2391 == IS_SYMBOL || ((LA329_2391 >= JOIN_SYMBOL) && (LA329_2391 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2391 >= LEFT_SYMBOL) && (LA329_2391 <= LESS_THAN_OPERATOR)) || ((LA329_2391 >= LIKE_SYMBOL) && (LA329_2391 <= LIMIT_SYMBOL)) || LA329_2391 == LOCK_SYMBOL || LA329_2391 == LOGICAL_AND_OPERATOR || LA329_2391 == LOGICAL_OR_OPERATOR || LA329_2391 == MINUS_OPERATOR || ((LA329_2391 >= MOD_OPERATOR) && (LA329_2391 <= MOD_SYMBOL)) || ((LA329_2391 >= MULT_OPERATOR) && (LA329_2391 <= NATURAL_SYMBOL)) || ((LA329_2391 >= NOT_EQUAL2_OPERATOR) && (LA329_2391 <= NOT_SYMBOL)) || LA329_2391 == NULL_SAFE_EQUAL_OPERATOR || LA329_2391 == ON_SYMBOL || LA329_2391 == OPEN_PAR_SYMBOL || ((LA329_2391 >= ORDER_SYMBOL) && (LA329_2391 <= OR_SYMBOL)) || LA329_2391 == PLUS_OPERATOR || LA329_2391 == PROCEDURE_SYMBOL || LA329_2391 == REGEXP_SYMBOL || LA329_2391 == RIGHT_SYMBOL || LA329_2391 == SEMICOLON_SYMBOL || LA329_2391 == SET_SYMBOL || ((LA329_2391 >= SHIFT_LEFT_OPERATOR) && (LA329_2391 <= SHIFT_RIGHT_OPERATOR)) || LA329_2391 == SINGLE_QUOTED_TEXT || LA329_2391 == STRAIGHT_JOIN_SYMBOL || LA329_2391 == UNION_SYMBOL || LA329_2391 == USING_SYMBOL || LA329_2391 == WHERE_SYMBOL || LA329_2391 == WITH_SYMBOL || LA329_2391 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2391;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_211 >= ACCOUNT_SYMBOL) && (LA329_211 <= XA_SYMBOL)) || LA329_211 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2392 = LA(4);
                                        if ( (LA329_2392 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3383 = LA(5);
                                                if ( (LA329_3383 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3383 >= ACCOUNT_SYMBOL) && (LA329_3383 <= YEAR_SYMBOL)) || LA329_3383 == BACK_TICK_QUOTED_ID || LA329_3383 == DOUBLE_QUOTED_TEXT || LA329_3383 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3383;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2392 == EOF || ((LA329_2392 >= ACCOUNT_SYMBOL) && (LA329_2392 <= YEAR_SYMBOL)) || LA329_2392 == AND_SYMBOL || LA329_2392 == AS_SYMBOL || LA329_2392 == BACK_TICK_QUOTED_ID || LA329_2392 == BETWEEN_SYMBOL || LA329_2392 == BIN_NUMBER || LA329_2392 == BITWISE_AND_OPERATOR || ((LA329_2392 >= BITWISE_OR_OPERATOR) && (LA329_2392 <= BITWISE_XOR_OPERATOR)) || ((LA329_2392 >= CLOSE_CURLY_SYMBOL) && (LA329_2392 <= COLLATE_SYMBOL)) || LA329_2392 == COMMA_SYMBOL || LA329_2392 == CONCAT_PIPES_SYMBOL || LA329_2392 == CROSS_SYMBOL || ((LA329_2392 >= DIV_OPERATOR) && (LA329_2392 <= DIV_SYMBOL)) || LA329_2392 == DOUBLE_QUOTED_TEXT || LA329_2392 == EQUAL_OPERATOR || LA329_2392 == FOR_SYMBOL || LA329_2392 == FROM_SYMBOL || ((LA329_2392 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2392 <= GREATER_THAN_OPERATOR)) || ((LA329_2392 >= GROUP_SYMBOL) && (LA329_2392 <= HAVING_SYMBOL)) || LA329_2392 == HEX_NUMBER || LA329_2392 == IDENTIFIER || LA329_2392 == INNER_SYMBOL || LA329_2392 == INTO_SYMBOL || LA329_2392 == IN_SYMBOL || LA329_2392 == IS_SYMBOL || ((LA329_2392 >= JOIN_SYMBOL) && (LA329_2392 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2392 >= LEFT_SYMBOL) && (LA329_2392 <= LESS_THAN_OPERATOR)) || ((LA329_2392 >= LIKE_SYMBOL) && (LA329_2392 <= LIMIT_SYMBOL)) || LA329_2392 == LOCK_SYMBOL || LA329_2392 == LOGICAL_AND_OPERATOR || LA329_2392 == LOGICAL_OR_OPERATOR || LA329_2392 == MINUS_OPERATOR || ((LA329_2392 >= MOD_OPERATOR) && (LA329_2392 <= MOD_SYMBOL)) || ((LA329_2392 >= MULT_OPERATOR) && (LA329_2392 <= NATURAL_SYMBOL)) || ((LA329_2392 >= NOT_EQUAL2_OPERATOR) && (LA329_2392 <= NOT_SYMBOL)) || LA329_2392 == NULL_SAFE_EQUAL_OPERATOR || LA329_2392 == ON_SYMBOL || LA329_2392 == OPEN_PAR_SYMBOL || ((LA329_2392 >= ORDER_SYMBOL) && (LA329_2392 <= OR_SYMBOL)) || LA329_2392 == PLUS_OPERATOR || LA329_2392 == PROCEDURE_SYMBOL || LA329_2392 == REGEXP_SYMBOL || LA329_2392 == RIGHT_SYMBOL || LA329_2392 == SEMICOLON_SYMBOL || LA329_2392 == SET_SYMBOL || ((LA329_2392 >= SHIFT_LEFT_OPERATOR) && (LA329_2392 <= SHIFT_RIGHT_OPERATOR)) || LA329_2392 == SINGLE_QUOTED_TEXT || LA329_2392 == STRAIGHT_JOIN_SYMBOL || LA329_2392 == UNION_SYMBOL || LA329_2392 == USING_SYMBOL || LA329_2392 == WHERE_SYMBOL || LA329_2392 == WITH_SYMBOL || LA329_2392 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2392;


                                            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  = 329;
                                    EXCEPTION->state        = 211;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_3 == EOF || ((LA329_3 >= ACCOUNT_SYMBOL) && (LA329_3 <= YEAR_SYMBOL)) || LA329_3 == AND_SYMBOL || LA329_3 == AS_SYMBOL || LA329_3 == BACK_TICK_QUOTED_ID || LA329_3 == BETWEEN_SYMBOL || LA329_3 == BIN_NUMBER || LA329_3 == BITWISE_AND_OPERATOR || ((LA329_3 >= BITWISE_OR_OPERATOR) && (LA329_3 <= BITWISE_XOR_OPERATOR)) || ((LA329_3 >= CLOSE_CURLY_SYMBOL) && (LA329_3 <= COLLATE_SYMBOL)) || LA329_3 == COMMA_SYMBOL || LA329_3 == CONCAT_PIPES_SYMBOL || LA329_3 == CROSS_SYMBOL || ((LA329_3 >= DIV_OPERATOR) && (LA329_3 <= DIV_SYMBOL)) || LA329_3 == DOUBLE_QUOTED_TEXT || LA329_3 == EQUAL_OPERATOR || LA329_3 == FOR_SYMBOL || LA329_3 == FROM_SYMBOL || ((LA329_3 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_3 <= GREATER_THAN_OPERATOR)) || ((LA329_3 >= GROUP_SYMBOL) && (LA329_3 <= HAVING_SYMBOL)) || LA329_3 == HEX_NUMBER || LA329_3 == IDENTIFIER || LA329_3 == INNER_SYMBOL || LA329_3 == INTO_SYMBOL || LA329_3 == IN_SYMBOL || LA329_3 == IS_SYMBOL || ((LA329_3 >= JOIN_SYMBOL) && (LA329_3 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_3 >= LEFT_SYMBOL) && (LA329_3 <= LESS_THAN_OPERATOR)) || ((LA329_3 >= LIKE_SYMBOL) && (LA329_3 <= LIMIT_SYMBOL)) || LA329_3 == LOCK_SYMBOL || LA329_3 == LOGICAL_AND_OPERATOR || LA329_3 == LOGICAL_OR_OPERATOR || LA329_3 == MINUS_OPERATOR || ((LA329_3 >= MOD_OPERATOR) && (LA329_3 <= MOD_SYMBOL)) || ((LA329_3 >= MULT_OPERATOR) && (LA329_3 <= NATURAL_SYMBOL)) || ((LA329_3 >= NOT_EQUAL2_OPERATOR) && (LA329_3 <= NOT_SYMBOL)) || LA329_3 == NULL_SAFE_EQUAL_OPERATOR || LA329_3 == ON_SYMBOL || LA329_3 == OPEN_PAR_SYMBOL || ((LA329_3 >= ORDER_SYMBOL) && (LA329_3 <= OR_SYMBOL)) || LA329_3 == PLUS_OPERATOR || LA329_3 == PROCEDURE_SYMBOL || LA329_3 == REGEXP_SYMBOL || LA329_3 == RIGHT_SYMBOL || LA329_3 == SEMICOLON_SYMBOL || LA329_3 == SET_SYMBOL || ((LA329_3 >= SHIFT_LEFT_OPERATOR) && (LA329_3 <= SHIFT_RIGHT_OPERATOR)) || LA329_3 == SINGLE_QUOTED_TEXT || LA329_3 == STRAIGHT_JOIN_SYMBOL || LA329_3 == UNION_SYMBOL || LA329_3 == USING_SYMBOL || LA329_3 == WHERE_SYMBOL || LA329_3 == WITH_SYMBOL || LA329_3 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 3;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == DATE_SYMBOL))
                {
                    {
                        int LA329_4 = LA(2);
                        if ( (LA329_4 == EOF || ((LA329_4 >= ACCOUNT_SYMBOL) && (LA329_4 <= YEAR_SYMBOL)) || LA329_4 == AND_SYMBOL || LA329_4 == AS_SYMBOL || LA329_4 == BACK_TICK_QUOTED_ID || LA329_4 == BETWEEN_SYMBOL || LA329_4 == BIN_NUMBER || LA329_4 == BITWISE_AND_OPERATOR || ((LA329_4 >= BITWISE_OR_OPERATOR) && (LA329_4 <= BITWISE_XOR_OPERATOR)) || ((LA329_4 >= CLOSE_CURLY_SYMBOL) && (LA329_4 <= COLLATE_SYMBOL)) || LA329_4 == COMMA_SYMBOL || LA329_4 == CONCAT_PIPES_SYMBOL || LA329_4 == CROSS_SYMBOL || ((LA329_4 >= DIV_OPERATOR) && (LA329_4 <= DIV_SYMBOL)) || LA329_4 == DOUBLE_QUOTED_TEXT || LA329_4 == EQUAL_OPERATOR || LA329_4 == FOR_SYMBOL || LA329_4 == FROM_SYMBOL || ((LA329_4 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_4 <= GREATER_THAN_OPERATOR)) || ((LA329_4 >= GROUP_SYMBOL) && (LA329_4 <= HAVING_SYMBOL)) || LA329_4 == HEX_NUMBER || LA329_4 == IDENTIFIER || LA329_4 == INNER_SYMBOL || LA329_4 == INTO_SYMBOL || LA329_4 == IN_SYMBOL || LA329_4 == IS_SYMBOL || ((LA329_4 >= JOIN_SYMBOL) && (LA329_4 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_4 >= LEFT_SYMBOL) && (LA329_4 <= LESS_THAN_OPERATOR)) || ((LA329_4 >= LIKE_SYMBOL) && (LA329_4 <= LIMIT_SYMBOL)) || LA329_4 == LOCK_SYMBOL || LA329_4 == LOGICAL_AND_OPERATOR || LA329_4 == LOGICAL_OR_OPERATOR || LA329_4 == MINUS_OPERATOR || ((LA329_4 >= MOD_OPERATOR) && (LA329_4 <= MOD_SYMBOL)) || ((LA329_4 >= MULT_OPERATOR) && (LA329_4 <= NATURAL_SYMBOL)) || ((LA329_4 >= NOT_EQUAL2_OPERATOR) && (LA329_4 <= NOT_SYMBOL)) || LA329_4 == NULL_SAFE_EQUAL_OPERATOR || LA329_4 == ON_SYMBOL || LA329_4 == OPEN_PAR_SYMBOL || ((LA329_4 >= ORDER_SYMBOL) && (LA329_4 <= OR_SYMBOL)) || LA329_4 == PLUS_OPERATOR || LA329_4 == PROCEDURE_SYMBOL || LA329_4 == REGEXP_SYMBOL || LA329_4 == RIGHT_SYMBOL || LA329_4 == SEMICOLON_SYMBOL || LA329_4 == SET_SYMBOL || ((LA329_4 >= SHIFT_LEFT_OPERATOR) && (LA329_4 <= SHIFT_RIGHT_OPERATOR)) || LA329_4 == SINGLE_QUOTED_TEXT || LA329_4 == STRAIGHT_JOIN_SYMBOL || LA329_4 == UNION_SYMBOL || LA329_4 == USING_SYMBOL || LA329_4 == WHERE_SYMBOL || LA329_4 == WITH_SYMBOL || LA329_4 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_4 == DOT_SYMBOL))
                        {
                            {
                                int LA329_268 = LA(3);
                                if ( (LA329_268 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_268 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2394 = LA(4);
                                        if ( (LA329_2394 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3437 = LA(5);
                                                if ( (LA329_3437 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3437 >= ACCOUNT_SYMBOL) && (LA329_3437 <= YEAR_SYMBOL)) || LA329_3437 == BACK_TICK_QUOTED_ID || LA329_3437 == DOUBLE_QUOTED_TEXT || LA329_3437 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3437;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2394 == EOF || ((LA329_2394 >= ACCOUNT_SYMBOL) && (LA329_2394 <= YEAR_SYMBOL)) || LA329_2394 == AND_SYMBOL || LA329_2394 == AS_SYMBOL || LA329_2394 == BACK_TICK_QUOTED_ID || LA329_2394 == BETWEEN_SYMBOL || LA329_2394 == BIN_NUMBER || LA329_2394 == BITWISE_AND_OPERATOR || ((LA329_2394 >= BITWISE_OR_OPERATOR) && (LA329_2394 <= BITWISE_XOR_OPERATOR)) || ((LA329_2394 >= CLOSE_CURLY_SYMBOL) && (LA329_2394 <= COLLATE_SYMBOL)) || LA329_2394 == COMMA_SYMBOL || LA329_2394 == CONCAT_PIPES_SYMBOL || LA329_2394 == CROSS_SYMBOL || ((LA329_2394 >= DIV_OPERATOR) && (LA329_2394 <= DIV_SYMBOL)) || LA329_2394 == DOUBLE_QUOTED_TEXT || LA329_2394 == EQUAL_OPERATOR || LA329_2394 == FOR_SYMBOL || LA329_2394 == FROM_SYMBOL || ((LA329_2394 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2394 <= GREATER_THAN_OPERATOR)) || ((LA329_2394 >= GROUP_SYMBOL) && (LA329_2394 <= HAVING_SYMBOL)) || LA329_2394 == HEX_NUMBER || LA329_2394 == IDENTIFIER || LA329_2394 == INNER_SYMBOL || LA329_2394 == INTO_SYMBOL || LA329_2394 == IN_SYMBOL || LA329_2394 == IS_SYMBOL || ((LA329_2394 >= JOIN_SYMBOL) && (LA329_2394 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2394 >= LEFT_SYMBOL) && (LA329_2394 <= LESS_THAN_OPERATOR)) || ((LA329_2394 >= LIKE_SYMBOL) && (LA329_2394 <= LIMIT_SYMBOL)) || LA329_2394 == LOCK_SYMBOL || LA329_2394 == LOGICAL_AND_OPERATOR || LA329_2394 == LOGICAL_OR_OPERATOR || LA329_2394 == MINUS_OPERATOR || ((LA329_2394 >= MOD_OPERATOR) && (LA329_2394 <= MOD_SYMBOL)) || ((LA329_2394 >= MULT_OPERATOR) && (LA329_2394 <= NATURAL_SYMBOL)) || ((LA329_2394 >= NOT_EQUAL2_OPERATOR) && (LA329_2394 <= NOT_SYMBOL)) || LA329_2394 == NULL_SAFE_EQUAL_OPERATOR || LA329_2394 == ON_SYMBOL || LA329_2394 == OPEN_PAR_SYMBOL || ((LA329_2394 >= ORDER_SYMBOL) && (LA329_2394 <= OR_SYMBOL)) || LA329_2394 == PLUS_OPERATOR || LA329_2394 == PROCEDURE_SYMBOL || LA329_2394 == REGEXP_SYMBOL || LA329_2394 == RIGHT_SYMBOL || LA329_2394 == SEMICOLON_SYMBOL || LA329_2394 == SET_SYMBOL || ((LA329_2394 >= SHIFT_LEFT_OPERATOR) && (LA329_2394 <= SHIFT_RIGHT_OPERATOR)) || LA329_2394 == SINGLE_QUOTED_TEXT || LA329_2394 == STRAIGHT_JOIN_SYMBOL || LA329_2394 == UNION_SYMBOL || LA329_2394 == USING_SYMBOL || LA329_2394 == WHERE_SYMBOL || LA329_2394 == WITH_SYMBOL || LA329_2394 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2394;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_268 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2395 = LA(4);
                                        if ( (LA329_2395 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3491 = LA(5);
                                                if ( (LA329_3491 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3491 >= ACCOUNT_SYMBOL) && (LA329_3491 <= YEAR_SYMBOL)) || LA329_3491 == BACK_TICK_QUOTED_ID || LA329_3491 == DOUBLE_QUOTED_TEXT || LA329_3491 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3491;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2395 == EOF || ((LA329_2395 >= ACCOUNT_SYMBOL) && (LA329_2395 <= YEAR_SYMBOL)) || LA329_2395 == AND_SYMBOL || LA329_2395 == AS_SYMBOL || LA329_2395 == BACK_TICK_QUOTED_ID || LA329_2395 == BETWEEN_SYMBOL || LA329_2395 == BIN_NUMBER || LA329_2395 == BITWISE_AND_OPERATOR || ((LA329_2395 >= BITWISE_OR_OPERATOR) && (LA329_2395 <= BITWISE_XOR_OPERATOR)) || ((LA329_2395 >= CLOSE_CURLY_SYMBOL) && (LA329_2395 <= COLLATE_SYMBOL)) || LA329_2395 == COMMA_SYMBOL || LA329_2395 == CONCAT_PIPES_SYMBOL || LA329_2395 == CROSS_SYMBOL || ((LA329_2395 >= DIV_OPERATOR) && (LA329_2395 <= DIV_SYMBOL)) || LA329_2395 == DOUBLE_QUOTED_TEXT || LA329_2395 == EQUAL_OPERATOR || LA329_2395 == FOR_SYMBOL || LA329_2395 == FROM_SYMBOL || ((LA329_2395 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2395 <= GREATER_THAN_OPERATOR)) || ((LA329_2395 >= GROUP_SYMBOL) && (LA329_2395 <= HAVING_SYMBOL)) || LA329_2395 == HEX_NUMBER || LA329_2395 == IDENTIFIER || LA329_2395 == INNER_SYMBOL || LA329_2395 == INTO_SYMBOL || LA329_2395 == IN_SYMBOL || LA329_2395 == IS_SYMBOL || ((LA329_2395 >= JOIN_SYMBOL) && (LA329_2395 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2395 >= LEFT_SYMBOL) && (LA329_2395 <= LESS_THAN_OPERATOR)) || ((LA329_2395 >= LIKE_SYMBOL) && (LA329_2395 <= LIMIT_SYMBOL)) || LA329_2395 == LOCK_SYMBOL || LA329_2395 == LOGICAL_AND_OPERATOR || LA329_2395 == LOGICAL_OR_OPERATOR || LA329_2395 == MINUS_OPERATOR || ((LA329_2395 >= MOD_OPERATOR) && (LA329_2395 <= MOD_SYMBOL)) || ((LA329_2395 >= MULT_OPERATOR) && (LA329_2395 <= NATURAL_SYMBOL)) || ((LA329_2395 >= NOT_EQUAL2_OPERATOR) && (LA329_2395 <= NOT_SYMBOL)) || LA329_2395 == NULL_SAFE_EQUAL_OPERATOR || LA329_2395 == ON_SYMBOL || LA329_2395 == OPEN_PAR_SYMBOL || ((LA329_2395 >= ORDER_SYMBOL) && (LA329_2395 <= OR_SYMBOL)) || LA329_2395 == PLUS_OPERATOR || LA329_2395 == PROCEDURE_SYMBOL || LA329_2395 == REGEXP_SYMBOL || LA329_2395 == RIGHT_SYMBOL || LA329_2395 == SEMICOLON_SYMBOL || LA329_2395 == SET_SYMBOL || ((LA329_2395 >= SHIFT_LEFT_OPERATOR) && (LA329_2395 <= SHIFT_RIGHT_OPERATOR)) || LA329_2395 == SINGLE_QUOTED_TEXT || LA329_2395 == STRAIGHT_JOIN_SYMBOL || LA329_2395 == UNION_SYMBOL || LA329_2395 == USING_SYMBOL || LA329_2395 == WHERE_SYMBOL || LA329_2395 == WITH_SYMBOL || LA329_2395 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2395;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_268 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2396 = LA(4);
                                        if ( (LA329_2396 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3545 = LA(5);
                                                if ( (LA329_3545 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3545 >= ACCOUNT_SYMBOL) && (LA329_3545 <= YEAR_SYMBOL)) || LA329_3545 == BACK_TICK_QUOTED_ID || LA329_3545 == DOUBLE_QUOTED_TEXT || LA329_3545 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3545;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2396 == EOF || ((LA329_2396 >= ACCOUNT_SYMBOL) && (LA329_2396 <= YEAR_SYMBOL)) || LA329_2396 == AND_SYMBOL || LA329_2396 == AS_SYMBOL || LA329_2396 == BACK_TICK_QUOTED_ID || LA329_2396 == BETWEEN_SYMBOL || LA329_2396 == BIN_NUMBER || LA329_2396 == BITWISE_AND_OPERATOR || ((LA329_2396 >= BITWISE_OR_OPERATOR) && (LA329_2396 <= BITWISE_XOR_OPERATOR)) || ((LA329_2396 >= CLOSE_CURLY_SYMBOL) && (LA329_2396 <= COLLATE_SYMBOL)) || LA329_2396 == COMMA_SYMBOL || LA329_2396 == CONCAT_PIPES_SYMBOL || LA329_2396 == CROSS_SYMBOL || ((LA329_2396 >= DIV_OPERATOR) && (LA329_2396 <= DIV_SYMBOL)) || LA329_2396 == DOUBLE_QUOTED_TEXT || LA329_2396 == EQUAL_OPERATOR || LA329_2396 == FOR_SYMBOL || LA329_2396 == FROM_SYMBOL || ((LA329_2396 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2396 <= GREATER_THAN_OPERATOR)) || ((LA329_2396 >= GROUP_SYMBOL) && (LA329_2396 <= HAVING_SYMBOL)) || LA329_2396 == HEX_NUMBER || LA329_2396 == IDENTIFIER || LA329_2396 == INNER_SYMBOL || LA329_2396 == INTO_SYMBOL || LA329_2396 == IN_SYMBOL || LA329_2396 == IS_SYMBOL || ((LA329_2396 >= JOIN_SYMBOL) && (LA329_2396 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2396 >= LEFT_SYMBOL) && (LA329_2396 <= LESS_THAN_OPERATOR)) || ((LA329_2396 >= LIKE_SYMBOL) && (LA329_2396 <= LIMIT_SYMBOL)) || LA329_2396 == LOCK_SYMBOL || LA329_2396 == LOGICAL_AND_OPERATOR || LA329_2396 == LOGICAL_OR_OPERATOR || LA329_2396 == MINUS_OPERATOR || ((LA329_2396 >= MOD_OPERATOR) && (LA329_2396 <= MOD_SYMBOL)) || ((LA329_2396 >= MULT_OPERATOR) && (LA329_2396 <= NATURAL_SYMBOL)) || ((LA329_2396 >= NOT_EQUAL2_OPERATOR) && (LA329_2396 <= NOT_SYMBOL)) || LA329_2396 == NULL_SAFE_EQUAL_OPERATOR || LA329_2396 == ON_SYMBOL || LA329_2396 == OPEN_PAR_SYMBOL || ((LA329_2396 >= ORDER_SYMBOL) && (LA329_2396 <= OR_SYMBOL)) || LA329_2396 == PLUS_OPERATOR || LA329_2396 == PROCEDURE_SYMBOL || LA329_2396 == REGEXP_SYMBOL || LA329_2396 == RIGHT_SYMBOL || LA329_2396 == SEMICOLON_SYMBOL || LA329_2396 == SET_SYMBOL || ((LA329_2396 >= SHIFT_LEFT_OPERATOR) && (LA329_2396 <= SHIFT_RIGHT_OPERATOR)) || LA329_2396 == SINGLE_QUOTED_TEXT || LA329_2396 == STRAIGHT_JOIN_SYMBOL || LA329_2396 == UNION_SYMBOL || LA329_2396 == USING_SYMBOL || LA329_2396 == WHERE_SYMBOL || LA329_2396 == WITH_SYMBOL || LA329_2396 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2396;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_268 >= ACTION_SYMBOL) && (LA329_268 <= SHARE_SYMBOL)) || ((LA329_268 >= SLOW_SYMBOL) && (LA329_268 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2397 = LA(4);
                                        if ( (LA329_2397 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3599 = LA(5);
                                                if ( (LA329_3599 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3599 >= ACCOUNT_SYMBOL) && (LA329_3599 <= YEAR_SYMBOL)) || LA329_3599 == BACK_TICK_QUOTED_ID || LA329_3599 == DOUBLE_QUOTED_TEXT || LA329_3599 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3599;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2397 == EOF || ((LA329_2397 >= ACCOUNT_SYMBOL) && (LA329_2397 <= YEAR_SYMBOL)) || LA329_2397 == AND_SYMBOL || LA329_2397 == AS_SYMBOL || LA329_2397 == BACK_TICK_QUOTED_ID || LA329_2397 == BETWEEN_SYMBOL || LA329_2397 == BIN_NUMBER || LA329_2397 == BITWISE_AND_OPERATOR || ((LA329_2397 >= BITWISE_OR_OPERATOR) && (LA329_2397 <= BITWISE_XOR_OPERATOR)) || ((LA329_2397 >= CLOSE_CURLY_SYMBOL) && (LA329_2397 <= COLLATE_SYMBOL)) || LA329_2397 == COMMA_SYMBOL || LA329_2397 == CONCAT_PIPES_SYMBOL || LA329_2397 == CROSS_SYMBOL || ((LA329_2397 >= DIV_OPERATOR) && (LA329_2397 <= DIV_SYMBOL)) || LA329_2397 == DOUBLE_QUOTED_TEXT || LA329_2397 == EQUAL_OPERATOR || LA329_2397 == FOR_SYMBOL || LA329_2397 == FROM_SYMBOL || ((LA329_2397 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2397 <= GREATER_THAN_OPERATOR)) || ((LA329_2397 >= GROUP_SYMBOL) && (LA329_2397 <= HAVING_SYMBOL)) || LA329_2397 == HEX_NUMBER || LA329_2397 == IDENTIFIER || LA329_2397 == INNER_SYMBOL || LA329_2397 == INTO_SYMBOL || LA329_2397 == IN_SYMBOL || LA329_2397 == IS_SYMBOL || ((LA329_2397 >= JOIN_SYMBOL) && (LA329_2397 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2397 >= LEFT_SYMBOL) && (LA329_2397 <= LESS_THAN_OPERATOR)) || ((LA329_2397 >= LIKE_SYMBOL) && (LA329_2397 <= LIMIT_SYMBOL)) || LA329_2397 == LOCK_SYMBOL || LA329_2397 == LOGICAL_AND_OPERATOR || LA329_2397 == LOGICAL_OR_OPERATOR || LA329_2397 == MINUS_OPERATOR || ((LA329_2397 >= MOD_OPERATOR) && (LA329_2397 <= MOD_SYMBOL)) || ((LA329_2397 >= MULT_OPERATOR) && (LA329_2397 <= NATURAL_SYMBOL)) || ((LA329_2397 >= NOT_EQUAL2_OPERATOR) && (LA329_2397 <= NOT_SYMBOL)) || LA329_2397 == NULL_SAFE_EQUAL_OPERATOR || LA329_2397 == ON_SYMBOL || LA329_2397 == OPEN_PAR_SYMBOL || ((LA329_2397 >= ORDER_SYMBOL) && (LA329_2397 <= OR_SYMBOL)) || LA329_2397 == PLUS_OPERATOR || LA329_2397 == PROCEDURE_SYMBOL || LA329_2397 == REGEXP_SYMBOL || LA329_2397 == RIGHT_SYMBOL || LA329_2397 == SEMICOLON_SYMBOL || LA329_2397 == SET_SYMBOL || ((LA329_2397 >= SHIFT_LEFT_OPERATOR) && (LA329_2397 <= SHIFT_RIGHT_OPERATOR)) || LA329_2397 == SINGLE_QUOTED_TEXT || LA329_2397 == STRAIGHT_JOIN_SYMBOL || LA329_2397 == UNION_SYMBOL || LA329_2397 == USING_SYMBOL || LA329_2397 == WHERE_SYMBOL || LA329_2397 == WITH_SYMBOL || LA329_2397 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2397;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_268 >= ACCOUNT_SYMBOL) && (LA329_268 <= XA_SYMBOL)) || LA329_268 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2398 = LA(4);
                                        if ( (LA329_2398 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3653 = LA(5);
                                                if ( (LA329_3653 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3653 >= ACCOUNT_SYMBOL) && (LA329_3653 <= YEAR_SYMBOL)) || LA329_3653 == BACK_TICK_QUOTED_ID || LA329_3653 == DOUBLE_QUOTED_TEXT || LA329_3653 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3653;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2398 == EOF || ((LA329_2398 >= ACCOUNT_SYMBOL) && (LA329_2398 <= YEAR_SYMBOL)) || LA329_2398 == AND_SYMBOL || LA329_2398 == AS_SYMBOL || LA329_2398 == BACK_TICK_QUOTED_ID || LA329_2398 == BETWEEN_SYMBOL || LA329_2398 == BIN_NUMBER || LA329_2398 == BITWISE_AND_OPERATOR || ((LA329_2398 >= BITWISE_OR_OPERATOR) && (LA329_2398 <= BITWISE_XOR_OPERATOR)) || ((LA329_2398 >= CLOSE_CURLY_SYMBOL) && (LA329_2398 <= COLLATE_SYMBOL)) || LA329_2398 == COMMA_SYMBOL || LA329_2398 == CONCAT_PIPES_SYMBOL || LA329_2398 == CROSS_SYMBOL || ((LA329_2398 >= DIV_OPERATOR) && (LA329_2398 <= DIV_SYMBOL)) || LA329_2398 == DOUBLE_QUOTED_TEXT || LA329_2398 == EQUAL_OPERATOR || LA329_2398 == FOR_SYMBOL || LA329_2398 == FROM_SYMBOL || ((LA329_2398 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2398 <= GREATER_THAN_OPERATOR)) || ((LA329_2398 >= GROUP_SYMBOL) && (LA329_2398 <= HAVING_SYMBOL)) || LA329_2398 == HEX_NUMBER || LA329_2398 == IDENTIFIER || LA329_2398 == INNER_SYMBOL || LA329_2398 == INTO_SYMBOL || LA329_2398 == IN_SYMBOL || LA329_2398 == IS_SYMBOL || ((LA329_2398 >= JOIN_SYMBOL) && (LA329_2398 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2398 >= LEFT_SYMBOL) && (LA329_2398 <= LESS_THAN_OPERATOR)) || ((LA329_2398 >= LIKE_SYMBOL) && (LA329_2398 <= LIMIT_SYMBOL)) || LA329_2398 == LOCK_SYMBOL || LA329_2398 == LOGICAL_AND_OPERATOR || LA329_2398 == LOGICAL_OR_OPERATOR || LA329_2398 == MINUS_OPERATOR || ((LA329_2398 >= MOD_OPERATOR) && (LA329_2398 <= MOD_SYMBOL)) || ((LA329_2398 >= MULT_OPERATOR) && (LA329_2398 <= NATURAL_SYMBOL)) || ((LA329_2398 >= NOT_EQUAL2_OPERATOR) && (LA329_2398 <= NOT_SYMBOL)) || LA329_2398 == NULL_SAFE_EQUAL_OPERATOR || LA329_2398 == ON_SYMBOL || LA329_2398 == OPEN_PAR_SYMBOL || ((LA329_2398 >= ORDER_SYMBOL) && (LA329_2398 <= OR_SYMBOL)) || LA329_2398 == PLUS_OPERATOR || LA329_2398 == PROCEDURE_SYMBOL || LA329_2398 == REGEXP_SYMBOL || LA329_2398 == RIGHT_SYMBOL || LA329_2398 == SEMICOLON_SYMBOL || LA329_2398 == SET_SYMBOL || ((LA329_2398 >= SHIFT_LEFT_OPERATOR) && (LA329_2398 <= SHIFT_RIGHT_OPERATOR)) || LA329_2398 == SINGLE_QUOTED_TEXT || LA329_2398 == STRAIGHT_JOIN_SYMBOL || LA329_2398 == UNION_SYMBOL || LA329_2398 == USING_SYMBOL || LA329_2398 == WHERE_SYMBOL || LA329_2398 == WITH_SYMBOL || LA329_2398 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2398;


                                            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  = 329;
                                    EXCEPTION->state        = 268;


                                    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  = 329;
                            EXCEPTION->state        = 4;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == ASCII_SYMBOL))
                {
                    {
                        int LA329_5 = LA(2);
                        if ( (LA329_5 == EOF || ((LA329_5 >= ACCOUNT_SYMBOL) && (LA329_5 <= YEAR_SYMBOL)) || LA329_5 == AND_SYMBOL || LA329_5 == AS_SYMBOL || LA329_5 == BACK_TICK_QUOTED_ID || LA329_5 == BETWEEN_SYMBOL || LA329_5 == BIN_NUMBER || LA329_5 == BITWISE_AND_OPERATOR || ((LA329_5 >= BITWISE_OR_OPERATOR) && (LA329_5 <= BITWISE_XOR_OPERATOR)) || ((LA329_5 >= CLOSE_CURLY_SYMBOL) && (LA329_5 <= COLLATE_SYMBOL)) || LA329_5 == COMMA_SYMBOL || LA329_5 == CONCAT_PIPES_SYMBOL || LA329_5 == CROSS_SYMBOL || ((LA329_5 >= DIV_OPERATOR) && (LA329_5 <= DIV_SYMBOL)) || LA329_5 == DOUBLE_QUOTED_TEXT || LA329_5 == EQUAL_OPERATOR || LA329_5 == FOR_SYMBOL || LA329_5 == FROM_SYMBOL || ((LA329_5 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_5 <= GREATER_THAN_OPERATOR)) || ((LA329_5 >= GROUP_SYMBOL) && (LA329_5 <= HAVING_SYMBOL)) || LA329_5 == HEX_NUMBER || LA329_5 == IDENTIFIER || LA329_5 == INNER_SYMBOL || LA329_5 == INTO_SYMBOL || LA329_5 == IN_SYMBOL || LA329_5 == IS_SYMBOL || ((LA329_5 >= JOIN_SYMBOL) && (LA329_5 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_5 >= LEFT_SYMBOL) && (LA329_5 <= LESS_THAN_OPERATOR)) || ((LA329_5 >= LIKE_SYMBOL) && (LA329_5 <= LIMIT_SYMBOL)) || LA329_5 == LOCK_SYMBOL || LA329_5 == LOGICAL_AND_OPERATOR || LA329_5 == LOGICAL_OR_OPERATOR || LA329_5 == MINUS_OPERATOR || ((LA329_5 >= MOD_OPERATOR) && (LA329_5 <= MOD_SYMBOL)) || ((LA329_5 >= MULT_OPERATOR) && (LA329_5 <= NATURAL_SYMBOL)) || ((LA329_5 >= NOT_EQUAL2_OPERATOR) && (LA329_5 <= NOT_SYMBOL)) || LA329_5 == NULL_SAFE_EQUAL_OPERATOR || LA329_5 == ON_SYMBOL || LA329_5 == OPEN_PAR_SYMBOL || ((LA329_5 >= ORDER_SYMBOL) && (LA329_5 <= OR_SYMBOL)) || LA329_5 == PLUS_OPERATOR || LA329_5 == PROCEDURE_SYMBOL || LA329_5 == REGEXP_SYMBOL || LA329_5 == RIGHT_SYMBOL || LA329_5 == SEMICOLON_SYMBOL || LA329_5 == SET_SYMBOL || ((LA329_5 >= SHIFT_LEFT_OPERATOR) && (LA329_5 <= SHIFT_RIGHT_OPERATOR)) || LA329_5 == SINGLE_QUOTED_TEXT || LA329_5 == STRAIGHT_JOIN_SYMBOL || LA329_5 == UNION_SYMBOL || LA329_5 == USING_SYMBOL || LA329_5 == WHERE_SYMBOL || LA329_5 == WITH_SYMBOL || LA329_5 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_5 == DOT_SYMBOL))
                        {
                            {
                                int LA329_322 = LA(3);
                                if ( (LA329_322 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_322 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2400 = LA(4);
                                        if ( (LA329_2400 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3707 = LA(5);
                                                if ( (LA329_3707 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3707 >= ACCOUNT_SYMBOL) && (LA329_3707 <= YEAR_SYMBOL)) || LA329_3707 == BACK_TICK_QUOTED_ID || LA329_3707 == DOUBLE_QUOTED_TEXT || LA329_3707 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3707;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2400 == EOF || ((LA329_2400 >= ACCOUNT_SYMBOL) && (LA329_2400 <= YEAR_SYMBOL)) || LA329_2400 == AND_SYMBOL || LA329_2400 == AS_SYMBOL || LA329_2400 == BACK_TICK_QUOTED_ID || LA329_2400 == BETWEEN_SYMBOL || LA329_2400 == BIN_NUMBER || LA329_2400 == BITWISE_AND_OPERATOR || ((LA329_2400 >= BITWISE_OR_OPERATOR) && (LA329_2400 <= BITWISE_XOR_OPERATOR)) || ((LA329_2400 >= CLOSE_CURLY_SYMBOL) && (LA329_2400 <= COLLATE_SYMBOL)) || LA329_2400 == COMMA_SYMBOL || LA329_2400 == CONCAT_PIPES_SYMBOL || LA329_2400 == CROSS_SYMBOL || ((LA329_2400 >= DIV_OPERATOR) && (LA329_2400 <= DIV_SYMBOL)) || LA329_2400 == DOUBLE_QUOTED_TEXT || LA329_2400 == EQUAL_OPERATOR || LA329_2400 == FOR_SYMBOL || LA329_2400 == FROM_SYMBOL || ((LA329_2400 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2400 <= GREATER_THAN_OPERATOR)) || ((LA329_2400 >= GROUP_SYMBOL) && (LA329_2400 <= HAVING_SYMBOL)) || LA329_2400 == HEX_NUMBER || LA329_2400 == IDENTIFIER || LA329_2400 == INNER_SYMBOL || LA329_2400 == INTO_SYMBOL || LA329_2400 == IN_SYMBOL || LA329_2400 == IS_SYMBOL || ((LA329_2400 >= JOIN_SYMBOL) && (LA329_2400 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2400 >= LEFT_SYMBOL) && (LA329_2400 <= LESS_THAN_OPERATOR)) || ((LA329_2400 >= LIKE_SYMBOL) && (LA329_2400 <= LIMIT_SYMBOL)) || LA329_2400 == LOCK_SYMBOL || LA329_2400 == LOGICAL_AND_OPERATOR || LA329_2400 == LOGICAL_OR_OPERATOR || LA329_2400 == MINUS_OPERATOR || ((LA329_2400 >= MOD_OPERATOR) && (LA329_2400 <= MOD_SYMBOL)) || ((LA329_2400 >= MULT_OPERATOR) && (LA329_2400 <= NATURAL_SYMBOL)) || ((LA329_2400 >= NOT_EQUAL2_OPERATOR) && (LA329_2400 <= NOT_SYMBOL)) || LA329_2400 == NULL_SAFE_EQUAL_OPERATOR || LA329_2400 == ON_SYMBOL || LA329_2400 == OPEN_PAR_SYMBOL || ((LA329_2400 >= ORDER_SYMBOL) && (LA329_2400 <= OR_SYMBOL)) || LA329_2400 == PLUS_OPERATOR || LA329_2400 == PROCEDURE_SYMBOL || LA329_2400 == REGEXP_SYMBOL || LA329_2400 == RIGHT_SYMBOL || LA329_2400 == SEMICOLON_SYMBOL || LA329_2400 == SET_SYMBOL || ((LA329_2400 >= SHIFT_LEFT_OPERATOR) && (LA329_2400 <= SHIFT_RIGHT_OPERATOR)) || LA329_2400 == SINGLE_QUOTED_TEXT || LA329_2400 == STRAIGHT_JOIN_SYMBOL || LA329_2400 == UNION_SYMBOL || LA329_2400 == USING_SYMBOL || LA329_2400 == WHERE_SYMBOL || LA329_2400 == WITH_SYMBOL || LA329_2400 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2400;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_322 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2401 = LA(4);
                                        if ( (LA329_2401 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3761 = LA(5);
                                                if ( (LA329_3761 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3761 >= ACCOUNT_SYMBOL) && (LA329_3761 <= YEAR_SYMBOL)) || LA329_3761 == BACK_TICK_QUOTED_ID || LA329_3761 == DOUBLE_QUOTED_TEXT || LA329_3761 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3761;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2401 == EOF || ((LA329_2401 >= ACCOUNT_SYMBOL) && (LA329_2401 <= YEAR_SYMBOL)) || LA329_2401 == AND_SYMBOL || LA329_2401 == AS_SYMBOL || LA329_2401 == BACK_TICK_QUOTED_ID || LA329_2401 == BETWEEN_SYMBOL || LA329_2401 == BIN_NUMBER || LA329_2401 == BITWISE_AND_OPERATOR || ((LA329_2401 >= BITWISE_OR_OPERATOR) && (LA329_2401 <= BITWISE_XOR_OPERATOR)) || ((LA329_2401 >= CLOSE_CURLY_SYMBOL) && (LA329_2401 <= COLLATE_SYMBOL)) || LA329_2401 == COMMA_SYMBOL || LA329_2401 == CONCAT_PIPES_SYMBOL || LA329_2401 == CROSS_SYMBOL || ((LA329_2401 >= DIV_OPERATOR) && (LA329_2401 <= DIV_SYMBOL)) || LA329_2401 == DOUBLE_QUOTED_TEXT || LA329_2401 == EQUAL_OPERATOR || LA329_2401 == FOR_SYMBOL || LA329_2401 == FROM_SYMBOL || ((LA329_2401 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2401 <= GREATER_THAN_OPERATOR)) || ((LA329_2401 >= GROUP_SYMBOL) && (LA329_2401 <= HAVING_SYMBOL)) || LA329_2401 == HEX_NUMBER || LA329_2401 == IDENTIFIER || LA329_2401 == INNER_SYMBOL || LA329_2401 == INTO_SYMBOL || LA329_2401 == IN_SYMBOL || LA329_2401 == IS_SYMBOL || ((LA329_2401 >= JOIN_SYMBOL) && (LA329_2401 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2401 >= LEFT_SYMBOL) && (LA329_2401 <= LESS_THAN_OPERATOR)) || ((LA329_2401 >= LIKE_SYMBOL) && (LA329_2401 <= LIMIT_SYMBOL)) || LA329_2401 == LOCK_SYMBOL || LA329_2401 == LOGICAL_AND_OPERATOR || LA329_2401 == LOGICAL_OR_OPERATOR || LA329_2401 == MINUS_OPERATOR || ((LA329_2401 >= MOD_OPERATOR) && (LA329_2401 <= MOD_SYMBOL)) || ((LA329_2401 >= MULT_OPERATOR) && (LA329_2401 <= NATURAL_SYMBOL)) || ((LA329_2401 >= NOT_EQUAL2_OPERATOR) && (LA329_2401 <= NOT_SYMBOL)) || LA329_2401 == NULL_SAFE_EQUAL_OPERATOR || LA329_2401 == ON_SYMBOL || LA329_2401 == OPEN_PAR_SYMBOL || ((LA329_2401 >= ORDER_SYMBOL) && (LA329_2401 <= OR_SYMBOL)) || LA329_2401 == PLUS_OPERATOR || LA329_2401 == PROCEDURE_SYMBOL || LA329_2401 == REGEXP_SYMBOL || LA329_2401 == RIGHT_SYMBOL || LA329_2401 == SEMICOLON_SYMBOL || LA329_2401 == SET_SYMBOL || ((LA329_2401 >= SHIFT_LEFT_OPERATOR) && (LA329_2401 <= SHIFT_RIGHT_OPERATOR)) || LA329_2401 == SINGLE_QUOTED_TEXT || LA329_2401 == STRAIGHT_JOIN_SYMBOL || LA329_2401 == UNION_SYMBOL || LA329_2401 == USING_SYMBOL || LA329_2401 == WHERE_SYMBOL || LA329_2401 == WITH_SYMBOL || LA329_2401 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2401;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_322 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2402 = LA(4);
                                        if ( (LA329_2402 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3815 = LA(5);
                                                if ( (LA329_3815 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3815 >= ACCOUNT_SYMBOL) && (LA329_3815 <= YEAR_SYMBOL)) || LA329_3815 == BACK_TICK_QUOTED_ID || LA329_3815 == DOUBLE_QUOTED_TEXT || LA329_3815 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3815;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2402 == EOF || ((LA329_2402 >= ACCOUNT_SYMBOL) && (LA329_2402 <= YEAR_SYMBOL)) || LA329_2402 == AND_SYMBOL || LA329_2402 == AS_SYMBOL || LA329_2402 == BACK_TICK_QUOTED_ID || LA329_2402 == BETWEEN_SYMBOL || LA329_2402 == BIN_NUMBER || LA329_2402 == BITWISE_AND_OPERATOR || ((LA329_2402 >= BITWISE_OR_OPERATOR) && (LA329_2402 <= BITWISE_XOR_OPERATOR)) || ((LA329_2402 >= CLOSE_CURLY_SYMBOL) && (LA329_2402 <= COLLATE_SYMBOL)) || LA329_2402 == COMMA_SYMBOL || LA329_2402 == CONCAT_PIPES_SYMBOL || LA329_2402 == CROSS_SYMBOL || ((LA329_2402 >= DIV_OPERATOR) && (LA329_2402 <= DIV_SYMBOL)) || LA329_2402 == DOUBLE_QUOTED_TEXT || LA329_2402 == EQUAL_OPERATOR || LA329_2402 == FOR_SYMBOL || LA329_2402 == FROM_SYMBOL || ((LA329_2402 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2402 <= GREATER_THAN_OPERATOR)) || ((LA329_2402 >= GROUP_SYMBOL) && (LA329_2402 <= HAVING_SYMBOL)) || LA329_2402 == HEX_NUMBER || LA329_2402 == IDENTIFIER || LA329_2402 == INNER_SYMBOL || LA329_2402 == INTO_SYMBOL || LA329_2402 == IN_SYMBOL || LA329_2402 == IS_SYMBOL || ((LA329_2402 >= JOIN_SYMBOL) && (LA329_2402 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2402 >= LEFT_SYMBOL) && (LA329_2402 <= LESS_THAN_OPERATOR)) || ((LA329_2402 >= LIKE_SYMBOL) && (LA329_2402 <= LIMIT_SYMBOL)) || LA329_2402 == LOCK_SYMBOL || LA329_2402 == LOGICAL_AND_OPERATOR || LA329_2402 == LOGICAL_OR_OPERATOR || LA329_2402 == MINUS_OPERATOR || ((LA329_2402 >= MOD_OPERATOR) && (LA329_2402 <= MOD_SYMBOL)) || ((LA329_2402 >= MULT_OPERATOR) && (LA329_2402 <= NATURAL_SYMBOL)) || ((LA329_2402 >= NOT_EQUAL2_OPERATOR) && (LA329_2402 <= NOT_SYMBOL)) || LA329_2402 == NULL_SAFE_EQUAL_OPERATOR || LA329_2402 == ON_SYMBOL || LA329_2402 == OPEN_PAR_SYMBOL || ((LA329_2402 >= ORDER_SYMBOL) && (LA329_2402 <= OR_SYMBOL)) || LA329_2402 == PLUS_OPERATOR || LA329_2402 == PROCEDURE_SYMBOL || LA329_2402 == REGEXP_SYMBOL || LA329_2402 == RIGHT_SYMBOL || LA329_2402 == SEMICOLON_SYMBOL || LA329_2402 == SET_SYMBOL || ((LA329_2402 >= SHIFT_LEFT_OPERATOR) && (LA329_2402 <= SHIFT_RIGHT_OPERATOR)) || LA329_2402 == SINGLE_QUOTED_TEXT || LA329_2402 == STRAIGHT_JOIN_SYMBOL || LA329_2402 == UNION_SYMBOL || LA329_2402 == USING_SYMBOL || LA329_2402 == WHERE_SYMBOL || LA329_2402 == WITH_SYMBOL || LA329_2402 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2402;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_322 >= ACTION_SYMBOL) && (LA329_322 <= SHARE_SYMBOL)) || ((LA329_322 >= SLOW_SYMBOL) && (LA329_322 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2403 = LA(4);
                                        if ( (LA329_2403 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3869 = LA(5);
                                                if ( (LA329_3869 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3869 >= ACCOUNT_SYMBOL) && (LA329_3869 <= YEAR_SYMBOL)) || LA329_3869 == BACK_TICK_QUOTED_ID || LA329_3869 == DOUBLE_QUOTED_TEXT || LA329_3869 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3869;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2403 == EOF || ((LA329_2403 >= ACCOUNT_SYMBOL) && (LA329_2403 <= YEAR_SYMBOL)) || LA329_2403 == AND_SYMBOL || LA329_2403 == AS_SYMBOL || LA329_2403 == BACK_TICK_QUOTED_ID || LA329_2403 == BETWEEN_SYMBOL || LA329_2403 == BIN_NUMBER || LA329_2403 == BITWISE_AND_OPERATOR || ((LA329_2403 >= BITWISE_OR_OPERATOR) && (LA329_2403 <= BITWISE_XOR_OPERATOR)) || ((LA329_2403 >= CLOSE_CURLY_SYMBOL) && (LA329_2403 <= COLLATE_SYMBOL)) || LA329_2403 == COMMA_SYMBOL || LA329_2403 == CONCAT_PIPES_SYMBOL || LA329_2403 == CROSS_SYMBOL || ((LA329_2403 >= DIV_OPERATOR) && (LA329_2403 <= DIV_SYMBOL)) || LA329_2403 == DOUBLE_QUOTED_TEXT || LA329_2403 == EQUAL_OPERATOR || LA329_2403 == FOR_SYMBOL || LA329_2403 == FROM_SYMBOL || ((LA329_2403 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2403 <= GREATER_THAN_OPERATOR)) || ((LA329_2403 >= GROUP_SYMBOL) && (LA329_2403 <= HAVING_SYMBOL)) || LA329_2403 == HEX_NUMBER || LA329_2403 == IDENTIFIER || LA329_2403 == INNER_SYMBOL || LA329_2403 == INTO_SYMBOL || LA329_2403 == IN_SYMBOL || LA329_2403 == IS_SYMBOL || ((LA329_2403 >= JOIN_SYMBOL) && (LA329_2403 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2403 >= LEFT_SYMBOL) && (LA329_2403 <= LESS_THAN_OPERATOR)) || ((LA329_2403 >= LIKE_SYMBOL) && (LA329_2403 <= LIMIT_SYMBOL)) || LA329_2403 == LOCK_SYMBOL || LA329_2403 == LOGICAL_AND_OPERATOR || LA329_2403 == LOGICAL_OR_OPERATOR || LA329_2403 == MINUS_OPERATOR || ((LA329_2403 >= MOD_OPERATOR) && (LA329_2403 <= MOD_SYMBOL)) || ((LA329_2403 >= MULT_OPERATOR) && (LA329_2403 <= NATURAL_SYMBOL)) || ((LA329_2403 >= NOT_EQUAL2_OPERATOR) && (LA329_2403 <= NOT_SYMBOL)) || LA329_2403 == NULL_SAFE_EQUAL_OPERATOR || LA329_2403 == ON_SYMBOL || LA329_2403 == OPEN_PAR_SYMBOL || ((LA329_2403 >= ORDER_SYMBOL) && (LA329_2403 <= OR_SYMBOL)) || LA329_2403 == PLUS_OPERATOR || LA329_2403 == PROCEDURE_SYMBOL || LA329_2403 == REGEXP_SYMBOL || LA329_2403 == RIGHT_SYMBOL || LA329_2403 == SEMICOLON_SYMBOL || LA329_2403 == SET_SYMBOL || ((LA329_2403 >= SHIFT_LEFT_OPERATOR) && (LA329_2403 <= SHIFT_RIGHT_OPERATOR)) || LA329_2403 == SINGLE_QUOTED_TEXT || LA329_2403 == STRAIGHT_JOIN_SYMBOL || LA329_2403 == UNION_SYMBOL || LA329_2403 == USING_SYMBOL || LA329_2403 == WHERE_SYMBOL || LA329_2403 == WITH_SYMBOL || LA329_2403 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2403;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_322 >= ACCOUNT_SYMBOL) && (LA329_322 <= XA_SYMBOL)) || LA329_322 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2404 = LA(4);
                                        if ( (LA329_2404 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3923 = LA(5);
                                                if ( (LA329_3923 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3923 >= ACCOUNT_SYMBOL) && (LA329_3923 <= YEAR_SYMBOL)) || LA329_3923 == BACK_TICK_QUOTED_ID || LA329_3923 == DOUBLE_QUOTED_TEXT || LA329_3923 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3923;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2404 == EOF || ((LA329_2404 >= ACCOUNT_SYMBOL) && (LA329_2404 <= YEAR_SYMBOL)) || LA329_2404 == AND_SYMBOL || LA329_2404 == AS_SYMBOL || LA329_2404 == BACK_TICK_QUOTED_ID || LA329_2404 == BETWEEN_SYMBOL || LA329_2404 == BIN_NUMBER || LA329_2404 == BITWISE_AND_OPERATOR || ((LA329_2404 >= BITWISE_OR_OPERATOR) && (LA329_2404 <= BITWISE_XOR_OPERATOR)) || ((LA329_2404 >= CLOSE_CURLY_SYMBOL) && (LA329_2404 <= COLLATE_SYMBOL)) || LA329_2404 == COMMA_SYMBOL || LA329_2404 == CONCAT_PIPES_SYMBOL || LA329_2404 == CROSS_SYMBOL || ((LA329_2404 >= DIV_OPERATOR) && (LA329_2404 <= DIV_SYMBOL)) || LA329_2404 == DOUBLE_QUOTED_TEXT || LA329_2404 == EQUAL_OPERATOR || LA329_2404 == FOR_SYMBOL || LA329_2404 == FROM_SYMBOL || ((LA329_2404 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2404 <= GREATER_THAN_OPERATOR)) || ((LA329_2404 >= GROUP_SYMBOL) && (LA329_2404 <= HAVING_SYMBOL)) || LA329_2404 == HEX_NUMBER || LA329_2404 == IDENTIFIER || LA329_2404 == INNER_SYMBOL || LA329_2404 == INTO_SYMBOL || LA329_2404 == IN_SYMBOL || LA329_2404 == IS_SYMBOL || ((LA329_2404 >= JOIN_SYMBOL) && (LA329_2404 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2404 >= LEFT_SYMBOL) && (LA329_2404 <= LESS_THAN_OPERATOR)) || ((LA329_2404 >= LIKE_SYMBOL) && (LA329_2404 <= LIMIT_SYMBOL)) || LA329_2404 == LOCK_SYMBOL || LA329_2404 == LOGICAL_AND_OPERATOR || LA329_2404 == LOGICAL_OR_OPERATOR || LA329_2404 == MINUS_OPERATOR || ((LA329_2404 >= MOD_OPERATOR) && (LA329_2404 <= MOD_SYMBOL)) || ((LA329_2404 >= MULT_OPERATOR) && (LA329_2404 <= NATURAL_SYMBOL)) || ((LA329_2404 >= NOT_EQUAL2_OPERATOR) && (LA329_2404 <= NOT_SYMBOL)) || LA329_2404 == NULL_SAFE_EQUAL_OPERATOR || LA329_2404 == ON_SYMBOL || LA329_2404 == OPEN_PAR_SYMBOL || ((LA329_2404 >= ORDER_SYMBOL) && (LA329_2404 <= OR_SYMBOL)) || LA329_2404 == PLUS_OPERATOR || LA329_2404 == PROCEDURE_SYMBOL || LA329_2404 == REGEXP_SYMBOL || LA329_2404 == RIGHT_SYMBOL || LA329_2404 == SEMICOLON_SYMBOL || LA329_2404 == SET_SYMBOL || ((LA329_2404 >= SHIFT_LEFT_OPERATOR) && (LA329_2404 <= SHIFT_RIGHT_OPERATOR)) || LA329_2404 == SINGLE_QUOTED_TEXT || LA329_2404 == STRAIGHT_JOIN_SYMBOL || LA329_2404 == UNION_SYMBOL || LA329_2404 == USING_SYMBOL || LA329_2404 == WHERE_SYMBOL || LA329_2404 == WITH_SYMBOL || LA329_2404 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2404;


                                            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  = 329;
                                    EXCEPTION->state        = 322;


                                    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  = 329;
                            EXCEPTION->state        = 5;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (((LA329_0 >= AT_AT_SIGN_SYMBOL) && (LA329_0 <= AT_TEXT_SUFFIX)) || ((LA329_0 >= BINARY_SYMBOL) && (LA329_0 <= BIN_NUMBER)) || LA329_0 == BITWISE_NOT_OPERATOR || ((LA329_0 >= BIT_AND_SYMBOL) && (LA329_0 <= BIT_XOR_SYMBOL)) || ((LA329_0 >= CASE_SYMBOL) && (LA329_0 <= CAST_SYMBOL)) || LA329_0 == CHAR_SYMBOL || ((LA329_0 >= CONVERT_SYMBOL) && (LA329_0 <= COUNT_SYMBOL)) || LA329_0 == CURDATE_SYMBOL || LA329_0 == CURRENT_USER_SYMBOL || LA329_0 == CURTIME_SYMBOL || LA329_0 == DATABASE_SYMBOL || LA329_0 == DATE_ADD_SYMBOL || LA329_0 == DATE_SUB_SYMBOL || LA329_0 == DECIMAL_NUMBER || LA329_0 == DOT_SYMBOL || LA329_0 == EXISTS_SYMBOL || ((LA329_0 >= EXTRACT_SYMBOL) && (LA329_0 <= FALSE_SYMBOL)) || LA329_0 == FLOAT_NUMBER || LA329_0 == GROUP_CONCAT_SYMBOL || LA329_0 == HEX_NUMBER || LA329_0 == IF_SYMBOL || LA329_0 == INSERT_SYMBOL || LA329_0 == INTERVAL_SYMBOL || LA329_0 == INT_NUMBER || LA329_0 == LEFT_SYMBOL || LA329_0 == LOGICAL_NOT_OPERATOR || LA329_0 == LONG_NUMBER || LA329_0 == MATCH_SYMBOL || LA329_0 == MAX_SYMBOL || LA329_0 == MINUS_OPERATOR || LA329_0 == MIN_SYMBOL || LA329_0 == MOD_SYMBOL || LA329_0 == NCHAR_TEXT || LA329_0 == NOT2_SYMBOL || ((LA329_0 >= NOT_SYMBOL) && (LA329_0 <= NOW_SYMBOL)) || LA329_0 == NULL2_SYMBOL || LA329_0 == NULL_SYMBOL || ((LA329_0 >= OPEN_CURLY_SYMBOL) && (LA329_0 <= OPEN_PAR_SYMBOL)) || LA329_0 == PARAM_MARKER || ((LA329_0 >= PLUS_OPERATOR) && (LA329_0 <= POSITION_SYMBOL)) || ((LA329_0 >= REPEAT_SYMBOL) && (LA329_0 <= REPLACE_SYMBOL)) || LA329_0 == RIGHT_SYMBOL || LA329_0 == SINGLE_QUOTED_TEXT || LA329_0 == STDDEV_SAMP_SYMBOL || LA329_0 == STD_SYMBOL || LA329_0 == SUBSTRING_SYMBOL || ((LA329_0 >= SUM_SYMBOL) && (LA329_0 <= SYSDATE_SYMBOL)) || ((LA329_0 >= TRIM_SYMBOL) && (LA329_0 <= TRUE_SYMBOL)) || LA329_0 == ULONGLONG_NUMBER || LA329_0 == UNDERSCORE_CHARSET || ((LA329_0 >= UTC_DATE_SYMBOL) && (LA329_0 <= UTC_TIME_SYMBOL)) || LA329_0 == VALUES_SYMBOL || LA329_0 == VARIANCE_SYMBOL || LA329_0 == VAR_SAMP_SYMBOL))
                {
                    alt329=2;
                }
                else if ( (LA329_0 == TIME_SYMBOL))
                {
                    {
                        int LA329_14 = LA(2);
                        if ( (LA329_14 == EOF || ((LA329_14 >= ACCOUNT_SYMBOL) && (LA329_14 <= YEAR_SYMBOL)) || LA329_14 == AND_SYMBOL || LA329_14 == AS_SYMBOL || LA329_14 == BACK_TICK_QUOTED_ID || LA329_14 == BETWEEN_SYMBOL || LA329_14 == BIN_NUMBER || LA329_14 == BITWISE_AND_OPERATOR || ((LA329_14 >= BITWISE_OR_OPERATOR) && (LA329_14 <= BITWISE_XOR_OPERATOR)) || ((LA329_14 >= CLOSE_CURLY_SYMBOL) && (LA329_14 <= COLLATE_SYMBOL)) || LA329_14 == COMMA_SYMBOL || LA329_14 == CONCAT_PIPES_SYMBOL || LA329_14 == CROSS_SYMBOL || ((LA329_14 >= DIV_OPERATOR) && (LA329_14 <= DIV_SYMBOL)) || LA329_14 == DOUBLE_QUOTED_TEXT || LA329_14 == EQUAL_OPERATOR || LA329_14 == FOR_SYMBOL || LA329_14 == FROM_SYMBOL || ((LA329_14 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_14 <= GREATER_THAN_OPERATOR)) || ((LA329_14 >= GROUP_SYMBOL) && (LA329_14 <= HAVING_SYMBOL)) || LA329_14 == HEX_NUMBER || LA329_14 == IDENTIFIER || LA329_14 == INNER_SYMBOL || LA329_14 == INTO_SYMBOL || LA329_14 == IN_SYMBOL || LA329_14 == IS_SYMBOL || ((LA329_14 >= JOIN_SYMBOL) && (LA329_14 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_14 >= LEFT_SYMBOL) && (LA329_14 <= LESS_THAN_OPERATOR)) || ((LA329_14 >= LIKE_SYMBOL) && (LA329_14 <= LIMIT_SYMBOL)) || LA329_14 == LOCK_SYMBOL || LA329_14 == LOGICAL_AND_OPERATOR || LA329_14 == LOGICAL_OR_OPERATOR || LA329_14 == MINUS_OPERATOR || ((LA329_14 >= MOD_OPERATOR) && (LA329_14 <= MOD_SYMBOL)) || ((LA329_14 >= MULT_OPERATOR) && (LA329_14 <= NATURAL_SYMBOL)) || ((LA329_14 >= NOT_EQUAL2_OPERATOR) && (LA329_14 <= NOT_SYMBOL)) || LA329_14 == NULL_SAFE_EQUAL_OPERATOR || LA329_14 == ON_SYMBOL || LA329_14 == OPEN_PAR_SYMBOL || ((LA329_14 >= ORDER_SYMBOL) && (LA329_14 <= OR_SYMBOL)) || LA329_14 == PLUS_OPERATOR || LA329_14 == PROCEDURE_SYMBOL || LA329_14 == REGEXP_SYMBOL || LA329_14 == RIGHT_SYMBOL || LA329_14 == SEMICOLON_SYMBOL || LA329_14 == SET_SYMBOL || ((LA329_14 >= SHIFT_LEFT_OPERATOR) && (LA329_14 <= SHIFT_RIGHT_OPERATOR)) || LA329_14 == SINGLE_QUOTED_TEXT || LA329_14 == STRAIGHT_JOIN_SYMBOL || LA329_14 == UNION_SYMBOL || LA329_14 == USING_SYMBOL || LA329_14 == WHERE_SYMBOL || LA329_14 == WITH_SYMBOL || LA329_14 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_14 == DOT_SYMBOL))
                        {
                            {
                                int LA329_377 = LA(3);
                                if ( (LA329_377 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_377 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2406 = LA(4);
                                        if ( (LA329_2406 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_3977 = LA(5);
                                                if ( (LA329_3977 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_3977 >= ACCOUNT_SYMBOL) && (LA329_3977 <= YEAR_SYMBOL)) || LA329_3977 == BACK_TICK_QUOTED_ID || LA329_3977 == DOUBLE_QUOTED_TEXT || LA329_3977 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 3977;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2406 == EOF || ((LA329_2406 >= ACCOUNT_SYMBOL) && (LA329_2406 <= YEAR_SYMBOL)) || LA329_2406 == AND_SYMBOL || LA329_2406 == AS_SYMBOL || LA329_2406 == BACK_TICK_QUOTED_ID || LA329_2406 == BETWEEN_SYMBOL || LA329_2406 == BIN_NUMBER || LA329_2406 == BITWISE_AND_OPERATOR || ((LA329_2406 >= BITWISE_OR_OPERATOR) && (LA329_2406 <= BITWISE_XOR_OPERATOR)) || ((LA329_2406 >= CLOSE_CURLY_SYMBOL) && (LA329_2406 <= COLLATE_SYMBOL)) || LA329_2406 == COMMA_SYMBOL || LA329_2406 == CONCAT_PIPES_SYMBOL || LA329_2406 == CROSS_SYMBOL || ((LA329_2406 >= DIV_OPERATOR) && (LA329_2406 <= DIV_SYMBOL)) || LA329_2406 == DOUBLE_QUOTED_TEXT || LA329_2406 == EQUAL_OPERATOR || LA329_2406 == FOR_SYMBOL || LA329_2406 == FROM_SYMBOL || ((LA329_2406 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2406 <= GREATER_THAN_OPERATOR)) || ((LA329_2406 >= GROUP_SYMBOL) && (LA329_2406 <= HAVING_SYMBOL)) || LA329_2406 == HEX_NUMBER || LA329_2406 == IDENTIFIER || LA329_2406 == INNER_SYMBOL || LA329_2406 == INTO_SYMBOL || LA329_2406 == IN_SYMBOL || LA329_2406 == IS_SYMBOL || ((LA329_2406 >= JOIN_SYMBOL) && (LA329_2406 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2406 >= LEFT_SYMBOL) && (LA329_2406 <= LESS_THAN_OPERATOR)) || ((LA329_2406 >= LIKE_SYMBOL) && (LA329_2406 <= LIMIT_SYMBOL)) || LA329_2406 == LOCK_SYMBOL || LA329_2406 == LOGICAL_AND_OPERATOR || LA329_2406 == LOGICAL_OR_OPERATOR || LA329_2406 == MINUS_OPERATOR || ((LA329_2406 >= MOD_OPERATOR) && (LA329_2406 <= MOD_SYMBOL)) || ((LA329_2406 >= MULT_OPERATOR) && (LA329_2406 <= NATURAL_SYMBOL)) || ((LA329_2406 >= NOT_EQUAL2_OPERATOR) && (LA329_2406 <= NOT_SYMBOL)) || LA329_2406 == NULL_SAFE_EQUAL_OPERATOR || LA329_2406 == ON_SYMBOL || LA329_2406 == OPEN_PAR_SYMBOL || ((LA329_2406 >= ORDER_SYMBOL) && (LA329_2406 <= OR_SYMBOL)) || LA329_2406 == PLUS_OPERATOR || LA329_2406 == PROCEDURE_SYMBOL || LA329_2406 == REGEXP_SYMBOL || LA329_2406 == RIGHT_SYMBOL || LA329_2406 == SEMICOLON_SYMBOL || LA329_2406 == SET_SYMBOL || ((LA329_2406 >= SHIFT_LEFT_OPERATOR) && (LA329_2406 <= SHIFT_RIGHT_OPERATOR)) || LA329_2406 == SINGLE_QUOTED_TEXT || LA329_2406 == STRAIGHT_JOIN_SYMBOL || LA329_2406 == UNION_SYMBOL || LA329_2406 == USING_SYMBOL || LA329_2406 == WHERE_SYMBOL || LA329_2406 == WITH_SYMBOL || LA329_2406 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2406;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_377 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2407 = LA(4);
                                        if ( (LA329_2407 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4031 = LA(5);
                                                if ( (LA329_4031 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4031 >= ACCOUNT_SYMBOL) && (LA329_4031 <= YEAR_SYMBOL)) || LA329_4031 == BACK_TICK_QUOTED_ID || LA329_4031 == DOUBLE_QUOTED_TEXT || LA329_4031 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4031;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2407 == EOF || ((LA329_2407 >= ACCOUNT_SYMBOL) && (LA329_2407 <= YEAR_SYMBOL)) || LA329_2407 == AND_SYMBOL || LA329_2407 == AS_SYMBOL || LA329_2407 == BACK_TICK_QUOTED_ID || LA329_2407 == BETWEEN_SYMBOL || LA329_2407 == BIN_NUMBER || LA329_2407 == BITWISE_AND_OPERATOR || ((LA329_2407 >= BITWISE_OR_OPERATOR) && (LA329_2407 <= BITWISE_XOR_OPERATOR)) || ((LA329_2407 >= CLOSE_CURLY_SYMBOL) && (LA329_2407 <= COLLATE_SYMBOL)) || LA329_2407 == COMMA_SYMBOL || LA329_2407 == CONCAT_PIPES_SYMBOL || LA329_2407 == CROSS_SYMBOL || ((LA329_2407 >= DIV_OPERATOR) && (LA329_2407 <= DIV_SYMBOL)) || LA329_2407 == DOUBLE_QUOTED_TEXT || LA329_2407 == EQUAL_OPERATOR || LA329_2407 == FOR_SYMBOL || LA329_2407 == FROM_SYMBOL || ((LA329_2407 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2407 <= GREATER_THAN_OPERATOR)) || ((LA329_2407 >= GROUP_SYMBOL) && (LA329_2407 <= HAVING_SYMBOL)) || LA329_2407 == HEX_NUMBER || LA329_2407 == IDENTIFIER || LA329_2407 == INNER_SYMBOL || LA329_2407 == INTO_SYMBOL || LA329_2407 == IN_SYMBOL || LA329_2407 == IS_SYMBOL || ((LA329_2407 >= JOIN_SYMBOL) && (LA329_2407 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2407 >= LEFT_SYMBOL) && (LA329_2407 <= LESS_THAN_OPERATOR)) || ((LA329_2407 >= LIKE_SYMBOL) && (LA329_2407 <= LIMIT_SYMBOL)) || LA329_2407 == LOCK_SYMBOL || LA329_2407 == LOGICAL_AND_OPERATOR || LA329_2407 == LOGICAL_OR_OPERATOR || LA329_2407 == MINUS_OPERATOR || ((LA329_2407 >= MOD_OPERATOR) && (LA329_2407 <= MOD_SYMBOL)) || ((LA329_2407 >= MULT_OPERATOR) && (LA329_2407 <= NATURAL_SYMBOL)) || ((LA329_2407 >= NOT_EQUAL2_OPERATOR) && (LA329_2407 <= NOT_SYMBOL)) || LA329_2407 == NULL_SAFE_EQUAL_OPERATOR || LA329_2407 == ON_SYMBOL || LA329_2407 == OPEN_PAR_SYMBOL || ((LA329_2407 >= ORDER_SYMBOL) && (LA329_2407 <= OR_SYMBOL)) || LA329_2407 == PLUS_OPERATOR || LA329_2407 == PROCEDURE_SYMBOL || LA329_2407 == REGEXP_SYMBOL || LA329_2407 == RIGHT_SYMBOL || LA329_2407 == SEMICOLON_SYMBOL || LA329_2407 == SET_SYMBOL || ((LA329_2407 >= SHIFT_LEFT_OPERATOR) && (LA329_2407 <= SHIFT_RIGHT_OPERATOR)) || LA329_2407 == SINGLE_QUOTED_TEXT || LA329_2407 == STRAIGHT_JOIN_SYMBOL || LA329_2407 == UNION_SYMBOL || LA329_2407 == USING_SYMBOL || LA329_2407 == WHERE_SYMBOL || LA329_2407 == WITH_SYMBOL || LA329_2407 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2407;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_377 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2408 = LA(4);
                                        if ( (LA329_2408 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4085 = LA(5);
                                                if ( (LA329_4085 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4085 >= ACCOUNT_SYMBOL) && (LA329_4085 <= YEAR_SYMBOL)) || LA329_4085 == BACK_TICK_QUOTED_ID || LA329_4085 == DOUBLE_QUOTED_TEXT || LA329_4085 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4085;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2408 == EOF || ((LA329_2408 >= ACCOUNT_SYMBOL) && (LA329_2408 <= YEAR_SYMBOL)) || LA329_2408 == AND_SYMBOL || LA329_2408 == AS_SYMBOL || LA329_2408 == BACK_TICK_QUOTED_ID || LA329_2408 == BETWEEN_SYMBOL || LA329_2408 == BIN_NUMBER || LA329_2408 == BITWISE_AND_OPERATOR || ((LA329_2408 >= BITWISE_OR_OPERATOR) && (LA329_2408 <= BITWISE_XOR_OPERATOR)) || ((LA329_2408 >= CLOSE_CURLY_SYMBOL) && (LA329_2408 <= COLLATE_SYMBOL)) || LA329_2408 == COMMA_SYMBOL || LA329_2408 == CONCAT_PIPES_SYMBOL || LA329_2408 == CROSS_SYMBOL || ((LA329_2408 >= DIV_OPERATOR) && (LA329_2408 <= DIV_SYMBOL)) || LA329_2408 == DOUBLE_QUOTED_TEXT || LA329_2408 == EQUAL_OPERATOR || LA329_2408 == FOR_SYMBOL || LA329_2408 == FROM_SYMBOL || ((LA329_2408 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2408 <= GREATER_THAN_OPERATOR)) || ((LA329_2408 >= GROUP_SYMBOL) && (LA329_2408 <= HAVING_SYMBOL)) || LA329_2408 == HEX_NUMBER || LA329_2408 == IDENTIFIER || LA329_2408 == INNER_SYMBOL || LA329_2408 == INTO_SYMBOL || LA329_2408 == IN_SYMBOL || LA329_2408 == IS_SYMBOL || ((LA329_2408 >= JOIN_SYMBOL) && (LA329_2408 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2408 >= LEFT_SYMBOL) && (LA329_2408 <= LESS_THAN_OPERATOR)) || ((LA329_2408 >= LIKE_SYMBOL) && (LA329_2408 <= LIMIT_SYMBOL)) || LA329_2408 == LOCK_SYMBOL || LA329_2408 == LOGICAL_AND_OPERATOR || LA329_2408 == LOGICAL_OR_OPERATOR || LA329_2408 == MINUS_OPERATOR || ((LA329_2408 >= MOD_OPERATOR) && (LA329_2408 <= MOD_SYMBOL)) || ((LA329_2408 >= MULT_OPERATOR) && (LA329_2408 <= NATURAL_SYMBOL)) || ((LA329_2408 >= NOT_EQUAL2_OPERATOR) && (LA329_2408 <= NOT_SYMBOL)) || LA329_2408 == NULL_SAFE_EQUAL_OPERATOR || LA329_2408 == ON_SYMBOL || LA329_2408 == OPEN_PAR_SYMBOL || ((LA329_2408 >= ORDER_SYMBOL) && (LA329_2408 <= OR_SYMBOL)) || LA329_2408 == PLUS_OPERATOR || LA329_2408 == PROCEDURE_SYMBOL || LA329_2408 == REGEXP_SYMBOL || LA329_2408 == RIGHT_SYMBOL || LA329_2408 == SEMICOLON_SYMBOL || LA329_2408 == SET_SYMBOL || ((LA329_2408 >= SHIFT_LEFT_OPERATOR) && (LA329_2408 <= SHIFT_RIGHT_OPERATOR)) || LA329_2408 == SINGLE_QUOTED_TEXT || LA329_2408 == STRAIGHT_JOIN_SYMBOL || LA329_2408 == UNION_SYMBOL || LA329_2408 == USING_SYMBOL || LA329_2408 == WHERE_SYMBOL || LA329_2408 == WITH_SYMBOL || LA329_2408 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2408;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_377 >= ACTION_SYMBOL) && (LA329_377 <= SHARE_SYMBOL)) || ((LA329_377 >= SLOW_SYMBOL) && (LA329_377 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2409 = LA(4);
                                        if ( (LA329_2409 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4139 = LA(5);
                                                if ( (LA329_4139 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4139 >= ACCOUNT_SYMBOL) && (LA329_4139 <= YEAR_SYMBOL)) || LA329_4139 == BACK_TICK_QUOTED_ID || LA329_4139 == DOUBLE_QUOTED_TEXT || LA329_4139 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4139;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2409 == EOF || ((LA329_2409 >= ACCOUNT_SYMBOL) && (LA329_2409 <= YEAR_SYMBOL)) || LA329_2409 == AND_SYMBOL || LA329_2409 == AS_SYMBOL || LA329_2409 == BACK_TICK_QUOTED_ID || LA329_2409 == BETWEEN_SYMBOL || LA329_2409 == BIN_NUMBER || LA329_2409 == BITWISE_AND_OPERATOR || ((LA329_2409 >= BITWISE_OR_OPERATOR) && (LA329_2409 <= BITWISE_XOR_OPERATOR)) || ((LA329_2409 >= CLOSE_CURLY_SYMBOL) && (LA329_2409 <= COLLATE_SYMBOL)) || LA329_2409 == COMMA_SYMBOL || LA329_2409 == CONCAT_PIPES_SYMBOL || LA329_2409 == CROSS_SYMBOL || ((LA329_2409 >= DIV_OPERATOR) && (LA329_2409 <= DIV_SYMBOL)) || LA329_2409 == DOUBLE_QUOTED_TEXT || LA329_2409 == EQUAL_OPERATOR || LA329_2409 == FOR_SYMBOL || LA329_2409 == FROM_SYMBOL || ((LA329_2409 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2409 <= GREATER_THAN_OPERATOR)) || ((LA329_2409 >= GROUP_SYMBOL) && (LA329_2409 <= HAVING_SYMBOL)) || LA329_2409 == HEX_NUMBER || LA329_2409 == IDENTIFIER || LA329_2409 == INNER_SYMBOL || LA329_2409 == INTO_SYMBOL || LA329_2409 == IN_SYMBOL || LA329_2409 == IS_SYMBOL || ((LA329_2409 >= JOIN_SYMBOL) && (LA329_2409 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2409 >= LEFT_SYMBOL) && (LA329_2409 <= LESS_THAN_OPERATOR)) || ((LA329_2409 >= LIKE_SYMBOL) && (LA329_2409 <= LIMIT_SYMBOL)) || LA329_2409 == LOCK_SYMBOL || LA329_2409 == LOGICAL_AND_OPERATOR || LA329_2409 == LOGICAL_OR_OPERATOR || LA329_2409 == MINUS_OPERATOR || ((LA329_2409 >= MOD_OPERATOR) && (LA329_2409 <= MOD_SYMBOL)) || ((LA329_2409 >= MULT_OPERATOR) && (LA329_2409 <= NATURAL_SYMBOL)) || ((LA329_2409 >= NOT_EQUAL2_OPERATOR) && (LA329_2409 <= NOT_SYMBOL)) || LA329_2409 == NULL_SAFE_EQUAL_OPERATOR || LA329_2409 == ON_SYMBOL || LA329_2409 == OPEN_PAR_SYMBOL || ((LA329_2409 >= ORDER_SYMBOL) && (LA329_2409 <= OR_SYMBOL)) || LA329_2409 == PLUS_OPERATOR || LA329_2409 == PROCEDURE_SYMBOL || LA329_2409 == REGEXP_SYMBOL || LA329_2409 == RIGHT_SYMBOL || LA329_2409 == SEMICOLON_SYMBOL || LA329_2409 == SET_SYMBOL || ((LA329_2409 >= SHIFT_LEFT_OPERATOR) && (LA329_2409 <= SHIFT_RIGHT_OPERATOR)) || LA329_2409 == SINGLE_QUOTED_TEXT || LA329_2409 == STRAIGHT_JOIN_SYMBOL || LA329_2409 == UNION_SYMBOL || LA329_2409 == USING_SYMBOL || LA329_2409 == WHERE_SYMBOL || LA329_2409 == WITH_SYMBOL || LA329_2409 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2409;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_377 >= ACCOUNT_SYMBOL) && (LA329_377 <= XA_SYMBOL)) || LA329_377 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2410 = LA(4);
                                        if ( (LA329_2410 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4193 = LA(5);
                                                if ( (LA329_4193 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4193 >= ACCOUNT_SYMBOL) && (LA329_4193 <= YEAR_SYMBOL)) || LA329_4193 == BACK_TICK_QUOTED_ID || LA329_4193 == DOUBLE_QUOTED_TEXT || LA329_4193 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4193;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2410 == EOF || ((LA329_2410 >= ACCOUNT_SYMBOL) && (LA329_2410 <= YEAR_SYMBOL)) || LA329_2410 == AND_SYMBOL || LA329_2410 == AS_SYMBOL || LA329_2410 == BACK_TICK_QUOTED_ID || LA329_2410 == BETWEEN_SYMBOL || LA329_2410 == BIN_NUMBER || LA329_2410 == BITWISE_AND_OPERATOR || ((LA329_2410 >= BITWISE_OR_OPERATOR) && (LA329_2410 <= BITWISE_XOR_OPERATOR)) || ((LA329_2410 >= CLOSE_CURLY_SYMBOL) && (LA329_2410 <= COLLATE_SYMBOL)) || LA329_2410 == COMMA_SYMBOL || LA329_2410 == CONCAT_PIPES_SYMBOL || LA329_2410 == CROSS_SYMBOL || ((LA329_2410 >= DIV_OPERATOR) && (LA329_2410 <= DIV_SYMBOL)) || LA329_2410 == DOUBLE_QUOTED_TEXT || LA329_2410 == EQUAL_OPERATOR || LA329_2410 == FOR_SYMBOL || LA329_2410 == FROM_SYMBOL || ((LA329_2410 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2410 <= GREATER_THAN_OPERATOR)) || ((LA329_2410 >= GROUP_SYMBOL) && (LA329_2410 <= HAVING_SYMBOL)) || LA329_2410 == HEX_NUMBER || LA329_2410 == IDENTIFIER || LA329_2410 == INNER_SYMBOL || LA329_2410 == INTO_SYMBOL || LA329_2410 == IN_SYMBOL || LA329_2410 == IS_SYMBOL || ((LA329_2410 >= JOIN_SYMBOL) && (LA329_2410 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2410 >= LEFT_SYMBOL) && (LA329_2410 <= LESS_THAN_OPERATOR)) || ((LA329_2410 >= LIKE_SYMBOL) && (LA329_2410 <= LIMIT_SYMBOL)) || LA329_2410 == LOCK_SYMBOL || LA329_2410 == LOGICAL_AND_OPERATOR || LA329_2410 == LOGICAL_OR_OPERATOR || LA329_2410 == MINUS_OPERATOR || ((LA329_2410 >= MOD_OPERATOR) && (LA329_2410 <= MOD_SYMBOL)) || ((LA329_2410 >= MULT_OPERATOR) && (LA329_2410 <= NATURAL_SYMBOL)) || ((LA329_2410 >= NOT_EQUAL2_OPERATOR) && (LA329_2410 <= NOT_SYMBOL)) || LA329_2410 == NULL_SAFE_EQUAL_OPERATOR || LA329_2410 == ON_SYMBOL || LA329_2410 == OPEN_PAR_SYMBOL || ((LA329_2410 >= ORDER_SYMBOL) && (LA329_2410 <= OR_SYMBOL)) || LA329_2410 == PLUS_OPERATOR || LA329_2410 == PROCEDURE_SYMBOL || LA329_2410 == REGEXP_SYMBOL || LA329_2410 == RIGHT_SYMBOL || LA329_2410 == SEMICOLON_SYMBOL || LA329_2410 == SET_SYMBOL || ((LA329_2410 >= SHIFT_LEFT_OPERATOR) && (LA329_2410 <= SHIFT_RIGHT_OPERATOR)) || LA329_2410 == SINGLE_QUOTED_TEXT || LA329_2410 == STRAIGHT_JOIN_SYMBOL || LA329_2410 == UNION_SYMBOL || LA329_2410 == USING_SYMBOL || LA329_2410 == WHERE_SYMBOL || LA329_2410 == WITH_SYMBOL || LA329_2410 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2410;


                                            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  = 329;
                                    EXCEPTION->state        = 377;


                                    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  = 329;
                            EXCEPTION->state        = 14;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == TIMESTAMP_SYMBOL))
                {
                    {
                        int LA329_15 = LA(2);
                        if ( (LA329_15 == EOF || ((LA329_15 >= ACCOUNT_SYMBOL) && (LA329_15 <= YEAR_SYMBOL)) || LA329_15 == AND_SYMBOL || LA329_15 == AS_SYMBOL || LA329_15 == BACK_TICK_QUOTED_ID || LA329_15 == BETWEEN_SYMBOL || LA329_15 == BIN_NUMBER || LA329_15 == BITWISE_AND_OPERATOR || ((LA329_15 >= BITWISE_OR_OPERATOR) && (LA329_15 <= BITWISE_XOR_OPERATOR)) || ((LA329_15 >= CLOSE_CURLY_SYMBOL) && (LA329_15 <= COLLATE_SYMBOL)) || LA329_15 == COMMA_SYMBOL || LA329_15 == CONCAT_PIPES_SYMBOL || LA329_15 == CROSS_SYMBOL || ((LA329_15 >= DIV_OPERATOR) && (LA329_15 <= DIV_SYMBOL)) || LA329_15 == DOUBLE_QUOTED_TEXT || LA329_15 == EQUAL_OPERATOR || LA329_15 == FOR_SYMBOL || LA329_15 == FROM_SYMBOL || ((LA329_15 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_15 <= GREATER_THAN_OPERATOR)) || ((LA329_15 >= GROUP_SYMBOL) && (LA329_15 <= HAVING_SYMBOL)) || LA329_15 == HEX_NUMBER || LA329_15 == IDENTIFIER || LA329_15 == INNER_SYMBOL || LA329_15 == INTO_SYMBOL || LA329_15 == IN_SYMBOL || LA329_15 == IS_SYMBOL || ((LA329_15 >= JOIN_SYMBOL) && (LA329_15 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_15 >= LEFT_SYMBOL) && (LA329_15 <= LESS_THAN_OPERATOR)) || ((LA329_15 >= LIKE_SYMBOL) && (LA329_15 <= LIMIT_SYMBOL)) || LA329_15 == LOCK_SYMBOL || LA329_15 == LOGICAL_AND_OPERATOR || LA329_15 == LOGICAL_OR_OPERATOR || LA329_15 == MINUS_OPERATOR || ((LA329_15 >= MOD_OPERATOR) && (LA329_15 <= MOD_SYMBOL)) || ((LA329_15 >= MULT_OPERATOR) && (LA329_15 <= NATURAL_SYMBOL)) || ((LA329_15 >= NOT_EQUAL2_OPERATOR) && (LA329_15 <= NOT_SYMBOL)) || LA329_15 == NULL_SAFE_EQUAL_OPERATOR || LA329_15 == ON_SYMBOL || LA329_15 == OPEN_PAR_SYMBOL || ((LA329_15 >= ORDER_SYMBOL) && (LA329_15 <= OR_SYMBOL)) || LA329_15 == PLUS_OPERATOR || LA329_15 == PROCEDURE_SYMBOL || LA329_15 == REGEXP_SYMBOL || LA329_15 == RIGHT_SYMBOL || LA329_15 == SEMICOLON_SYMBOL || LA329_15 == SET_SYMBOL || ((LA329_15 >= SHIFT_LEFT_OPERATOR) && (LA329_15 <= SHIFT_RIGHT_OPERATOR)) || LA329_15 == SINGLE_QUOTED_TEXT || LA329_15 == STRAIGHT_JOIN_SYMBOL || LA329_15 == UNION_SYMBOL || LA329_15 == USING_SYMBOL || LA329_15 == WHERE_SYMBOL || LA329_15 == WITH_SYMBOL || LA329_15 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_15 == DOT_SYMBOL))
                        {
                            {
                                int LA329_432 = LA(3);
                                if ( (LA329_432 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_432 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2412 = LA(4);
                                        if ( (LA329_2412 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4247 = LA(5);
                                                if ( (LA329_4247 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4247 >= ACCOUNT_SYMBOL) && (LA329_4247 <= YEAR_SYMBOL)) || LA329_4247 == BACK_TICK_QUOTED_ID || LA329_4247 == DOUBLE_QUOTED_TEXT || LA329_4247 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4247;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2412 == EOF || ((LA329_2412 >= ACCOUNT_SYMBOL) && (LA329_2412 <= YEAR_SYMBOL)) || LA329_2412 == AND_SYMBOL || LA329_2412 == AS_SYMBOL || LA329_2412 == BACK_TICK_QUOTED_ID || LA329_2412 == BETWEEN_SYMBOL || LA329_2412 == BIN_NUMBER || LA329_2412 == BITWISE_AND_OPERATOR || ((LA329_2412 >= BITWISE_OR_OPERATOR) && (LA329_2412 <= BITWISE_XOR_OPERATOR)) || ((LA329_2412 >= CLOSE_CURLY_SYMBOL) && (LA329_2412 <= COLLATE_SYMBOL)) || LA329_2412 == COMMA_SYMBOL || LA329_2412 == CONCAT_PIPES_SYMBOL || LA329_2412 == CROSS_SYMBOL || ((LA329_2412 >= DIV_OPERATOR) && (LA329_2412 <= DIV_SYMBOL)) || LA329_2412 == DOUBLE_QUOTED_TEXT || LA329_2412 == EQUAL_OPERATOR || LA329_2412 == FOR_SYMBOL || LA329_2412 == FROM_SYMBOL || ((LA329_2412 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2412 <= GREATER_THAN_OPERATOR)) || ((LA329_2412 >= GROUP_SYMBOL) && (LA329_2412 <= HAVING_SYMBOL)) || LA329_2412 == HEX_NUMBER || LA329_2412 == IDENTIFIER || LA329_2412 == INNER_SYMBOL || LA329_2412 == INTO_SYMBOL || LA329_2412 == IN_SYMBOL || LA329_2412 == IS_SYMBOL || ((LA329_2412 >= JOIN_SYMBOL) && (LA329_2412 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2412 >= LEFT_SYMBOL) && (LA329_2412 <= LESS_THAN_OPERATOR)) || ((LA329_2412 >= LIKE_SYMBOL) && (LA329_2412 <= LIMIT_SYMBOL)) || LA329_2412 == LOCK_SYMBOL || LA329_2412 == LOGICAL_AND_OPERATOR || LA329_2412 == LOGICAL_OR_OPERATOR || LA329_2412 == MINUS_OPERATOR || ((LA329_2412 >= MOD_OPERATOR) && (LA329_2412 <= MOD_SYMBOL)) || ((LA329_2412 >= MULT_OPERATOR) && (LA329_2412 <= NATURAL_SYMBOL)) || ((LA329_2412 >= NOT_EQUAL2_OPERATOR) && (LA329_2412 <= NOT_SYMBOL)) || LA329_2412 == NULL_SAFE_EQUAL_OPERATOR || LA329_2412 == ON_SYMBOL || LA329_2412 == OPEN_PAR_SYMBOL || ((LA329_2412 >= ORDER_SYMBOL) && (LA329_2412 <= OR_SYMBOL)) || LA329_2412 == PLUS_OPERATOR || LA329_2412 == PROCEDURE_SYMBOL || LA329_2412 == REGEXP_SYMBOL || LA329_2412 == RIGHT_SYMBOL || LA329_2412 == SEMICOLON_SYMBOL || LA329_2412 == SET_SYMBOL || ((LA329_2412 >= SHIFT_LEFT_OPERATOR) && (LA329_2412 <= SHIFT_RIGHT_OPERATOR)) || LA329_2412 == SINGLE_QUOTED_TEXT || LA329_2412 == STRAIGHT_JOIN_SYMBOL || LA329_2412 == UNION_SYMBOL || LA329_2412 == USING_SYMBOL || LA329_2412 == WHERE_SYMBOL || LA329_2412 == WITH_SYMBOL || LA329_2412 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2412;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_432 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2413 = LA(4);
                                        if ( (LA329_2413 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4301 = LA(5);
                                                if ( (LA329_4301 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4301 >= ACCOUNT_SYMBOL) && (LA329_4301 <= YEAR_SYMBOL)) || LA329_4301 == BACK_TICK_QUOTED_ID || LA329_4301 == DOUBLE_QUOTED_TEXT || LA329_4301 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4301;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2413 == EOF || ((LA329_2413 >= ACCOUNT_SYMBOL) && (LA329_2413 <= YEAR_SYMBOL)) || LA329_2413 == AND_SYMBOL || LA329_2413 == AS_SYMBOL || LA329_2413 == BACK_TICK_QUOTED_ID || LA329_2413 == BETWEEN_SYMBOL || LA329_2413 == BIN_NUMBER || LA329_2413 == BITWISE_AND_OPERATOR || ((LA329_2413 >= BITWISE_OR_OPERATOR) && (LA329_2413 <= BITWISE_XOR_OPERATOR)) || ((LA329_2413 >= CLOSE_CURLY_SYMBOL) && (LA329_2413 <= COLLATE_SYMBOL)) || LA329_2413 == COMMA_SYMBOL || LA329_2413 == CONCAT_PIPES_SYMBOL || LA329_2413 == CROSS_SYMBOL || ((LA329_2413 >= DIV_OPERATOR) && (LA329_2413 <= DIV_SYMBOL)) || LA329_2413 == DOUBLE_QUOTED_TEXT || LA329_2413 == EQUAL_OPERATOR || LA329_2413 == FOR_SYMBOL || LA329_2413 == FROM_SYMBOL || ((LA329_2413 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2413 <= GREATER_THAN_OPERATOR)) || ((LA329_2413 >= GROUP_SYMBOL) && (LA329_2413 <= HAVING_SYMBOL)) || LA329_2413 == HEX_NUMBER || LA329_2413 == IDENTIFIER || LA329_2413 == INNER_SYMBOL || LA329_2413 == INTO_SYMBOL || LA329_2413 == IN_SYMBOL || LA329_2413 == IS_SYMBOL || ((LA329_2413 >= JOIN_SYMBOL) && (LA329_2413 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2413 >= LEFT_SYMBOL) && (LA329_2413 <= LESS_THAN_OPERATOR)) || ((LA329_2413 >= LIKE_SYMBOL) && (LA329_2413 <= LIMIT_SYMBOL)) || LA329_2413 == LOCK_SYMBOL || LA329_2413 == LOGICAL_AND_OPERATOR || LA329_2413 == LOGICAL_OR_OPERATOR || LA329_2413 == MINUS_OPERATOR || ((LA329_2413 >= MOD_OPERATOR) && (LA329_2413 <= MOD_SYMBOL)) || ((LA329_2413 >= MULT_OPERATOR) && (LA329_2413 <= NATURAL_SYMBOL)) || ((LA329_2413 >= NOT_EQUAL2_OPERATOR) && (LA329_2413 <= NOT_SYMBOL)) || LA329_2413 == NULL_SAFE_EQUAL_OPERATOR || LA329_2413 == ON_SYMBOL || LA329_2413 == OPEN_PAR_SYMBOL || ((LA329_2413 >= ORDER_SYMBOL) && (LA329_2413 <= OR_SYMBOL)) || LA329_2413 == PLUS_OPERATOR || LA329_2413 == PROCEDURE_SYMBOL || LA329_2413 == REGEXP_SYMBOL || LA329_2413 == RIGHT_SYMBOL || LA329_2413 == SEMICOLON_SYMBOL || LA329_2413 == SET_SYMBOL || ((LA329_2413 >= SHIFT_LEFT_OPERATOR) && (LA329_2413 <= SHIFT_RIGHT_OPERATOR)) || LA329_2413 == SINGLE_QUOTED_TEXT || LA329_2413 == STRAIGHT_JOIN_SYMBOL || LA329_2413 == UNION_SYMBOL || LA329_2413 == USING_SYMBOL || LA329_2413 == WHERE_SYMBOL || LA329_2413 == WITH_SYMBOL || LA329_2413 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2413;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_432 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2414 = LA(4);
                                        if ( (LA329_2414 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4355 = LA(5);
                                                if ( (LA329_4355 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4355 >= ACCOUNT_SYMBOL) && (LA329_4355 <= YEAR_SYMBOL)) || LA329_4355 == BACK_TICK_QUOTED_ID || LA329_4355 == DOUBLE_QUOTED_TEXT || LA329_4355 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4355;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2414 == EOF || ((LA329_2414 >= ACCOUNT_SYMBOL) && (LA329_2414 <= YEAR_SYMBOL)) || LA329_2414 == AND_SYMBOL || LA329_2414 == AS_SYMBOL || LA329_2414 == BACK_TICK_QUOTED_ID || LA329_2414 == BETWEEN_SYMBOL || LA329_2414 == BIN_NUMBER || LA329_2414 == BITWISE_AND_OPERATOR || ((LA329_2414 >= BITWISE_OR_OPERATOR) && (LA329_2414 <= BITWISE_XOR_OPERATOR)) || ((LA329_2414 >= CLOSE_CURLY_SYMBOL) && (LA329_2414 <= COLLATE_SYMBOL)) || LA329_2414 == COMMA_SYMBOL || LA329_2414 == CONCAT_PIPES_SYMBOL || LA329_2414 == CROSS_SYMBOL || ((LA329_2414 >= DIV_OPERATOR) && (LA329_2414 <= DIV_SYMBOL)) || LA329_2414 == DOUBLE_QUOTED_TEXT || LA329_2414 == EQUAL_OPERATOR || LA329_2414 == FOR_SYMBOL || LA329_2414 == FROM_SYMBOL || ((LA329_2414 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2414 <= GREATER_THAN_OPERATOR)) || ((LA329_2414 >= GROUP_SYMBOL) && (LA329_2414 <= HAVING_SYMBOL)) || LA329_2414 == HEX_NUMBER || LA329_2414 == IDENTIFIER || LA329_2414 == INNER_SYMBOL || LA329_2414 == INTO_SYMBOL || LA329_2414 == IN_SYMBOL || LA329_2414 == IS_SYMBOL || ((LA329_2414 >= JOIN_SYMBOL) && (LA329_2414 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2414 >= LEFT_SYMBOL) && (LA329_2414 <= LESS_THAN_OPERATOR)) || ((LA329_2414 >= LIKE_SYMBOL) && (LA329_2414 <= LIMIT_SYMBOL)) || LA329_2414 == LOCK_SYMBOL || LA329_2414 == LOGICAL_AND_OPERATOR || LA329_2414 == LOGICAL_OR_OPERATOR || LA329_2414 == MINUS_OPERATOR || ((LA329_2414 >= MOD_OPERATOR) && (LA329_2414 <= MOD_SYMBOL)) || ((LA329_2414 >= MULT_OPERATOR) && (LA329_2414 <= NATURAL_SYMBOL)) || ((LA329_2414 >= NOT_EQUAL2_OPERATOR) && (LA329_2414 <= NOT_SYMBOL)) || LA329_2414 == NULL_SAFE_EQUAL_OPERATOR || LA329_2414 == ON_SYMBOL || LA329_2414 == OPEN_PAR_SYMBOL || ((LA329_2414 >= ORDER_SYMBOL) && (LA329_2414 <= OR_SYMBOL)) || LA329_2414 == PLUS_OPERATOR || LA329_2414 == PROCEDURE_SYMBOL || LA329_2414 == REGEXP_SYMBOL || LA329_2414 == RIGHT_SYMBOL || LA329_2414 == SEMICOLON_SYMBOL || LA329_2414 == SET_SYMBOL || ((LA329_2414 >= SHIFT_LEFT_OPERATOR) && (LA329_2414 <= SHIFT_RIGHT_OPERATOR)) || LA329_2414 == SINGLE_QUOTED_TEXT || LA329_2414 == STRAIGHT_JOIN_SYMBOL || LA329_2414 == UNION_SYMBOL || LA329_2414 == USING_SYMBOL || LA329_2414 == WHERE_SYMBOL || LA329_2414 == WITH_SYMBOL || LA329_2414 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2414;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_432 >= ACTION_SYMBOL) && (LA329_432 <= SHARE_SYMBOL)) || ((LA329_432 >= SLOW_SYMBOL) && (LA329_432 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2415 = LA(4);
                                        if ( (LA329_2415 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4409 = LA(5);
                                                if ( (LA329_4409 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4409 >= ACCOUNT_SYMBOL) && (LA329_4409 <= YEAR_SYMBOL)) || LA329_4409 == BACK_TICK_QUOTED_ID || LA329_4409 == DOUBLE_QUOTED_TEXT || LA329_4409 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4409;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2415 == EOF || ((LA329_2415 >= ACCOUNT_SYMBOL) && (LA329_2415 <= YEAR_SYMBOL)) || LA329_2415 == AND_SYMBOL || LA329_2415 == AS_SYMBOL || LA329_2415 == BACK_TICK_QUOTED_ID || LA329_2415 == BETWEEN_SYMBOL || LA329_2415 == BIN_NUMBER || LA329_2415 == BITWISE_AND_OPERATOR || ((LA329_2415 >= BITWISE_OR_OPERATOR) && (LA329_2415 <= BITWISE_XOR_OPERATOR)) || ((LA329_2415 >= CLOSE_CURLY_SYMBOL) && (LA329_2415 <= COLLATE_SYMBOL)) || LA329_2415 == COMMA_SYMBOL || LA329_2415 == CONCAT_PIPES_SYMBOL || LA329_2415 == CROSS_SYMBOL || ((LA329_2415 >= DIV_OPERATOR) && (LA329_2415 <= DIV_SYMBOL)) || LA329_2415 == DOUBLE_QUOTED_TEXT || LA329_2415 == EQUAL_OPERATOR || LA329_2415 == FOR_SYMBOL || LA329_2415 == FROM_SYMBOL || ((LA329_2415 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2415 <= GREATER_THAN_OPERATOR)) || ((LA329_2415 >= GROUP_SYMBOL) && (LA329_2415 <= HAVING_SYMBOL)) || LA329_2415 == HEX_NUMBER || LA329_2415 == IDENTIFIER || LA329_2415 == INNER_SYMBOL || LA329_2415 == INTO_SYMBOL || LA329_2415 == IN_SYMBOL || LA329_2415 == IS_SYMBOL || ((LA329_2415 >= JOIN_SYMBOL) && (LA329_2415 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2415 >= LEFT_SYMBOL) && (LA329_2415 <= LESS_THAN_OPERATOR)) || ((LA329_2415 >= LIKE_SYMBOL) && (LA329_2415 <= LIMIT_SYMBOL)) || LA329_2415 == LOCK_SYMBOL || LA329_2415 == LOGICAL_AND_OPERATOR || LA329_2415 == LOGICAL_OR_OPERATOR || LA329_2415 == MINUS_OPERATOR || ((LA329_2415 >= MOD_OPERATOR) && (LA329_2415 <= MOD_SYMBOL)) || ((LA329_2415 >= MULT_OPERATOR) && (LA329_2415 <= NATURAL_SYMBOL)) || ((LA329_2415 >= NOT_EQUAL2_OPERATOR) && (LA329_2415 <= NOT_SYMBOL)) || LA329_2415 == NULL_SAFE_EQUAL_OPERATOR || LA329_2415 == ON_SYMBOL || LA329_2415 == OPEN_PAR_SYMBOL || ((LA329_2415 >= ORDER_SYMBOL) && (LA329_2415 <= OR_SYMBOL)) || LA329_2415 == PLUS_OPERATOR || LA329_2415 == PROCEDURE_SYMBOL || LA329_2415 == REGEXP_SYMBOL || LA329_2415 == RIGHT_SYMBOL || LA329_2415 == SEMICOLON_SYMBOL || LA329_2415 == SET_SYMBOL || ((LA329_2415 >= SHIFT_LEFT_OPERATOR) && (LA329_2415 <= SHIFT_RIGHT_OPERATOR)) || LA329_2415 == SINGLE_QUOTED_TEXT || LA329_2415 == STRAIGHT_JOIN_SYMBOL || LA329_2415 == UNION_SYMBOL || LA329_2415 == USING_SYMBOL || LA329_2415 == WHERE_SYMBOL || LA329_2415 == WITH_SYMBOL || LA329_2415 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2415;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_432 >= ACCOUNT_SYMBOL) && (LA329_432 <= XA_SYMBOL)) || LA329_432 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2416 = LA(4);
                                        if ( (LA329_2416 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4463 = LA(5);
                                                if ( (LA329_4463 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4463 >= ACCOUNT_SYMBOL) && (LA329_4463 <= YEAR_SYMBOL)) || LA329_4463 == BACK_TICK_QUOTED_ID || LA329_4463 == DOUBLE_QUOTED_TEXT || LA329_4463 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4463;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2416 == EOF || ((LA329_2416 >= ACCOUNT_SYMBOL) && (LA329_2416 <= YEAR_SYMBOL)) || LA329_2416 == AND_SYMBOL || LA329_2416 == AS_SYMBOL || LA329_2416 == BACK_TICK_QUOTED_ID || LA329_2416 == BETWEEN_SYMBOL || LA329_2416 == BIN_NUMBER || LA329_2416 == BITWISE_AND_OPERATOR || ((LA329_2416 >= BITWISE_OR_OPERATOR) && (LA329_2416 <= BITWISE_XOR_OPERATOR)) || ((LA329_2416 >= CLOSE_CURLY_SYMBOL) && (LA329_2416 <= COLLATE_SYMBOL)) || LA329_2416 == COMMA_SYMBOL || LA329_2416 == CONCAT_PIPES_SYMBOL || LA329_2416 == CROSS_SYMBOL || ((LA329_2416 >= DIV_OPERATOR) && (LA329_2416 <= DIV_SYMBOL)) || LA329_2416 == DOUBLE_QUOTED_TEXT || LA329_2416 == EQUAL_OPERATOR || LA329_2416 == FOR_SYMBOL || LA329_2416 == FROM_SYMBOL || ((LA329_2416 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2416 <= GREATER_THAN_OPERATOR)) || ((LA329_2416 >= GROUP_SYMBOL) && (LA329_2416 <= HAVING_SYMBOL)) || LA329_2416 == HEX_NUMBER || LA329_2416 == IDENTIFIER || LA329_2416 == INNER_SYMBOL || LA329_2416 == INTO_SYMBOL || LA329_2416 == IN_SYMBOL || LA329_2416 == IS_SYMBOL || ((LA329_2416 >= JOIN_SYMBOL) && (LA329_2416 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2416 >= LEFT_SYMBOL) && (LA329_2416 <= LESS_THAN_OPERATOR)) || ((LA329_2416 >= LIKE_SYMBOL) && (LA329_2416 <= LIMIT_SYMBOL)) || LA329_2416 == LOCK_SYMBOL || LA329_2416 == LOGICAL_AND_OPERATOR || LA329_2416 == LOGICAL_OR_OPERATOR || LA329_2416 == MINUS_OPERATOR || ((LA329_2416 >= MOD_OPERATOR) && (LA329_2416 <= MOD_SYMBOL)) || ((LA329_2416 >= MULT_OPERATOR) && (LA329_2416 <= NATURAL_SYMBOL)) || ((LA329_2416 >= NOT_EQUAL2_OPERATOR) && (LA329_2416 <= NOT_SYMBOL)) || LA329_2416 == NULL_SAFE_EQUAL_OPERATOR || LA329_2416 == ON_SYMBOL || LA329_2416 == OPEN_PAR_SYMBOL || ((LA329_2416 >= ORDER_SYMBOL) && (LA329_2416 <= OR_SYMBOL)) || LA329_2416 == PLUS_OPERATOR || LA329_2416 == PROCEDURE_SYMBOL || LA329_2416 == REGEXP_SYMBOL || LA329_2416 == RIGHT_SYMBOL || LA329_2416 == SEMICOLON_SYMBOL || LA329_2416 == SET_SYMBOL || ((LA329_2416 >= SHIFT_LEFT_OPERATOR) && (LA329_2416 <= SHIFT_RIGHT_OPERATOR)) || LA329_2416 == SINGLE_QUOTED_TEXT || LA329_2416 == STRAIGHT_JOIN_SYMBOL || LA329_2416 == UNION_SYMBOL || LA329_2416 == USING_SYMBOL || LA329_2416 == WHERE_SYMBOL || LA329_2416 == WITH_SYMBOL || LA329_2416 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2416;


                                            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  = 329;
                                    EXCEPTION->state        = 432;


                                    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  = 329;
                            EXCEPTION->state        = 15;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == DAY_SYMBOL))
                {
                    {
                        int LA329_16 = LA(2);
                        if ( (LA329_16 == EOF || ((LA329_16 >= ACCOUNT_SYMBOL) && (LA329_16 <= YEAR_SYMBOL)) || LA329_16 == AND_SYMBOL || LA329_16 == AS_SYMBOL || LA329_16 == BACK_TICK_QUOTED_ID || LA329_16 == BETWEEN_SYMBOL || LA329_16 == BIN_NUMBER || LA329_16 == BITWISE_AND_OPERATOR || ((LA329_16 >= BITWISE_OR_OPERATOR) && (LA329_16 <= BITWISE_XOR_OPERATOR)) || ((LA329_16 >= CLOSE_CURLY_SYMBOL) && (LA329_16 <= COLLATE_SYMBOL)) || LA329_16 == COMMA_SYMBOL || LA329_16 == CONCAT_PIPES_SYMBOL || LA329_16 == CROSS_SYMBOL || ((LA329_16 >= DIV_OPERATOR) && (LA329_16 <= DIV_SYMBOL)) || LA329_16 == DOUBLE_QUOTED_TEXT || LA329_16 == EQUAL_OPERATOR || LA329_16 == FOR_SYMBOL || LA329_16 == FROM_SYMBOL || ((LA329_16 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_16 <= GREATER_THAN_OPERATOR)) || ((LA329_16 >= GROUP_SYMBOL) && (LA329_16 <= HAVING_SYMBOL)) || LA329_16 == HEX_NUMBER || LA329_16 == IDENTIFIER || LA329_16 == INNER_SYMBOL || LA329_16 == INTO_SYMBOL || LA329_16 == IN_SYMBOL || LA329_16 == IS_SYMBOL || ((LA329_16 >= JOIN_SYMBOL) && (LA329_16 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_16 >= LEFT_SYMBOL) && (LA329_16 <= LESS_THAN_OPERATOR)) || ((LA329_16 >= LIKE_SYMBOL) && (LA329_16 <= LIMIT_SYMBOL)) || LA329_16 == LOCK_SYMBOL || LA329_16 == LOGICAL_AND_OPERATOR || LA329_16 == LOGICAL_OR_OPERATOR || LA329_16 == MINUS_OPERATOR || ((LA329_16 >= MOD_OPERATOR) && (LA329_16 <= MOD_SYMBOL)) || ((LA329_16 >= MULT_OPERATOR) && (LA329_16 <= NATURAL_SYMBOL)) || ((LA329_16 >= NOT_EQUAL2_OPERATOR) && (LA329_16 <= NOT_SYMBOL)) || LA329_16 == NULL_SAFE_EQUAL_OPERATOR || LA329_16 == ON_SYMBOL || LA329_16 == OPEN_PAR_SYMBOL || ((LA329_16 >= ORDER_SYMBOL) && (LA329_16 <= OR_SYMBOL)) || LA329_16 == PLUS_OPERATOR || LA329_16 == PROCEDURE_SYMBOL || LA329_16 == REGEXP_SYMBOL || LA329_16 == RIGHT_SYMBOL || LA329_16 == SEMICOLON_SYMBOL || LA329_16 == SET_SYMBOL || ((LA329_16 >= SHIFT_LEFT_OPERATOR) && (LA329_16 <= SHIFT_RIGHT_OPERATOR)) || LA329_16 == SINGLE_QUOTED_TEXT || LA329_16 == STRAIGHT_JOIN_SYMBOL || LA329_16 == UNION_SYMBOL || LA329_16 == USING_SYMBOL || LA329_16 == WHERE_SYMBOL || LA329_16 == WITH_SYMBOL || LA329_16 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_16 == DOT_SYMBOL))
                        {
                            {
                                int LA329_486 = LA(3);
                                if ( (LA329_486 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_486 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2418 = LA(4);
                                        if ( (LA329_2418 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4517 = LA(5);
                                                if ( (LA329_4517 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4517 >= ACCOUNT_SYMBOL) && (LA329_4517 <= YEAR_SYMBOL)) || LA329_4517 == BACK_TICK_QUOTED_ID || LA329_4517 == DOUBLE_QUOTED_TEXT || LA329_4517 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4517;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2418 == EOF || ((LA329_2418 >= ACCOUNT_SYMBOL) && (LA329_2418 <= YEAR_SYMBOL)) || LA329_2418 == AND_SYMBOL || LA329_2418 == AS_SYMBOL || LA329_2418 == BACK_TICK_QUOTED_ID || LA329_2418 == BETWEEN_SYMBOL || LA329_2418 == BIN_NUMBER || LA329_2418 == BITWISE_AND_OPERATOR || ((LA329_2418 >= BITWISE_OR_OPERATOR) && (LA329_2418 <= BITWISE_XOR_OPERATOR)) || ((LA329_2418 >= CLOSE_CURLY_SYMBOL) && (LA329_2418 <= COLLATE_SYMBOL)) || LA329_2418 == COMMA_SYMBOL || LA329_2418 == CONCAT_PIPES_SYMBOL || LA329_2418 == CROSS_SYMBOL || ((LA329_2418 >= DIV_OPERATOR) && (LA329_2418 <= DIV_SYMBOL)) || LA329_2418 == DOUBLE_QUOTED_TEXT || LA329_2418 == EQUAL_OPERATOR || LA329_2418 == FOR_SYMBOL || LA329_2418 == FROM_SYMBOL || ((LA329_2418 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2418 <= GREATER_THAN_OPERATOR)) || ((LA329_2418 >= GROUP_SYMBOL) && (LA329_2418 <= HAVING_SYMBOL)) || LA329_2418 == HEX_NUMBER || LA329_2418 == IDENTIFIER || LA329_2418 == INNER_SYMBOL || LA329_2418 == INTO_SYMBOL || LA329_2418 == IN_SYMBOL || LA329_2418 == IS_SYMBOL || ((LA329_2418 >= JOIN_SYMBOL) && (LA329_2418 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2418 >= LEFT_SYMBOL) && (LA329_2418 <= LESS_THAN_OPERATOR)) || ((LA329_2418 >= LIKE_SYMBOL) && (LA329_2418 <= LIMIT_SYMBOL)) || LA329_2418 == LOCK_SYMBOL || LA329_2418 == LOGICAL_AND_OPERATOR || LA329_2418 == LOGICAL_OR_OPERATOR || LA329_2418 == MINUS_OPERATOR || ((LA329_2418 >= MOD_OPERATOR) && (LA329_2418 <= MOD_SYMBOL)) || ((LA329_2418 >= MULT_OPERATOR) && (LA329_2418 <= NATURAL_SYMBOL)) || ((LA329_2418 >= NOT_EQUAL2_OPERATOR) && (LA329_2418 <= NOT_SYMBOL)) || LA329_2418 == NULL_SAFE_EQUAL_OPERATOR || LA329_2418 == ON_SYMBOL || LA329_2418 == OPEN_PAR_SYMBOL || ((LA329_2418 >= ORDER_SYMBOL) && (LA329_2418 <= OR_SYMBOL)) || LA329_2418 == PLUS_OPERATOR || LA329_2418 == PROCEDURE_SYMBOL || LA329_2418 == REGEXP_SYMBOL || LA329_2418 == RIGHT_SYMBOL || LA329_2418 == SEMICOLON_SYMBOL || LA329_2418 == SET_SYMBOL || ((LA329_2418 >= SHIFT_LEFT_OPERATOR) && (LA329_2418 <= SHIFT_RIGHT_OPERATOR)) || LA329_2418 == SINGLE_QUOTED_TEXT || LA329_2418 == STRAIGHT_JOIN_SYMBOL || LA329_2418 == UNION_SYMBOL || LA329_2418 == USING_SYMBOL || LA329_2418 == WHERE_SYMBOL || LA329_2418 == WITH_SYMBOL || LA329_2418 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2418;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_486 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2419 = LA(4);
                                        if ( (LA329_2419 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4571 = LA(5);
                                                if ( (LA329_4571 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4571 >= ACCOUNT_SYMBOL) && (LA329_4571 <= YEAR_SYMBOL)) || LA329_4571 == BACK_TICK_QUOTED_ID || LA329_4571 == DOUBLE_QUOTED_TEXT || LA329_4571 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4571;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2419 == EOF || ((LA329_2419 >= ACCOUNT_SYMBOL) && (LA329_2419 <= YEAR_SYMBOL)) || LA329_2419 == AND_SYMBOL || LA329_2419 == AS_SYMBOL || LA329_2419 == BACK_TICK_QUOTED_ID || LA329_2419 == BETWEEN_SYMBOL || LA329_2419 == BIN_NUMBER || LA329_2419 == BITWISE_AND_OPERATOR || ((LA329_2419 >= BITWISE_OR_OPERATOR) && (LA329_2419 <= BITWISE_XOR_OPERATOR)) || ((LA329_2419 >= CLOSE_CURLY_SYMBOL) && (LA329_2419 <= COLLATE_SYMBOL)) || LA329_2419 == COMMA_SYMBOL || LA329_2419 == CONCAT_PIPES_SYMBOL || LA329_2419 == CROSS_SYMBOL || ((LA329_2419 >= DIV_OPERATOR) && (LA329_2419 <= DIV_SYMBOL)) || LA329_2419 == DOUBLE_QUOTED_TEXT || LA329_2419 == EQUAL_OPERATOR || LA329_2419 == FOR_SYMBOL || LA329_2419 == FROM_SYMBOL || ((LA329_2419 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2419 <= GREATER_THAN_OPERATOR)) || ((LA329_2419 >= GROUP_SYMBOL) && (LA329_2419 <= HAVING_SYMBOL)) || LA329_2419 == HEX_NUMBER || LA329_2419 == IDENTIFIER || LA329_2419 == INNER_SYMBOL || LA329_2419 == INTO_SYMBOL || LA329_2419 == IN_SYMBOL || LA329_2419 == IS_SYMBOL || ((LA329_2419 >= JOIN_SYMBOL) && (LA329_2419 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2419 >= LEFT_SYMBOL) && (LA329_2419 <= LESS_THAN_OPERATOR)) || ((LA329_2419 >= LIKE_SYMBOL) && (LA329_2419 <= LIMIT_SYMBOL)) || LA329_2419 == LOCK_SYMBOL || LA329_2419 == LOGICAL_AND_OPERATOR || LA329_2419 == LOGICAL_OR_OPERATOR || LA329_2419 == MINUS_OPERATOR || ((LA329_2419 >= MOD_OPERATOR) && (LA329_2419 <= MOD_SYMBOL)) || ((LA329_2419 >= MULT_OPERATOR) && (LA329_2419 <= NATURAL_SYMBOL)) || ((LA329_2419 >= NOT_EQUAL2_OPERATOR) && (LA329_2419 <= NOT_SYMBOL)) || LA329_2419 == NULL_SAFE_EQUAL_OPERATOR || LA329_2419 == ON_SYMBOL || LA329_2419 == OPEN_PAR_SYMBOL || ((LA329_2419 >= ORDER_SYMBOL) && (LA329_2419 <= OR_SYMBOL)) || LA329_2419 == PLUS_OPERATOR || LA329_2419 == PROCEDURE_SYMBOL || LA329_2419 == REGEXP_SYMBOL || LA329_2419 == RIGHT_SYMBOL || LA329_2419 == SEMICOLON_SYMBOL || LA329_2419 == SET_SYMBOL || ((LA329_2419 >= SHIFT_LEFT_OPERATOR) && (LA329_2419 <= SHIFT_RIGHT_OPERATOR)) || LA329_2419 == SINGLE_QUOTED_TEXT || LA329_2419 == STRAIGHT_JOIN_SYMBOL || LA329_2419 == UNION_SYMBOL || LA329_2419 == USING_SYMBOL || LA329_2419 == WHERE_SYMBOL || LA329_2419 == WITH_SYMBOL || LA329_2419 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2419;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_486 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2420 = LA(4);
                                        if ( (LA329_2420 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4625 = LA(5);
                                                if ( (LA329_4625 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4625 >= ACCOUNT_SYMBOL) && (LA329_4625 <= YEAR_SYMBOL)) || LA329_4625 == BACK_TICK_QUOTED_ID || LA329_4625 == DOUBLE_QUOTED_TEXT || LA329_4625 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4625;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2420 == EOF || ((LA329_2420 >= ACCOUNT_SYMBOL) && (LA329_2420 <= YEAR_SYMBOL)) || LA329_2420 == AND_SYMBOL || LA329_2420 == AS_SYMBOL || LA329_2420 == BACK_TICK_QUOTED_ID || LA329_2420 == BETWEEN_SYMBOL || LA329_2420 == BIN_NUMBER || LA329_2420 == BITWISE_AND_OPERATOR || ((LA329_2420 >= BITWISE_OR_OPERATOR) && (LA329_2420 <= BITWISE_XOR_OPERATOR)) || ((LA329_2420 >= CLOSE_CURLY_SYMBOL) && (LA329_2420 <= COLLATE_SYMBOL)) || LA329_2420 == COMMA_SYMBOL || LA329_2420 == CONCAT_PIPES_SYMBOL || LA329_2420 == CROSS_SYMBOL || ((LA329_2420 >= DIV_OPERATOR) && (LA329_2420 <= DIV_SYMBOL)) || LA329_2420 == DOUBLE_QUOTED_TEXT || LA329_2420 == EQUAL_OPERATOR || LA329_2420 == FOR_SYMBOL || LA329_2420 == FROM_SYMBOL || ((LA329_2420 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2420 <= GREATER_THAN_OPERATOR)) || ((LA329_2420 >= GROUP_SYMBOL) && (LA329_2420 <= HAVING_SYMBOL)) || LA329_2420 == HEX_NUMBER || LA329_2420 == IDENTIFIER || LA329_2420 == INNER_SYMBOL || LA329_2420 == INTO_SYMBOL || LA329_2420 == IN_SYMBOL || LA329_2420 == IS_SYMBOL || ((LA329_2420 >= JOIN_SYMBOL) && (LA329_2420 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2420 >= LEFT_SYMBOL) && (LA329_2420 <= LESS_THAN_OPERATOR)) || ((LA329_2420 >= LIKE_SYMBOL) && (LA329_2420 <= LIMIT_SYMBOL)) || LA329_2420 == LOCK_SYMBOL || LA329_2420 == LOGICAL_AND_OPERATOR || LA329_2420 == LOGICAL_OR_OPERATOR || LA329_2420 == MINUS_OPERATOR || ((LA329_2420 >= MOD_OPERATOR) && (LA329_2420 <= MOD_SYMBOL)) || ((LA329_2420 >= MULT_OPERATOR) && (LA329_2420 <= NATURAL_SYMBOL)) || ((LA329_2420 >= NOT_EQUAL2_OPERATOR) && (LA329_2420 <= NOT_SYMBOL)) || LA329_2420 == NULL_SAFE_EQUAL_OPERATOR || LA329_2420 == ON_SYMBOL || LA329_2420 == OPEN_PAR_SYMBOL || ((LA329_2420 >= ORDER_SYMBOL) && (LA329_2420 <= OR_SYMBOL)) || LA329_2420 == PLUS_OPERATOR || LA329_2420 == PROCEDURE_SYMBOL || LA329_2420 == REGEXP_SYMBOL || LA329_2420 == RIGHT_SYMBOL || LA329_2420 == SEMICOLON_SYMBOL || LA329_2420 == SET_SYMBOL || ((LA329_2420 >= SHIFT_LEFT_OPERATOR) && (LA329_2420 <= SHIFT_RIGHT_OPERATOR)) || LA329_2420 == SINGLE_QUOTED_TEXT || LA329_2420 == STRAIGHT_JOIN_SYMBOL || LA329_2420 == UNION_SYMBOL || LA329_2420 == USING_SYMBOL || LA329_2420 == WHERE_SYMBOL || LA329_2420 == WITH_SYMBOL || LA329_2420 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2420;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_486 >= ACTION_SYMBOL) && (LA329_486 <= SHARE_SYMBOL)) || ((LA329_486 >= SLOW_SYMBOL) && (LA329_486 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2421 = LA(4);
                                        if ( (LA329_2421 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4679 = LA(5);
                                                if ( (LA329_4679 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4679 >= ACCOUNT_SYMBOL) && (LA329_4679 <= YEAR_SYMBOL)) || LA329_4679 == BACK_TICK_QUOTED_ID || LA329_4679 == DOUBLE_QUOTED_TEXT || LA329_4679 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4679;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2421 == EOF || ((LA329_2421 >= ACCOUNT_SYMBOL) && (LA329_2421 <= YEAR_SYMBOL)) || LA329_2421 == AND_SYMBOL || LA329_2421 == AS_SYMBOL || LA329_2421 == BACK_TICK_QUOTED_ID || LA329_2421 == BETWEEN_SYMBOL || LA329_2421 == BIN_NUMBER || LA329_2421 == BITWISE_AND_OPERATOR || ((LA329_2421 >= BITWISE_OR_OPERATOR) && (LA329_2421 <= BITWISE_XOR_OPERATOR)) || ((LA329_2421 >= CLOSE_CURLY_SYMBOL) && (LA329_2421 <= COLLATE_SYMBOL)) || LA329_2421 == COMMA_SYMBOL || LA329_2421 == CONCAT_PIPES_SYMBOL || LA329_2421 == CROSS_SYMBOL || ((LA329_2421 >= DIV_OPERATOR) && (LA329_2421 <= DIV_SYMBOL)) || LA329_2421 == DOUBLE_QUOTED_TEXT || LA329_2421 == EQUAL_OPERATOR || LA329_2421 == FOR_SYMBOL || LA329_2421 == FROM_SYMBOL || ((LA329_2421 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2421 <= GREATER_THAN_OPERATOR)) || ((LA329_2421 >= GROUP_SYMBOL) && (LA329_2421 <= HAVING_SYMBOL)) || LA329_2421 == HEX_NUMBER || LA329_2421 == IDENTIFIER || LA329_2421 == INNER_SYMBOL || LA329_2421 == INTO_SYMBOL || LA329_2421 == IN_SYMBOL || LA329_2421 == IS_SYMBOL || ((LA329_2421 >= JOIN_SYMBOL) && (LA329_2421 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2421 >= LEFT_SYMBOL) && (LA329_2421 <= LESS_THAN_OPERATOR)) || ((LA329_2421 >= LIKE_SYMBOL) && (LA329_2421 <= LIMIT_SYMBOL)) || LA329_2421 == LOCK_SYMBOL || LA329_2421 == LOGICAL_AND_OPERATOR || LA329_2421 == LOGICAL_OR_OPERATOR || LA329_2421 == MINUS_OPERATOR || ((LA329_2421 >= MOD_OPERATOR) && (LA329_2421 <= MOD_SYMBOL)) || ((LA329_2421 >= MULT_OPERATOR) && (LA329_2421 <= NATURAL_SYMBOL)) || ((LA329_2421 >= NOT_EQUAL2_OPERATOR) && (LA329_2421 <= NOT_SYMBOL)) || LA329_2421 == NULL_SAFE_EQUAL_OPERATOR || LA329_2421 == ON_SYMBOL || LA329_2421 == OPEN_PAR_SYMBOL || ((LA329_2421 >= ORDER_SYMBOL) && (LA329_2421 <= OR_SYMBOL)) || LA329_2421 == PLUS_OPERATOR || LA329_2421 == PROCEDURE_SYMBOL || LA329_2421 == REGEXP_SYMBOL || LA329_2421 == RIGHT_SYMBOL || LA329_2421 == SEMICOLON_SYMBOL || LA329_2421 == SET_SYMBOL || ((LA329_2421 >= SHIFT_LEFT_OPERATOR) && (LA329_2421 <= SHIFT_RIGHT_OPERATOR)) || LA329_2421 == SINGLE_QUOTED_TEXT || LA329_2421 == STRAIGHT_JOIN_SYMBOL || LA329_2421 == UNION_SYMBOL || LA329_2421 == USING_SYMBOL || LA329_2421 == WHERE_SYMBOL || LA329_2421 == WITH_SYMBOL || LA329_2421 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2421;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_486 >= ACCOUNT_SYMBOL) && (LA329_486 <= XA_SYMBOL)) || LA329_486 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2422 = LA(4);
                                        if ( (LA329_2422 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4733 = LA(5);
                                                if ( (LA329_4733 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4733 >= ACCOUNT_SYMBOL) && (LA329_4733 <= YEAR_SYMBOL)) || LA329_4733 == BACK_TICK_QUOTED_ID || LA329_4733 == DOUBLE_QUOTED_TEXT || LA329_4733 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4733;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2422 == EOF || ((LA329_2422 >= ACCOUNT_SYMBOL) && (LA329_2422 <= YEAR_SYMBOL)) || LA329_2422 == AND_SYMBOL || LA329_2422 == AS_SYMBOL || LA329_2422 == BACK_TICK_QUOTED_ID || LA329_2422 == BETWEEN_SYMBOL || LA329_2422 == BIN_NUMBER || LA329_2422 == BITWISE_AND_OPERATOR || ((LA329_2422 >= BITWISE_OR_OPERATOR) && (LA329_2422 <= BITWISE_XOR_OPERATOR)) || ((LA329_2422 >= CLOSE_CURLY_SYMBOL) && (LA329_2422 <= COLLATE_SYMBOL)) || LA329_2422 == COMMA_SYMBOL || LA329_2422 == CONCAT_PIPES_SYMBOL || LA329_2422 == CROSS_SYMBOL || ((LA329_2422 >= DIV_OPERATOR) && (LA329_2422 <= DIV_SYMBOL)) || LA329_2422 == DOUBLE_QUOTED_TEXT || LA329_2422 == EQUAL_OPERATOR || LA329_2422 == FOR_SYMBOL || LA329_2422 == FROM_SYMBOL || ((LA329_2422 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2422 <= GREATER_THAN_OPERATOR)) || ((LA329_2422 >= GROUP_SYMBOL) && (LA329_2422 <= HAVING_SYMBOL)) || LA329_2422 == HEX_NUMBER || LA329_2422 == IDENTIFIER || LA329_2422 == INNER_SYMBOL || LA329_2422 == INTO_SYMBOL || LA329_2422 == IN_SYMBOL || LA329_2422 == IS_SYMBOL || ((LA329_2422 >= JOIN_SYMBOL) && (LA329_2422 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2422 >= LEFT_SYMBOL) && (LA329_2422 <= LESS_THAN_OPERATOR)) || ((LA329_2422 >= LIKE_SYMBOL) && (LA329_2422 <= LIMIT_SYMBOL)) || LA329_2422 == LOCK_SYMBOL || LA329_2422 == LOGICAL_AND_OPERATOR || LA329_2422 == LOGICAL_OR_OPERATOR || LA329_2422 == MINUS_OPERATOR || ((LA329_2422 >= MOD_OPERATOR) && (LA329_2422 <= MOD_SYMBOL)) || ((LA329_2422 >= MULT_OPERATOR) && (LA329_2422 <= NATURAL_SYMBOL)) || ((LA329_2422 >= NOT_EQUAL2_OPERATOR) && (LA329_2422 <= NOT_SYMBOL)) || LA329_2422 == NULL_SAFE_EQUAL_OPERATOR || LA329_2422 == ON_SYMBOL || LA329_2422 == OPEN_PAR_SYMBOL || ((LA329_2422 >= ORDER_SYMBOL) && (LA329_2422 <= OR_SYMBOL)) || LA329_2422 == PLUS_OPERATOR || LA329_2422 == PROCEDURE_SYMBOL || LA329_2422 == REGEXP_SYMBOL || LA329_2422 == RIGHT_SYMBOL || LA329_2422 == SEMICOLON_SYMBOL || LA329_2422 == SET_SYMBOL || ((LA329_2422 >= SHIFT_LEFT_OPERATOR) && (LA329_2422 <= SHIFT_RIGHT_OPERATOR)) || LA329_2422 == SINGLE_QUOTED_TEXT || LA329_2422 == STRAIGHT_JOIN_SYMBOL || LA329_2422 == UNION_SYMBOL || LA329_2422 == USING_SYMBOL || LA329_2422 == WHERE_SYMBOL || LA329_2422 == WITH_SYMBOL || LA329_2422 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2422;


                                            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  = 329;
                                    EXCEPTION->state        = 486;


                                    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  = 329;
                            EXCEPTION->state        = 16;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == HOUR_SYMBOL))
                {
                    {
                        int LA329_23 = LA(2);
                        if ( (LA329_23 == EOF || ((LA329_23 >= ACCOUNT_SYMBOL) && (LA329_23 <= YEAR_SYMBOL)) || LA329_23 == AND_SYMBOL || LA329_23 == AS_SYMBOL || LA329_23 == BACK_TICK_QUOTED_ID || LA329_23 == BETWEEN_SYMBOL || LA329_23 == BIN_NUMBER || LA329_23 == BITWISE_AND_OPERATOR || ((LA329_23 >= BITWISE_OR_OPERATOR) && (LA329_23 <= BITWISE_XOR_OPERATOR)) || ((LA329_23 >= CLOSE_CURLY_SYMBOL) && (LA329_23 <= COLLATE_SYMBOL)) || LA329_23 == COMMA_SYMBOL || LA329_23 == CONCAT_PIPES_SYMBOL || LA329_23 == CROSS_SYMBOL || ((LA329_23 >= DIV_OPERATOR) && (LA329_23 <= DIV_SYMBOL)) || LA329_23 == DOUBLE_QUOTED_TEXT || LA329_23 == EQUAL_OPERATOR || LA329_23 == FOR_SYMBOL || LA329_23 == FROM_SYMBOL || ((LA329_23 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_23 <= GREATER_THAN_OPERATOR)) || ((LA329_23 >= GROUP_SYMBOL) && (LA329_23 <= HAVING_SYMBOL)) || LA329_23 == HEX_NUMBER || LA329_23 == IDENTIFIER || LA329_23 == INNER_SYMBOL || LA329_23 == INTO_SYMBOL || LA329_23 == IN_SYMBOL || LA329_23 == IS_SYMBOL || ((LA329_23 >= JOIN_SYMBOL) && (LA329_23 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_23 >= LEFT_SYMBOL) && (LA329_23 <= LESS_THAN_OPERATOR)) || ((LA329_23 >= LIKE_SYMBOL) && (LA329_23 <= LIMIT_SYMBOL)) || LA329_23 == LOCK_SYMBOL || LA329_23 == LOGICAL_AND_OPERATOR || LA329_23 == LOGICAL_OR_OPERATOR || LA329_23 == MINUS_OPERATOR || ((LA329_23 >= MOD_OPERATOR) && (LA329_23 <= MOD_SYMBOL)) || ((LA329_23 >= MULT_OPERATOR) && (LA329_23 <= NATURAL_SYMBOL)) || ((LA329_23 >= NOT_EQUAL2_OPERATOR) && (LA329_23 <= NOT_SYMBOL)) || LA329_23 == NULL_SAFE_EQUAL_OPERATOR || LA329_23 == ON_SYMBOL || LA329_23 == OPEN_PAR_SYMBOL || ((LA329_23 >= ORDER_SYMBOL) && (LA329_23 <= OR_SYMBOL)) || LA329_23 == PLUS_OPERATOR || LA329_23 == PROCEDURE_SYMBOL || LA329_23 == REGEXP_SYMBOL || LA329_23 == RIGHT_SYMBOL || LA329_23 == SEMICOLON_SYMBOL || LA329_23 == SET_SYMBOL || ((LA329_23 >= SHIFT_LEFT_OPERATOR) && (LA329_23 <= SHIFT_RIGHT_OPERATOR)) || LA329_23 == SINGLE_QUOTED_TEXT || LA329_23 == STRAIGHT_JOIN_SYMBOL || LA329_23 == UNION_SYMBOL || LA329_23 == USING_SYMBOL || LA329_23 == WHERE_SYMBOL || LA329_23 == WITH_SYMBOL || LA329_23 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_23 == DOT_SYMBOL))
                        {
                            {
                                int LA329_540 = LA(3);
                                if ( (LA329_540 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_540 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2424 = LA(4);
                                        if ( (LA329_2424 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4787 = LA(5);
                                                if ( (LA329_4787 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4787 >= ACCOUNT_SYMBOL) && (LA329_4787 <= YEAR_SYMBOL)) || LA329_4787 == BACK_TICK_QUOTED_ID || LA329_4787 == DOUBLE_QUOTED_TEXT || LA329_4787 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4787;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2424 == EOF || ((LA329_2424 >= ACCOUNT_SYMBOL) && (LA329_2424 <= YEAR_SYMBOL)) || LA329_2424 == AND_SYMBOL || LA329_2424 == AS_SYMBOL || LA329_2424 == BACK_TICK_QUOTED_ID || LA329_2424 == BETWEEN_SYMBOL || LA329_2424 == BIN_NUMBER || LA329_2424 == BITWISE_AND_OPERATOR || ((LA329_2424 >= BITWISE_OR_OPERATOR) && (LA329_2424 <= BITWISE_XOR_OPERATOR)) || ((LA329_2424 >= CLOSE_CURLY_SYMBOL) && (LA329_2424 <= COLLATE_SYMBOL)) || LA329_2424 == COMMA_SYMBOL || LA329_2424 == CONCAT_PIPES_SYMBOL || LA329_2424 == CROSS_SYMBOL || ((LA329_2424 >= DIV_OPERATOR) && (LA329_2424 <= DIV_SYMBOL)) || LA329_2424 == DOUBLE_QUOTED_TEXT || LA329_2424 == EQUAL_OPERATOR || LA329_2424 == FOR_SYMBOL || LA329_2424 == FROM_SYMBOL || ((LA329_2424 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2424 <= GREATER_THAN_OPERATOR)) || ((LA329_2424 >= GROUP_SYMBOL) && (LA329_2424 <= HAVING_SYMBOL)) || LA329_2424 == HEX_NUMBER || LA329_2424 == IDENTIFIER || LA329_2424 == INNER_SYMBOL || LA329_2424 == INTO_SYMBOL || LA329_2424 == IN_SYMBOL || LA329_2424 == IS_SYMBOL || ((LA329_2424 >= JOIN_SYMBOL) && (LA329_2424 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2424 >= LEFT_SYMBOL) && (LA329_2424 <= LESS_THAN_OPERATOR)) || ((LA329_2424 >= LIKE_SYMBOL) && (LA329_2424 <= LIMIT_SYMBOL)) || LA329_2424 == LOCK_SYMBOL || LA329_2424 == LOGICAL_AND_OPERATOR || LA329_2424 == LOGICAL_OR_OPERATOR || LA329_2424 == MINUS_OPERATOR || ((LA329_2424 >= MOD_OPERATOR) && (LA329_2424 <= MOD_SYMBOL)) || ((LA329_2424 >= MULT_OPERATOR) && (LA329_2424 <= NATURAL_SYMBOL)) || ((LA329_2424 >= NOT_EQUAL2_OPERATOR) && (LA329_2424 <= NOT_SYMBOL)) || LA329_2424 == NULL_SAFE_EQUAL_OPERATOR || LA329_2424 == ON_SYMBOL || LA329_2424 == OPEN_PAR_SYMBOL || ((LA329_2424 >= ORDER_SYMBOL) && (LA329_2424 <= OR_SYMBOL)) || LA329_2424 == PLUS_OPERATOR || LA329_2424 == PROCEDURE_SYMBOL || LA329_2424 == REGEXP_SYMBOL || LA329_2424 == RIGHT_SYMBOL || LA329_2424 == SEMICOLON_SYMBOL || LA329_2424 == SET_SYMBOL || ((LA329_2424 >= SHIFT_LEFT_OPERATOR) && (LA329_2424 <= SHIFT_RIGHT_OPERATOR)) || LA329_2424 == SINGLE_QUOTED_TEXT || LA329_2424 == STRAIGHT_JOIN_SYMBOL || LA329_2424 == UNION_SYMBOL || LA329_2424 == USING_SYMBOL || LA329_2424 == WHERE_SYMBOL || LA329_2424 == WITH_SYMBOL || LA329_2424 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2424;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_540 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2425 = LA(4);
                                        if ( (LA329_2425 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4841 = LA(5);
                                                if ( (LA329_4841 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4841 >= ACCOUNT_SYMBOL) && (LA329_4841 <= YEAR_SYMBOL)) || LA329_4841 == BACK_TICK_QUOTED_ID || LA329_4841 == DOUBLE_QUOTED_TEXT || LA329_4841 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4841;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2425 == EOF || ((LA329_2425 >= ACCOUNT_SYMBOL) && (LA329_2425 <= YEAR_SYMBOL)) || LA329_2425 == AND_SYMBOL || LA329_2425 == AS_SYMBOL || LA329_2425 == BACK_TICK_QUOTED_ID || LA329_2425 == BETWEEN_SYMBOL || LA329_2425 == BIN_NUMBER || LA329_2425 == BITWISE_AND_OPERATOR || ((LA329_2425 >= BITWISE_OR_OPERATOR) && (LA329_2425 <= BITWISE_XOR_OPERATOR)) || ((LA329_2425 >= CLOSE_CURLY_SYMBOL) && (LA329_2425 <= COLLATE_SYMBOL)) || LA329_2425 == COMMA_SYMBOL || LA329_2425 == CONCAT_PIPES_SYMBOL || LA329_2425 == CROSS_SYMBOL || ((LA329_2425 >= DIV_OPERATOR) && (LA329_2425 <= DIV_SYMBOL)) || LA329_2425 == DOUBLE_QUOTED_TEXT || LA329_2425 == EQUAL_OPERATOR || LA329_2425 == FOR_SYMBOL || LA329_2425 == FROM_SYMBOL || ((LA329_2425 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2425 <= GREATER_THAN_OPERATOR)) || ((LA329_2425 >= GROUP_SYMBOL) && (LA329_2425 <= HAVING_SYMBOL)) || LA329_2425 == HEX_NUMBER || LA329_2425 == IDENTIFIER || LA329_2425 == INNER_SYMBOL || LA329_2425 == INTO_SYMBOL || LA329_2425 == IN_SYMBOL || LA329_2425 == IS_SYMBOL || ((LA329_2425 >= JOIN_SYMBOL) && (LA329_2425 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2425 >= LEFT_SYMBOL) && (LA329_2425 <= LESS_THAN_OPERATOR)) || ((LA329_2425 >= LIKE_SYMBOL) && (LA329_2425 <= LIMIT_SYMBOL)) || LA329_2425 == LOCK_SYMBOL || LA329_2425 == LOGICAL_AND_OPERATOR || LA329_2425 == LOGICAL_OR_OPERATOR || LA329_2425 == MINUS_OPERATOR || ((LA329_2425 >= MOD_OPERATOR) && (LA329_2425 <= MOD_SYMBOL)) || ((LA329_2425 >= MULT_OPERATOR) && (LA329_2425 <= NATURAL_SYMBOL)) || ((LA329_2425 >= NOT_EQUAL2_OPERATOR) && (LA329_2425 <= NOT_SYMBOL)) || LA329_2425 == NULL_SAFE_EQUAL_OPERATOR || LA329_2425 == ON_SYMBOL || LA329_2425 == OPEN_PAR_SYMBOL || ((LA329_2425 >= ORDER_SYMBOL) && (LA329_2425 <= OR_SYMBOL)) || LA329_2425 == PLUS_OPERATOR || LA329_2425 == PROCEDURE_SYMBOL || LA329_2425 == REGEXP_SYMBOL || LA329_2425 == RIGHT_SYMBOL || LA329_2425 == SEMICOLON_SYMBOL || LA329_2425 == SET_SYMBOL || ((LA329_2425 >= SHIFT_LEFT_OPERATOR) && (LA329_2425 <= SHIFT_RIGHT_OPERATOR)) || LA329_2425 == SINGLE_QUOTED_TEXT || LA329_2425 == STRAIGHT_JOIN_SYMBOL || LA329_2425 == UNION_SYMBOL || LA329_2425 == USING_SYMBOL || LA329_2425 == WHERE_SYMBOL || LA329_2425 == WITH_SYMBOL || LA329_2425 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2425;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_540 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2426 = LA(4);
                                        if ( (LA329_2426 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4895 = LA(5);
                                                if ( (LA329_4895 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4895 >= ACCOUNT_SYMBOL) && (LA329_4895 <= YEAR_SYMBOL)) || LA329_4895 == BACK_TICK_QUOTED_ID || LA329_4895 == DOUBLE_QUOTED_TEXT || LA329_4895 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4895;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2426 == EOF || ((LA329_2426 >= ACCOUNT_SYMBOL) && (LA329_2426 <= YEAR_SYMBOL)) || LA329_2426 == AND_SYMBOL || LA329_2426 == AS_SYMBOL || LA329_2426 == BACK_TICK_QUOTED_ID || LA329_2426 == BETWEEN_SYMBOL || LA329_2426 == BIN_NUMBER || LA329_2426 == BITWISE_AND_OPERATOR || ((LA329_2426 >= BITWISE_OR_OPERATOR) && (LA329_2426 <= BITWISE_XOR_OPERATOR)) || ((LA329_2426 >= CLOSE_CURLY_SYMBOL) && (LA329_2426 <= COLLATE_SYMBOL)) || LA329_2426 == COMMA_SYMBOL || LA329_2426 == CONCAT_PIPES_SYMBOL || LA329_2426 == CROSS_SYMBOL || ((LA329_2426 >= DIV_OPERATOR) && (LA329_2426 <= DIV_SYMBOL)) || LA329_2426 == DOUBLE_QUOTED_TEXT || LA329_2426 == EQUAL_OPERATOR || LA329_2426 == FOR_SYMBOL || LA329_2426 == FROM_SYMBOL || ((LA329_2426 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2426 <= GREATER_THAN_OPERATOR)) || ((LA329_2426 >= GROUP_SYMBOL) && (LA329_2426 <= HAVING_SYMBOL)) || LA329_2426 == HEX_NUMBER || LA329_2426 == IDENTIFIER || LA329_2426 == INNER_SYMBOL || LA329_2426 == INTO_SYMBOL || LA329_2426 == IN_SYMBOL || LA329_2426 == IS_SYMBOL || ((LA329_2426 >= JOIN_SYMBOL) && (LA329_2426 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2426 >= LEFT_SYMBOL) && (LA329_2426 <= LESS_THAN_OPERATOR)) || ((LA329_2426 >= LIKE_SYMBOL) && (LA329_2426 <= LIMIT_SYMBOL)) || LA329_2426 == LOCK_SYMBOL || LA329_2426 == LOGICAL_AND_OPERATOR || LA329_2426 == LOGICAL_OR_OPERATOR || LA329_2426 == MINUS_OPERATOR || ((LA329_2426 >= MOD_OPERATOR) && (LA329_2426 <= MOD_SYMBOL)) || ((LA329_2426 >= MULT_OPERATOR) && (LA329_2426 <= NATURAL_SYMBOL)) || ((LA329_2426 >= NOT_EQUAL2_OPERATOR) && (LA329_2426 <= NOT_SYMBOL)) || LA329_2426 == NULL_SAFE_EQUAL_OPERATOR || LA329_2426 == ON_SYMBOL || LA329_2426 == OPEN_PAR_SYMBOL || ((LA329_2426 >= ORDER_SYMBOL) && (LA329_2426 <= OR_SYMBOL)) || LA329_2426 == PLUS_OPERATOR || LA329_2426 == PROCEDURE_SYMBOL || LA329_2426 == REGEXP_SYMBOL || LA329_2426 == RIGHT_SYMBOL || LA329_2426 == SEMICOLON_SYMBOL || LA329_2426 == SET_SYMBOL || ((LA329_2426 >= SHIFT_LEFT_OPERATOR) && (LA329_2426 <= SHIFT_RIGHT_OPERATOR)) || LA329_2426 == SINGLE_QUOTED_TEXT || LA329_2426 == STRAIGHT_JOIN_SYMBOL || LA329_2426 == UNION_SYMBOL || LA329_2426 == USING_SYMBOL || LA329_2426 == WHERE_SYMBOL || LA329_2426 == WITH_SYMBOL || LA329_2426 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2426;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_540 >= ACTION_SYMBOL) && (LA329_540 <= SHARE_SYMBOL)) || ((LA329_540 >= SLOW_SYMBOL) && (LA329_540 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2427 = LA(4);
                                        if ( (LA329_2427 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_4949 = LA(5);
                                                if ( (LA329_4949 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_4949 >= ACCOUNT_SYMBOL) && (LA329_4949 <= YEAR_SYMBOL)) || LA329_4949 == BACK_TICK_QUOTED_ID || LA329_4949 == DOUBLE_QUOTED_TEXT || LA329_4949 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 4949;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2427 == EOF || ((LA329_2427 >= ACCOUNT_SYMBOL) && (LA329_2427 <= YEAR_SYMBOL)) || LA329_2427 == AND_SYMBOL || LA329_2427 == AS_SYMBOL || LA329_2427 == BACK_TICK_QUOTED_ID || LA329_2427 == BETWEEN_SYMBOL || LA329_2427 == BIN_NUMBER || LA329_2427 == BITWISE_AND_OPERATOR || ((LA329_2427 >= BITWISE_OR_OPERATOR) && (LA329_2427 <= BITWISE_XOR_OPERATOR)) || ((LA329_2427 >= CLOSE_CURLY_SYMBOL) && (LA329_2427 <= COLLATE_SYMBOL)) || LA329_2427 == COMMA_SYMBOL || LA329_2427 == CONCAT_PIPES_SYMBOL || LA329_2427 == CROSS_SYMBOL || ((LA329_2427 >= DIV_OPERATOR) && (LA329_2427 <= DIV_SYMBOL)) || LA329_2427 == DOUBLE_QUOTED_TEXT || LA329_2427 == EQUAL_OPERATOR || LA329_2427 == FOR_SYMBOL || LA329_2427 == FROM_SYMBOL || ((LA329_2427 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2427 <= GREATER_THAN_OPERATOR)) || ((LA329_2427 >= GROUP_SYMBOL) && (LA329_2427 <= HAVING_SYMBOL)) || LA329_2427 == HEX_NUMBER || LA329_2427 == IDENTIFIER || LA329_2427 == INNER_SYMBOL || LA329_2427 == INTO_SYMBOL || LA329_2427 == IN_SYMBOL || LA329_2427 == IS_SYMBOL || ((LA329_2427 >= JOIN_SYMBOL) && (LA329_2427 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2427 >= LEFT_SYMBOL) && (LA329_2427 <= LESS_THAN_OPERATOR)) || ((LA329_2427 >= LIKE_SYMBOL) && (LA329_2427 <= LIMIT_SYMBOL)) || LA329_2427 == LOCK_SYMBOL || LA329_2427 == LOGICAL_AND_OPERATOR || LA329_2427 == LOGICAL_OR_OPERATOR || LA329_2427 == MINUS_OPERATOR || ((LA329_2427 >= MOD_OPERATOR) && (LA329_2427 <= MOD_SYMBOL)) || ((LA329_2427 >= MULT_OPERATOR) && (LA329_2427 <= NATURAL_SYMBOL)) || ((LA329_2427 >= NOT_EQUAL2_OPERATOR) && (LA329_2427 <= NOT_SYMBOL)) || LA329_2427 == NULL_SAFE_EQUAL_OPERATOR || LA329_2427 == ON_SYMBOL || LA329_2427 == OPEN_PAR_SYMBOL || ((LA329_2427 >= ORDER_SYMBOL) && (LA329_2427 <= OR_SYMBOL)) || LA329_2427 == PLUS_OPERATOR || LA329_2427 == PROCEDURE_SYMBOL || LA329_2427 == REGEXP_SYMBOL || LA329_2427 == RIGHT_SYMBOL || LA329_2427 == SEMICOLON_SYMBOL || LA329_2427 == SET_SYMBOL || ((LA329_2427 >= SHIFT_LEFT_OPERATOR) && (LA329_2427 <= SHIFT_RIGHT_OPERATOR)) || LA329_2427 == SINGLE_QUOTED_TEXT || LA329_2427 == STRAIGHT_JOIN_SYMBOL || LA329_2427 == UNION_SYMBOL || LA329_2427 == USING_SYMBOL || LA329_2427 == WHERE_SYMBOL || LA329_2427 == WITH_SYMBOL || LA329_2427 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2427;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_540 >= ACCOUNT_SYMBOL) && (LA329_540 <= XA_SYMBOL)) || LA329_540 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2428 = LA(4);
                                        if ( (LA329_2428 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5003 = LA(5);
                                                if ( (LA329_5003 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5003 >= ACCOUNT_SYMBOL) && (LA329_5003 <= YEAR_SYMBOL)) || LA329_5003 == BACK_TICK_QUOTED_ID || LA329_5003 == DOUBLE_QUOTED_TEXT || LA329_5003 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5003;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2428 == EOF || ((LA329_2428 >= ACCOUNT_SYMBOL) && (LA329_2428 <= YEAR_SYMBOL)) || LA329_2428 == AND_SYMBOL || LA329_2428 == AS_SYMBOL || LA329_2428 == BACK_TICK_QUOTED_ID || LA329_2428 == BETWEEN_SYMBOL || LA329_2428 == BIN_NUMBER || LA329_2428 == BITWISE_AND_OPERATOR || ((LA329_2428 >= BITWISE_OR_OPERATOR) && (LA329_2428 <= BITWISE_XOR_OPERATOR)) || ((LA329_2428 >= CLOSE_CURLY_SYMBOL) && (LA329_2428 <= COLLATE_SYMBOL)) || LA329_2428 == COMMA_SYMBOL || LA329_2428 == CONCAT_PIPES_SYMBOL || LA329_2428 == CROSS_SYMBOL || ((LA329_2428 >= DIV_OPERATOR) && (LA329_2428 <= DIV_SYMBOL)) || LA329_2428 == DOUBLE_QUOTED_TEXT || LA329_2428 == EQUAL_OPERATOR || LA329_2428 == FOR_SYMBOL || LA329_2428 == FROM_SYMBOL || ((LA329_2428 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2428 <= GREATER_THAN_OPERATOR)) || ((LA329_2428 >= GROUP_SYMBOL) && (LA329_2428 <= HAVING_SYMBOL)) || LA329_2428 == HEX_NUMBER || LA329_2428 == IDENTIFIER || LA329_2428 == INNER_SYMBOL || LA329_2428 == INTO_SYMBOL || LA329_2428 == IN_SYMBOL || LA329_2428 == IS_SYMBOL || ((LA329_2428 >= JOIN_SYMBOL) && (LA329_2428 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2428 >= LEFT_SYMBOL) && (LA329_2428 <= LESS_THAN_OPERATOR)) || ((LA329_2428 >= LIKE_SYMBOL) && (LA329_2428 <= LIMIT_SYMBOL)) || LA329_2428 == LOCK_SYMBOL || LA329_2428 == LOGICAL_AND_OPERATOR || LA329_2428 == LOGICAL_OR_OPERATOR || LA329_2428 == MINUS_OPERATOR || ((LA329_2428 >= MOD_OPERATOR) && (LA329_2428 <= MOD_SYMBOL)) || ((LA329_2428 >= MULT_OPERATOR) && (LA329_2428 <= NATURAL_SYMBOL)) || ((LA329_2428 >= NOT_EQUAL2_OPERATOR) && (LA329_2428 <= NOT_SYMBOL)) || LA329_2428 == NULL_SAFE_EQUAL_OPERATOR || LA329_2428 == ON_SYMBOL || LA329_2428 == OPEN_PAR_SYMBOL || ((LA329_2428 >= ORDER_SYMBOL) && (LA329_2428 <= OR_SYMBOL)) || LA329_2428 == PLUS_OPERATOR || LA329_2428 == PROCEDURE_SYMBOL || LA329_2428 == REGEXP_SYMBOL || LA329_2428 == RIGHT_SYMBOL || LA329_2428 == SEMICOLON_SYMBOL || LA329_2428 == SET_SYMBOL || ((LA329_2428 >= SHIFT_LEFT_OPERATOR) && (LA329_2428 <= SHIFT_RIGHT_OPERATOR)) || LA329_2428 == SINGLE_QUOTED_TEXT || LA329_2428 == STRAIGHT_JOIN_SYMBOL || LA329_2428 == UNION_SYMBOL || LA329_2428 == USING_SYMBOL || LA329_2428 == WHERE_SYMBOL || LA329_2428 == WITH_SYMBOL || LA329_2428 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2428;


                                            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  = 329;
                                    EXCEPTION->state        = 540;


                                    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  = 329;
                            EXCEPTION->state        = 23;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == MINUTE_SYMBOL))
                {
                    {
                        int LA329_24 = LA(2);
                        if ( (LA329_24 == EOF || ((LA329_24 >= ACCOUNT_SYMBOL) && (LA329_24 <= YEAR_SYMBOL)) || LA329_24 == AND_SYMBOL || LA329_24 == AS_SYMBOL || LA329_24 == BACK_TICK_QUOTED_ID || LA329_24 == BETWEEN_SYMBOL || LA329_24 == BIN_NUMBER || LA329_24 == BITWISE_AND_OPERATOR || ((LA329_24 >= BITWISE_OR_OPERATOR) && (LA329_24 <= BITWISE_XOR_OPERATOR)) || ((LA329_24 >= CLOSE_CURLY_SYMBOL) && (LA329_24 <= COLLATE_SYMBOL)) || LA329_24 == COMMA_SYMBOL || LA329_24 == CONCAT_PIPES_SYMBOL || LA329_24 == CROSS_SYMBOL || ((LA329_24 >= DIV_OPERATOR) && (LA329_24 <= DIV_SYMBOL)) || LA329_24 == DOUBLE_QUOTED_TEXT || LA329_24 == EQUAL_OPERATOR || LA329_24 == FOR_SYMBOL || LA329_24 == FROM_SYMBOL || ((LA329_24 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_24 <= GREATER_THAN_OPERATOR)) || ((LA329_24 >= GROUP_SYMBOL) && (LA329_24 <= HAVING_SYMBOL)) || LA329_24 == HEX_NUMBER || LA329_24 == IDENTIFIER || LA329_24 == INNER_SYMBOL || LA329_24 == INTO_SYMBOL || LA329_24 == IN_SYMBOL || LA329_24 == IS_SYMBOL || ((LA329_24 >= JOIN_SYMBOL) && (LA329_24 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_24 >= LEFT_SYMBOL) && (LA329_24 <= LESS_THAN_OPERATOR)) || ((LA329_24 >= LIKE_SYMBOL) && (LA329_24 <= LIMIT_SYMBOL)) || LA329_24 == LOCK_SYMBOL || LA329_24 == LOGICAL_AND_OPERATOR || LA329_24 == LOGICAL_OR_OPERATOR || LA329_24 == MINUS_OPERATOR || ((LA329_24 >= MOD_OPERATOR) && (LA329_24 <= MOD_SYMBOL)) || ((LA329_24 >= MULT_OPERATOR) && (LA329_24 <= NATURAL_SYMBOL)) || ((LA329_24 >= NOT_EQUAL2_OPERATOR) && (LA329_24 <= NOT_SYMBOL)) || LA329_24 == NULL_SAFE_EQUAL_OPERATOR || LA329_24 == ON_SYMBOL || LA329_24 == OPEN_PAR_SYMBOL || ((LA329_24 >= ORDER_SYMBOL) && (LA329_24 <= OR_SYMBOL)) || LA329_24 == PLUS_OPERATOR || LA329_24 == PROCEDURE_SYMBOL || LA329_24 == REGEXP_SYMBOL || LA329_24 == RIGHT_SYMBOL || LA329_24 == SEMICOLON_SYMBOL || LA329_24 == SET_SYMBOL || ((LA329_24 >= SHIFT_LEFT_OPERATOR) && (LA329_24 <= SHIFT_RIGHT_OPERATOR)) || LA329_24 == SINGLE_QUOTED_TEXT || LA329_24 == STRAIGHT_JOIN_SYMBOL || LA329_24 == UNION_SYMBOL || LA329_24 == USING_SYMBOL || LA329_24 == WHERE_SYMBOL || LA329_24 == WITH_SYMBOL || LA329_24 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_24 == DOT_SYMBOL))
                        {
                            {
                                int LA329_594 = LA(3);
                                if ( (LA329_594 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_594 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2430 = LA(4);
                                        if ( (LA329_2430 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5057 = LA(5);
                                                if ( (LA329_5057 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5057 >= ACCOUNT_SYMBOL) && (LA329_5057 <= YEAR_SYMBOL)) || LA329_5057 == BACK_TICK_QUOTED_ID || LA329_5057 == DOUBLE_QUOTED_TEXT || LA329_5057 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5057;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2430 == EOF || ((LA329_2430 >= ACCOUNT_SYMBOL) && (LA329_2430 <= YEAR_SYMBOL)) || LA329_2430 == AND_SYMBOL || LA329_2430 == AS_SYMBOL || LA329_2430 == BACK_TICK_QUOTED_ID || LA329_2430 == BETWEEN_SYMBOL || LA329_2430 == BIN_NUMBER || LA329_2430 == BITWISE_AND_OPERATOR || ((LA329_2430 >= BITWISE_OR_OPERATOR) && (LA329_2430 <= BITWISE_XOR_OPERATOR)) || ((LA329_2430 >= CLOSE_CURLY_SYMBOL) && (LA329_2430 <= COLLATE_SYMBOL)) || LA329_2430 == COMMA_SYMBOL || LA329_2430 == CONCAT_PIPES_SYMBOL || LA329_2430 == CROSS_SYMBOL || ((LA329_2430 >= DIV_OPERATOR) && (LA329_2430 <= DIV_SYMBOL)) || LA329_2430 == DOUBLE_QUOTED_TEXT || LA329_2430 == EQUAL_OPERATOR || LA329_2430 == FOR_SYMBOL || LA329_2430 == FROM_SYMBOL || ((LA329_2430 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2430 <= GREATER_THAN_OPERATOR)) || ((LA329_2430 >= GROUP_SYMBOL) && (LA329_2430 <= HAVING_SYMBOL)) || LA329_2430 == HEX_NUMBER || LA329_2430 == IDENTIFIER || LA329_2430 == INNER_SYMBOL || LA329_2430 == INTO_SYMBOL || LA329_2430 == IN_SYMBOL || LA329_2430 == IS_SYMBOL || ((LA329_2430 >= JOIN_SYMBOL) && (LA329_2430 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2430 >= LEFT_SYMBOL) && (LA329_2430 <= LESS_THAN_OPERATOR)) || ((LA329_2430 >= LIKE_SYMBOL) && (LA329_2430 <= LIMIT_SYMBOL)) || LA329_2430 == LOCK_SYMBOL || LA329_2430 == LOGICAL_AND_OPERATOR || LA329_2430 == LOGICAL_OR_OPERATOR || LA329_2430 == MINUS_OPERATOR || ((LA329_2430 >= MOD_OPERATOR) && (LA329_2430 <= MOD_SYMBOL)) || ((LA329_2430 >= MULT_OPERATOR) && (LA329_2430 <= NATURAL_SYMBOL)) || ((LA329_2430 >= NOT_EQUAL2_OPERATOR) && (LA329_2430 <= NOT_SYMBOL)) || LA329_2430 == NULL_SAFE_EQUAL_OPERATOR || LA329_2430 == ON_SYMBOL || LA329_2430 == OPEN_PAR_SYMBOL || ((LA329_2430 >= ORDER_SYMBOL) && (LA329_2430 <= OR_SYMBOL)) || LA329_2430 == PLUS_OPERATOR || LA329_2430 == PROCEDURE_SYMBOL || LA329_2430 == REGEXP_SYMBOL || LA329_2430 == RIGHT_SYMBOL || LA329_2430 == SEMICOLON_SYMBOL || LA329_2430 == SET_SYMBOL || ((LA329_2430 >= SHIFT_LEFT_OPERATOR) && (LA329_2430 <= SHIFT_RIGHT_OPERATOR)) || LA329_2430 == SINGLE_QUOTED_TEXT || LA329_2430 == STRAIGHT_JOIN_SYMBOL || LA329_2430 == UNION_SYMBOL || LA329_2430 == USING_SYMBOL || LA329_2430 == WHERE_SYMBOL || LA329_2430 == WITH_SYMBOL || LA329_2430 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2430;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_594 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2431 = LA(4);
                                        if ( (LA329_2431 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5111 = LA(5);
                                                if ( (LA329_5111 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5111 >= ACCOUNT_SYMBOL) && (LA329_5111 <= YEAR_SYMBOL)) || LA329_5111 == BACK_TICK_QUOTED_ID || LA329_5111 == DOUBLE_QUOTED_TEXT || LA329_5111 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5111;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2431 == EOF || ((LA329_2431 >= ACCOUNT_SYMBOL) && (LA329_2431 <= YEAR_SYMBOL)) || LA329_2431 == AND_SYMBOL || LA329_2431 == AS_SYMBOL || LA329_2431 == BACK_TICK_QUOTED_ID || LA329_2431 == BETWEEN_SYMBOL || LA329_2431 == BIN_NUMBER || LA329_2431 == BITWISE_AND_OPERATOR || ((LA329_2431 >= BITWISE_OR_OPERATOR) && (LA329_2431 <= BITWISE_XOR_OPERATOR)) || ((LA329_2431 >= CLOSE_CURLY_SYMBOL) && (LA329_2431 <= COLLATE_SYMBOL)) || LA329_2431 == COMMA_SYMBOL || LA329_2431 == CONCAT_PIPES_SYMBOL || LA329_2431 == CROSS_SYMBOL || ((LA329_2431 >= DIV_OPERATOR) && (LA329_2431 <= DIV_SYMBOL)) || LA329_2431 == DOUBLE_QUOTED_TEXT || LA329_2431 == EQUAL_OPERATOR || LA329_2431 == FOR_SYMBOL || LA329_2431 == FROM_SYMBOL || ((LA329_2431 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2431 <= GREATER_THAN_OPERATOR)) || ((LA329_2431 >= GROUP_SYMBOL) && (LA329_2431 <= HAVING_SYMBOL)) || LA329_2431 == HEX_NUMBER || LA329_2431 == IDENTIFIER || LA329_2431 == INNER_SYMBOL || LA329_2431 == INTO_SYMBOL || LA329_2431 == IN_SYMBOL || LA329_2431 == IS_SYMBOL || ((LA329_2431 >= JOIN_SYMBOL) && (LA329_2431 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2431 >= LEFT_SYMBOL) && (LA329_2431 <= LESS_THAN_OPERATOR)) || ((LA329_2431 >= LIKE_SYMBOL) && (LA329_2431 <= LIMIT_SYMBOL)) || LA329_2431 == LOCK_SYMBOL || LA329_2431 == LOGICAL_AND_OPERATOR || LA329_2431 == LOGICAL_OR_OPERATOR || LA329_2431 == MINUS_OPERATOR || ((LA329_2431 >= MOD_OPERATOR) && (LA329_2431 <= MOD_SYMBOL)) || ((LA329_2431 >= MULT_OPERATOR) && (LA329_2431 <= NATURAL_SYMBOL)) || ((LA329_2431 >= NOT_EQUAL2_OPERATOR) && (LA329_2431 <= NOT_SYMBOL)) || LA329_2431 == NULL_SAFE_EQUAL_OPERATOR || LA329_2431 == ON_SYMBOL || LA329_2431 == OPEN_PAR_SYMBOL || ((LA329_2431 >= ORDER_SYMBOL) && (LA329_2431 <= OR_SYMBOL)) || LA329_2431 == PLUS_OPERATOR || LA329_2431 == PROCEDURE_SYMBOL || LA329_2431 == REGEXP_SYMBOL || LA329_2431 == RIGHT_SYMBOL || LA329_2431 == SEMICOLON_SYMBOL || LA329_2431 == SET_SYMBOL || ((LA329_2431 >= SHIFT_LEFT_OPERATOR) && (LA329_2431 <= SHIFT_RIGHT_OPERATOR)) || LA329_2431 == SINGLE_QUOTED_TEXT || LA329_2431 == STRAIGHT_JOIN_SYMBOL || LA329_2431 == UNION_SYMBOL || LA329_2431 == USING_SYMBOL || LA329_2431 == WHERE_SYMBOL || LA329_2431 == WITH_SYMBOL || LA329_2431 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2431;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_594 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2432 = LA(4);
                                        if ( (LA329_2432 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5165 = LA(5);
                                                if ( (LA329_5165 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5165 >= ACCOUNT_SYMBOL) && (LA329_5165 <= YEAR_SYMBOL)) || LA329_5165 == BACK_TICK_QUOTED_ID || LA329_5165 == DOUBLE_QUOTED_TEXT || LA329_5165 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5165;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2432 == EOF || ((LA329_2432 >= ACCOUNT_SYMBOL) && (LA329_2432 <= YEAR_SYMBOL)) || LA329_2432 == AND_SYMBOL || LA329_2432 == AS_SYMBOL || LA329_2432 == BACK_TICK_QUOTED_ID || LA329_2432 == BETWEEN_SYMBOL || LA329_2432 == BIN_NUMBER || LA329_2432 == BITWISE_AND_OPERATOR || ((LA329_2432 >= BITWISE_OR_OPERATOR) && (LA329_2432 <= BITWISE_XOR_OPERATOR)) || ((LA329_2432 >= CLOSE_CURLY_SYMBOL) && (LA329_2432 <= COLLATE_SYMBOL)) || LA329_2432 == COMMA_SYMBOL || LA329_2432 == CONCAT_PIPES_SYMBOL || LA329_2432 == CROSS_SYMBOL || ((LA329_2432 >= DIV_OPERATOR) && (LA329_2432 <= DIV_SYMBOL)) || LA329_2432 == DOUBLE_QUOTED_TEXT || LA329_2432 == EQUAL_OPERATOR || LA329_2432 == FOR_SYMBOL || LA329_2432 == FROM_SYMBOL || ((LA329_2432 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2432 <= GREATER_THAN_OPERATOR)) || ((LA329_2432 >= GROUP_SYMBOL) && (LA329_2432 <= HAVING_SYMBOL)) || LA329_2432 == HEX_NUMBER || LA329_2432 == IDENTIFIER || LA329_2432 == INNER_SYMBOL || LA329_2432 == INTO_SYMBOL || LA329_2432 == IN_SYMBOL || LA329_2432 == IS_SYMBOL || ((LA329_2432 >= JOIN_SYMBOL) && (LA329_2432 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2432 >= LEFT_SYMBOL) && (LA329_2432 <= LESS_THAN_OPERATOR)) || ((LA329_2432 >= LIKE_SYMBOL) && (LA329_2432 <= LIMIT_SYMBOL)) || LA329_2432 == LOCK_SYMBOL || LA329_2432 == LOGICAL_AND_OPERATOR || LA329_2432 == LOGICAL_OR_OPERATOR || LA329_2432 == MINUS_OPERATOR || ((LA329_2432 >= MOD_OPERATOR) && (LA329_2432 <= MOD_SYMBOL)) || ((LA329_2432 >= MULT_OPERATOR) && (LA329_2432 <= NATURAL_SYMBOL)) || ((LA329_2432 >= NOT_EQUAL2_OPERATOR) && (LA329_2432 <= NOT_SYMBOL)) || LA329_2432 == NULL_SAFE_EQUAL_OPERATOR || LA329_2432 == ON_SYMBOL || LA329_2432 == OPEN_PAR_SYMBOL || ((LA329_2432 >= ORDER_SYMBOL) && (LA329_2432 <= OR_SYMBOL)) || LA329_2432 == PLUS_OPERATOR || LA329_2432 == PROCEDURE_SYMBOL || LA329_2432 == REGEXP_SYMBOL || LA329_2432 == RIGHT_SYMBOL || LA329_2432 == SEMICOLON_SYMBOL || LA329_2432 == SET_SYMBOL || ((LA329_2432 >= SHIFT_LEFT_OPERATOR) && (LA329_2432 <= SHIFT_RIGHT_OPERATOR)) || LA329_2432 == SINGLE_QUOTED_TEXT || LA329_2432 == STRAIGHT_JOIN_SYMBOL || LA329_2432 == UNION_SYMBOL || LA329_2432 == USING_SYMBOL || LA329_2432 == WHERE_SYMBOL || LA329_2432 == WITH_SYMBOL || LA329_2432 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2432;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_594 >= ACTION_SYMBOL) && (LA329_594 <= SHARE_SYMBOL)) || ((LA329_594 >= SLOW_SYMBOL) && (LA329_594 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2433 = LA(4);
                                        if ( (LA329_2433 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5219 = LA(5);
                                                if ( (LA329_5219 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5219 >= ACCOUNT_SYMBOL) && (LA329_5219 <= YEAR_SYMBOL)) || LA329_5219 == BACK_TICK_QUOTED_ID || LA329_5219 == DOUBLE_QUOTED_TEXT || LA329_5219 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5219;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2433 == EOF || ((LA329_2433 >= ACCOUNT_SYMBOL) && (LA329_2433 <= YEAR_SYMBOL)) || LA329_2433 == AND_SYMBOL || LA329_2433 == AS_SYMBOL || LA329_2433 == BACK_TICK_QUOTED_ID || LA329_2433 == BETWEEN_SYMBOL || LA329_2433 == BIN_NUMBER || LA329_2433 == BITWISE_AND_OPERATOR || ((LA329_2433 >= BITWISE_OR_OPERATOR) && (LA329_2433 <= BITWISE_XOR_OPERATOR)) || ((LA329_2433 >= CLOSE_CURLY_SYMBOL) && (LA329_2433 <= COLLATE_SYMBOL)) || LA329_2433 == COMMA_SYMBOL || LA329_2433 == CONCAT_PIPES_SYMBOL || LA329_2433 == CROSS_SYMBOL || ((LA329_2433 >= DIV_OPERATOR) && (LA329_2433 <= DIV_SYMBOL)) || LA329_2433 == DOUBLE_QUOTED_TEXT || LA329_2433 == EQUAL_OPERATOR || LA329_2433 == FOR_SYMBOL || LA329_2433 == FROM_SYMBOL || ((LA329_2433 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2433 <= GREATER_THAN_OPERATOR)) || ((LA329_2433 >= GROUP_SYMBOL) && (LA329_2433 <= HAVING_SYMBOL)) || LA329_2433 == HEX_NUMBER || LA329_2433 == IDENTIFIER || LA329_2433 == INNER_SYMBOL || LA329_2433 == INTO_SYMBOL || LA329_2433 == IN_SYMBOL || LA329_2433 == IS_SYMBOL || ((LA329_2433 >= JOIN_SYMBOL) && (LA329_2433 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2433 >= LEFT_SYMBOL) && (LA329_2433 <= LESS_THAN_OPERATOR)) || ((LA329_2433 >= LIKE_SYMBOL) && (LA329_2433 <= LIMIT_SYMBOL)) || LA329_2433 == LOCK_SYMBOL || LA329_2433 == LOGICAL_AND_OPERATOR || LA329_2433 == LOGICAL_OR_OPERATOR || LA329_2433 == MINUS_OPERATOR || ((LA329_2433 >= MOD_OPERATOR) && (LA329_2433 <= MOD_SYMBOL)) || ((LA329_2433 >= MULT_OPERATOR) && (LA329_2433 <= NATURAL_SYMBOL)) || ((LA329_2433 >= NOT_EQUAL2_OPERATOR) && (LA329_2433 <= NOT_SYMBOL)) || LA329_2433 == NULL_SAFE_EQUAL_OPERATOR || LA329_2433 == ON_SYMBOL || LA329_2433 == OPEN_PAR_SYMBOL || ((LA329_2433 >= ORDER_SYMBOL) && (LA329_2433 <= OR_SYMBOL)) || LA329_2433 == PLUS_OPERATOR || LA329_2433 == PROCEDURE_SYMBOL || LA329_2433 == REGEXP_SYMBOL || LA329_2433 == RIGHT_SYMBOL || LA329_2433 == SEMICOLON_SYMBOL || LA329_2433 == SET_SYMBOL || ((LA329_2433 >= SHIFT_LEFT_OPERATOR) && (LA329_2433 <= SHIFT_RIGHT_OPERATOR)) || LA329_2433 == SINGLE_QUOTED_TEXT || LA329_2433 == STRAIGHT_JOIN_SYMBOL || LA329_2433 == UNION_SYMBOL || LA329_2433 == USING_SYMBOL || LA329_2433 == WHERE_SYMBOL || LA329_2433 == WITH_SYMBOL || LA329_2433 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2433;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_594 >= ACCOUNT_SYMBOL) && (LA329_594 <= XA_SYMBOL)) || LA329_594 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2434 = LA(4);
                                        if ( (LA329_2434 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5273 = LA(5);
                                                if ( (LA329_5273 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5273 >= ACCOUNT_SYMBOL) && (LA329_5273 <= YEAR_SYMBOL)) || LA329_5273 == BACK_TICK_QUOTED_ID || LA329_5273 == DOUBLE_QUOTED_TEXT || LA329_5273 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5273;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2434 == EOF || ((LA329_2434 >= ACCOUNT_SYMBOL) && (LA329_2434 <= YEAR_SYMBOL)) || LA329_2434 == AND_SYMBOL || LA329_2434 == AS_SYMBOL || LA329_2434 == BACK_TICK_QUOTED_ID || LA329_2434 == BETWEEN_SYMBOL || LA329_2434 == BIN_NUMBER || LA329_2434 == BITWISE_AND_OPERATOR || ((LA329_2434 >= BITWISE_OR_OPERATOR) && (LA329_2434 <= BITWISE_XOR_OPERATOR)) || ((LA329_2434 >= CLOSE_CURLY_SYMBOL) && (LA329_2434 <= COLLATE_SYMBOL)) || LA329_2434 == COMMA_SYMBOL || LA329_2434 == CONCAT_PIPES_SYMBOL || LA329_2434 == CROSS_SYMBOL || ((LA329_2434 >= DIV_OPERATOR) && (LA329_2434 <= DIV_SYMBOL)) || LA329_2434 == DOUBLE_QUOTED_TEXT || LA329_2434 == EQUAL_OPERATOR || LA329_2434 == FOR_SYMBOL || LA329_2434 == FROM_SYMBOL || ((LA329_2434 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2434 <= GREATER_THAN_OPERATOR)) || ((LA329_2434 >= GROUP_SYMBOL) && (LA329_2434 <= HAVING_SYMBOL)) || LA329_2434 == HEX_NUMBER || LA329_2434 == IDENTIFIER || LA329_2434 == INNER_SYMBOL || LA329_2434 == INTO_SYMBOL || LA329_2434 == IN_SYMBOL || LA329_2434 == IS_SYMBOL || ((LA329_2434 >= JOIN_SYMBOL) && (LA329_2434 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2434 >= LEFT_SYMBOL) && (LA329_2434 <= LESS_THAN_OPERATOR)) || ((LA329_2434 >= LIKE_SYMBOL) && (LA329_2434 <= LIMIT_SYMBOL)) || LA329_2434 == LOCK_SYMBOL || LA329_2434 == LOGICAL_AND_OPERATOR || LA329_2434 == LOGICAL_OR_OPERATOR || LA329_2434 == MINUS_OPERATOR || ((LA329_2434 >= MOD_OPERATOR) && (LA329_2434 <= MOD_SYMBOL)) || ((LA329_2434 >= MULT_OPERATOR) && (LA329_2434 <= NATURAL_SYMBOL)) || ((LA329_2434 >= NOT_EQUAL2_OPERATOR) && (LA329_2434 <= NOT_SYMBOL)) || LA329_2434 == NULL_SAFE_EQUAL_OPERATOR || LA329_2434 == ON_SYMBOL || LA329_2434 == OPEN_PAR_SYMBOL || ((LA329_2434 >= ORDER_SYMBOL) && (LA329_2434 <= OR_SYMBOL)) || LA329_2434 == PLUS_OPERATOR || LA329_2434 == PROCEDURE_SYMBOL || LA329_2434 == REGEXP_SYMBOL || LA329_2434 == RIGHT_SYMBOL || LA329_2434 == SEMICOLON_SYMBOL || LA329_2434 == SET_SYMBOL || ((LA329_2434 >= SHIFT_LEFT_OPERATOR) && (LA329_2434 <= SHIFT_RIGHT_OPERATOR)) || LA329_2434 == SINGLE_QUOTED_TEXT || LA329_2434 == STRAIGHT_JOIN_SYMBOL || LA329_2434 == UNION_SYMBOL || LA329_2434 == USING_SYMBOL || LA329_2434 == WHERE_SYMBOL || LA329_2434 == WITH_SYMBOL || LA329_2434 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2434;


                                            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  = 329;
                                    EXCEPTION->state        = 594;


                                    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  = 329;
                            EXCEPTION->state        = 24;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == MONTH_SYMBOL))
                {
                    {
                        int LA329_27 = LA(2);
                        if ( (LA329_27 == EOF || ((LA329_27 >= ACCOUNT_SYMBOL) && (LA329_27 <= YEAR_SYMBOL)) || LA329_27 == AND_SYMBOL || LA329_27 == AS_SYMBOL || LA329_27 == BACK_TICK_QUOTED_ID || LA329_27 == BETWEEN_SYMBOL || LA329_27 == BIN_NUMBER || LA329_27 == BITWISE_AND_OPERATOR || ((LA329_27 >= BITWISE_OR_OPERATOR) && (LA329_27 <= BITWISE_XOR_OPERATOR)) || ((LA329_27 >= CLOSE_CURLY_SYMBOL) && (LA329_27 <= COLLATE_SYMBOL)) || LA329_27 == COMMA_SYMBOL || LA329_27 == CONCAT_PIPES_SYMBOL || LA329_27 == CROSS_SYMBOL || ((LA329_27 >= DIV_OPERATOR) && (LA329_27 <= DIV_SYMBOL)) || LA329_27 == DOUBLE_QUOTED_TEXT || LA329_27 == EQUAL_OPERATOR || LA329_27 == FOR_SYMBOL || LA329_27 == FROM_SYMBOL || ((LA329_27 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_27 <= GREATER_THAN_OPERATOR)) || ((LA329_27 >= GROUP_SYMBOL) && (LA329_27 <= HAVING_SYMBOL)) || LA329_27 == HEX_NUMBER || LA329_27 == IDENTIFIER || LA329_27 == INNER_SYMBOL || LA329_27 == INTO_SYMBOL || LA329_27 == IN_SYMBOL || LA329_27 == IS_SYMBOL || ((LA329_27 >= JOIN_SYMBOL) && (LA329_27 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_27 >= LEFT_SYMBOL) && (LA329_27 <= LESS_THAN_OPERATOR)) || ((LA329_27 >= LIKE_SYMBOL) && (LA329_27 <= LIMIT_SYMBOL)) || LA329_27 == LOCK_SYMBOL || LA329_27 == LOGICAL_AND_OPERATOR || LA329_27 == LOGICAL_OR_OPERATOR || LA329_27 == MINUS_OPERATOR || ((LA329_27 >= MOD_OPERATOR) && (LA329_27 <= MOD_SYMBOL)) || ((LA329_27 >= MULT_OPERATOR) && (LA329_27 <= NATURAL_SYMBOL)) || ((LA329_27 >= NOT_EQUAL2_OPERATOR) && (LA329_27 <= NOT_SYMBOL)) || LA329_27 == NULL_SAFE_EQUAL_OPERATOR || LA329_27 == ON_SYMBOL || LA329_27 == OPEN_PAR_SYMBOL || ((LA329_27 >= ORDER_SYMBOL) && (LA329_27 <= OR_SYMBOL)) || LA329_27 == PLUS_OPERATOR || LA329_27 == PROCEDURE_SYMBOL || LA329_27 == REGEXP_SYMBOL || LA329_27 == RIGHT_SYMBOL || LA329_27 == SEMICOLON_SYMBOL || LA329_27 == SET_SYMBOL || ((LA329_27 >= SHIFT_LEFT_OPERATOR) && (LA329_27 <= SHIFT_RIGHT_OPERATOR)) || LA329_27 == SINGLE_QUOTED_TEXT || LA329_27 == STRAIGHT_JOIN_SYMBOL || LA329_27 == UNION_SYMBOL || LA329_27 == USING_SYMBOL || LA329_27 == WHERE_SYMBOL || LA329_27 == WITH_SYMBOL || LA329_27 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_27 == DOT_SYMBOL))
                        {
                            {
                                int LA329_648 = LA(3);
                                if ( (LA329_648 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_648 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2436 = LA(4);
                                        if ( (LA329_2436 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5327 = LA(5);
                                                if ( (LA329_5327 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5327 >= ACCOUNT_SYMBOL) && (LA329_5327 <= YEAR_SYMBOL)) || LA329_5327 == BACK_TICK_QUOTED_ID || LA329_5327 == DOUBLE_QUOTED_TEXT || LA329_5327 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5327;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2436 == EOF || ((LA329_2436 >= ACCOUNT_SYMBOL) && (LA329_2436 <= YEAR_SYMBOL)) || LA329_2436 == AND_SYMBOL || LA329_2436 == AS_SYMBOL || LA329_2436 == BACK_TICK_QUOTED_ID || LA329_2436 == BETWEEN_SYMBOL || LA329_2436 == BIN_NUMBER || LA329_2436 == BITWISE_AND_OPERATOR || ((LA329_2436 >= BITWISE_OR_OPERATOR) && (LA329_2436 <= BITWISE_XOR_OPERATOR)) || ((LA329_2436 >= CLOSE_CURLY_SYMBOL) && (LA329_2436 <= COLLATE_SYMBOL)) || LA329_2436 == COMMA_SYMBOL || LA329_2436 == CONCAT_PIPES_SYMBOL || LA329_2436 == CROSS_SYMBOL || ((LA329_2436 >= DIV_OPERATOR) && (LA329_2436 <= DIV_SYMBOL)) || LA329_2436 == DOUBLE_QUOTED_TEXT || LA329_2436 == EQUAL_OPERATOR || LA329_2436 == FOR_SYMBOL || LA329_2436 == FROM_SYMBOL || ((LA329_2436 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2436 <= GREATER_THAN_OPERATOR)) || ((LA329_2436 >= GROUP_SYMBOL) && (LA329_2436 <= HAVING_SYMBOL)) || LA329_2436 == HEX_NUMBER || LA329_2436 == IDENTIFIER || LA329_2436 == INNER_SYMBOL || LA329_2436 == INTO_SYMBOL || LA329_2436 == IN_SYMBOL || LA329_2436 == IS_SYMBOL || ((LA329_2436 >= JOIN_SYMBOL) && (LA329_2436 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2436 >= LEFT_SYMBOL) && (LA329_2436 <= LESS_THAN_OPERATOR)) || ((LA329_2436 >= LIKE_SYMBOL) && (LA329_2436 <= LIMIT_SYMBOL)) || LA329_2436 == LOCK_SYMBOL || LA329_2436 == LOGICAL_AND_OPERATOR || LA329_2436 == LOGICAL_OR_OPERATOR || LA329_2436 == MINUS_OPERATOR || ((LA329_2436 >= MOD_OPERATOR) && (LA329_2436 <= MOD_SYMBOL)) || ((LA329_2436 >= MULT_OPERATOR) && (LA329_2436 <= NATURAL_SYMBOL)) || ((LA329_2436 >= NOT_EQUAL2_OPERATOR) && (LA329_2436 <= NOT_SYMBOL)) || LA329_2436 == NULL_SAFE_EQUAL_OPERATOR || LA329_2436 == ON_SYMBOL || LA329_2436 == OPEN_PAR_SYMBOL || ((LA329_2436 >= ORDER_SYMBOL) && (LA329_2436 <= OR_SYMBOL)) || LA329_2436 == PLUS_OPERATOR || LA329_2436 == PROCEDURE_SYMBOL || LA329_2436 == REGEXP_SYMBOL || LA329_2436 == RIGHT_SYMBOL || LA329_2436 == SEMICOLON_SYMBOL || LA329_2436 == SET_SYMBOL || ((LA329_2436 >= SHIFT_LEFT_OPERATOR) && (LA329_2436 <= SHIFT_RIGHT_OPERATOR)) || LA329_2436 == SINGLE_QUOTED_TEXT || LA329_2436 == STRAIGHT_JOIN_SYMBOL || LA329_2436 == UNION_SYMBOL || LA329_2436 == USING_SYMBOL || LA329_2436 == WHERE_SYMBOL || LA329_2436 == WITH_SYMBOL || LA329_2436 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2436;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_648 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2437 = LA(4);
                                        if ( (LA329_2437 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5381 = LA(5);
                                                if ( (LA329_5381 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5381 >= ACCOUNT_SYMBOL) && (LA329_5381 <= YEAR_SYMBOL)) || LA329_5381 == BACK_TICK_QUOTED_ID || LA329_5381 == DOUBLE_QUOTED_TEXT || LA329_5381 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5381;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2437 == EOF || ((LA329_2437 >= ACCOUNT_SYMBOL) && (LA329_2437 <= YEAR_SYMBOL)) || LA329_2437 == AND_SYMBOL || LA329_2437 == AS_SYMBOL || LA329_2437 == BACK_TICK_QUOTED_ID || LA329_2437 == BETWEEN_SYMBOL || LA329_2437 == BIN_NUMBER || LA329_2437 == BITWISE_AND_OPERATOR || ((LA329_2437 >= BITWISE_OR_OPERATOR) && (LA329_2437 <= BITWISE_XOR_OPERATOR)) || ((LA329_2437 >= CLOSE_CURLY_SYMBOL) && (LA329_2437 <= COLLATE_SYMBOL)) || LA329_2437 == COMMA_SYMBOL || LA329_2437 == CONCAT_PIPES_SYMBOL || LA329_2437 == CROSS_SYMBOL || ((LA329_2437 >= DIV_OPERATOR) && (LA329_2437 <= DIV_SYMBOL)) || LA329_2437 == DOUBLE_QUOTED_TEXT || LA329_2437 == EQUAL_OPERATOR || LA329_2437 == FOR_SYMBOL || LA329_2437 == FROM_SYMBOL || ((LA329_2437 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2437 <= GREATER_THAN_OPERATOR)) || ((LA329_2437 >= GROUP_SYMBOL) && (LA329_2437 <= HAVING_SYMBOL)) || LA329_2437 == HEX_NUMBER || LA329_2437 == IDENTIFIER || LA329_2437 == INNER_SYMBOL || LA329_2437 == INTO_SYMBOL || LA329_2437 == IN_SYMBOL || LA329_2437 == IS_SYMBOL || ((LA329_2437 >= JOIN_SYMBOL) && (LA329_2437 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2437 >= LEFT_SYMBOL) && (LA329_2437 <= LESS_THAN_OPERATOR)) || ((LA329_2437 >= LIKE_SYMBOL) && (LA329_2437 <= LIMIT_SYMBOL)) || LA329_2437 == LOCK_SYMBOL || LA329_2437 == LOGICAL_AND_OPERATOR || LA329_2437 == LOGICAL_OR_OPERATOR || LA329_2437 == MINUS_OPERATOR || ((LA329_2437 >= MOD_OPERATOR) && (LA329_2437 <= MOD_SYMBOL)) || ((LA329_2437 >= MULT_OPERATOR) && (LA329_2437 <= NATURAL_SYMBOL)) || ((LA329_2437 >= NOT_EQUAL2_OPERATOR) && (LA329_2437 <= NOT_SYMBOL)) || LA329_2437 == NULL_SAFE_EQUAL_OPERATOR || LA329_2437 == ON_SYMBOL || LA329_2437 == OPEN_PAR_SYMBOL || ((LA329_2437 >= ORDER_SYMBOL) && (LA329_2437 <= OR_SYMBOL)) || LA329_2437 == PLUS_OPERATOR || LA329_2437 == PROCEDURE_SYMBOL || LA329_2437 == REGEXP_SYMBOL || LA329_2437 == RIGHT_SYMBOL || LA329_2437 == SEMICOLON_SYMBOL || LA329_2437 == SET_SYMBOL || ((LA329_2437 >= SHIFT_LEFT_OPERATOR) && (LA329_2437 <= SHIFT_RIGHT_OPERATOR)) || LA329_2437 == SINGLE_QUOTED_TEXT || LA329_2437 == STRAIGHT_JOIN_SYMBOL || LA329_2437 == UNION_SYMBOL || LA329_2437 == USING_SYMBOL || LA329_2437 == WHERE_SYMBOL || LA329_2437 == WITH_SYMBOL || LA329_2437 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2437;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_648 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2438 = LA(4);
                                        if ( (LA329_2438 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5435 = LA(5);
                                                if ( (LA329_5435 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5435 >= ACCOUNT_SYMBOL) && (LA329_5435 <= YEAR_SYMBOL)) || LA329_5435 == BACK_TICK_QUOTED_ID || LA329_5435 == DOUBLE_QUOTED_TEXT || LA329_5435 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5435;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2438 == EOF || ((LA329_2438 >= ACCOUNT_SYMBOL) && (LA329_2438 <= YEAR_SYMBOL)) || LA329_2438 == AND_SYMBOL || LA329_2438 == AS_SYMBOL || LA329_2438 == BACK_TICK_QUOTED_ID || LA329_2438 == BETWEEN_SYMBOL || LA329_2438 == BIN_NUMBER || LA329_2438 == BITWISE_AND_OPERATOR || ((LA329_2438 >= BITWISE_OR_OPERATOR) && (LA329_2438 <= BITWISE_XOR_OPERATOR)) || ((LA329_2438 >= CLOSE_CURLY_SYMBOL) && (LA329_2438 <= COLLATE_SYMBOL)) || LA329_2438 == COMMA_SYMBOL || LA329_2438 == CONCAT_PIPES_SYMBOL || LA329_2438 == CROSS_SYMBOL || ((LA329_2438 >= DIV_OPERATOR) && (LA329_2438 <= DIV_SYMBOL)) || LA329_2438 == DOUBLE_QUOTED_TEXT || LA329_2438 == EQUAL_OPERATOR || LA329_2438 == FOR_SYMBOL || LA329_2438 == FROM_SYMBOL || ((LA329_2438 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2438 <= GREATER_THAN_OPERATOR)) || ((LA329_2438 >= GROUP_SYMBOL) && (LA329_2438 <= HAVING_SYMBOL)) || LA329_2438 == HEX_NUMBER || LA329_2438 == IDENTIFIER || LA329_2438 == INNER_SYMBOL || LA329_2438 == INTO_SYMBOL || LA329_2438 == IN_SYMBOL || LA329_2438 == IS_SYMBOL || ((LA329_2438 >= JOIN_SYMBOL) && (LA329_2438 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2438 >= LEFT_SYMBOL) && (LA329_2438 <= LESS_THAN_OPERATOR)) || ((LA329_2438 >= LIKE_SYMBOL) && (LA329_2438 <= LIMIT_SYMBOL)) || LA329_2438 == LOCK_SYMBOL || LA329_2438 == LOGICAL_AND_OPERATOR || LA329_2438 == LOGICAL_OR_OPERATOR || LA329_2438 == MINUS_OPERATOR || ((LA329_2438 >= MOD_OPERATOR) && (LA329_2438 <= MOD_SYMBOL)) || ((LA329_2438 >= MULT_OPERATOR) && (LA329_2438 <= NATURAL_SYMBOL)) || ((LA329_2438 >= NOT_EQUAL2_OPERATOR) && (LA329_2438 <= NOT_SYMBOL)) || LA329_2438 == NULL_SAFE_EQUAL_OPERATOR || LA329_2438 == ON_SYMBOL || LA329_2438 == OPEN_PAR_SYMBOL || ((LA329_2438 >= ORDER_SYMBOL) && (LA329_2438 <= OR_SYMBOL)) || LA329_2438 == PLUS_OPERATOR || LA329_2438 == PROCEDURE_SYMBOL || LA329_2438 == REGEXP_SYMBOL || LA329_2438 == RIGHT_SYMBOL || LA329_2438 == SEMICOLON_SYMBOL || LA329_2438 == SET_SYMBOL || ((LA329_2438 >= SHIFT_LEFT_OPERATOR) && (LA329_2438 <= SHIFT_RIGHT_OPERATOR)) || LA329_2438 == SINGLE_QUOTED_TEXT || LA329_2438 == STRAIGHT_JOIN_SYMBOL || LA329_2438 == UNION_SYMBOL || LA329_2438 == USING_SYMBOL || LA329_2438 == WHERE_SYMBOL || LA329_2438 == WITH_SYMBOL || LA329_2438 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2438;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_648 >= ACTION_SYMBOL) && (LA329_648 <= SHARE_SYMBOL)) || ((LA329_648 >= SLOW_SYMBOL) && (LA329_648 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2439 = LA(4);
                                        if ( (LA329_2439 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5489 = LA(5);
                                                if ( (LA329_5489 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5489 >= ACCOUNT_SYMBOL) && (LA329_5489 <= YEAR_SYMBOL)) || LA329_5489 == BACK_TICK_QUOTED_ID || LA329_5489 == DOUBLE_QUOTED_TEXT || LA329_5489 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5489;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2439 == EOF || ((LA329_2439 >= ACCOUNT_SYMBOL) && (LA329_2439 <= YEAR_SYMBOL)) || LA329_2439 == AND_SYMBOL || LA329_2439 == AS_SYMBOL || LA329_2439 == BACK_TICK_QUOTED_ID || LA329_2439 == BETWEEN_SYMBOL || LA329_2439 == BIN_NUMBER || LA329_2439 == BITWISE_AND_OPERATOR || ((LA329_2439 >= BITWISE_OR_OPERATOR) && (LA329_2439 <= BITWISE_XOR_OPERATOR)) || ((LA329_2439 >= CLOSE_CURLY_SYMBOL) && (LA329_2439 <= COLLATE_SYMBOL)) || LA329_2439 == COMMA_SYMBOL || LA329_2439 == CONCAT_PIPES_SYMBOL || LA329_2439 == CROSS_SYMBOL || ((LA329_2439 >= DIV_OPERATOR) && (LA329_2439 <= DIV_SYMBOL)) || LA329_2439 == DOUBLE_QUOTED_TEXT || LA329_2439 == EQUAL_OPERATOR || LA329_2439 == FOR_SYMBOL || LA329_2439 == FROM_SYMBOL || ((LA329_2439 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2439 <= GREATER_THAN_OPERATOR)) || ((LA329_2439 >= GROUP_SYMBOL) && (LA329_2439 <= HAVING_SYMBOL)) || LA329_2439 == HEX_NUMBER || LA329_2439 == IDENTIFIER || LA329_2439 == INNER_SYMBOL || LA329_2439 == INTO_SYMBOL || LA329_2439 == IN_SYMBOL || LA329_2439 == IS_SYMBOL || ((LA329_2439 >= JOIN_SYMBOL) && (LA329_2439 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2439 >= LEFT_SYMBOL) && (LA329_2439 <= LESS_THAN_OPERATOR)) || ((LA329_2439 >= LIKE_SYMBOL) && (LA329_2439 <= LIMIT_SYMBOL)) || LA329_2439 == LOCK_SYMBOL || LA329_2439 == LOGICAL_AND_OPERATOR || LA329_2439 == LOGICAL_OR_OPERATOR || LA329_2439 == MINUS_OPERATOR || ((LA329_2439 >= MOD_OPERATOR) && (LA329_2439 <= MOD_SYMBOL)) || ((LA329_2439 >= MULT_OPERATOR) && (LA329_2439 <= NATURAL_SYMBOL)) || ((LA329_2439 >= NOT_EQUAL2_OPERATOR) && (LA329_2439 <= NOT_SYMBOL)) || LA329_2439 == NULL_SAFE_EQUAL_OPERATOR || LA329_2439 == ON_SYMBOL || LA329_2439 == OPEN_PAR_SYMBOL || ((LA329_2439 >= ORDER_SYMBOL) && (LA329_2439 <= OR_SYMBOL)) || LA329_2439 == PLUS_OPERATOR || LA329_2439 == PROCEDURE_SYMBOL || LA329_2439 == REGEXP_SYMBOL || LA329_2439 == RIGHT_SYMBOL || LA329_2439 == SEMICOLON_SYMBOL || LA329_2439 == SET_SYMBOL || ((LA329_2439 >= SHIFT_LEFT_OPERATOR) && (LA329_2439 <= SHIFT_RIGHT_OPERATOR)) || LA329_2439 == SINGLE_QUOTED_TEXT || LA329_2439 == STRAIGHT_JOIN_SYMBOL || LA329_2439 == UNION_SYMBOL || LA329_2439 == USING_SYMBOL || LA329_2439 == WHERE_SYMBOL || LA329_2439 == WITH_SYMBOL || LA329_2439 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2439;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_648 >= ACCOUNT_SYMBOL) && (LA329_648 <= XA_SYMBOL)) || LA329_648 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2440 = LA(4);
                                        if ( (LA329_2440 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5543 = LA(5);
                                                if ( (LA329_5543 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5543 >= ACCOUNT_SYMBOL) && (LA329_5543 <= YEAR_SYMBOL)) || LA329_5543 == BACK_TICK_QUOTED_ID || LA329_5543 == DOUBLE_QUOTED_TEXT || LA329_5543 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5543;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2440 == EOF || ((LA329_2440 >= ACCOUNT_SYMBOL) && (LA329_2440 <= YEAR_SYMBOL)) || LA329_2440 == AND_SYMBOL || LA329_2440 == AS_SYMBOL || LA329_2440 == BACK_TICK_QUOTED_ID || LA329_2440 == BETWEEN_SYMBOL || LA329_2440 == BIN_NUMBER || LA329_2440 == BITWISE_AND_OPERATOR || ((LA329_2440 >= BITWISE_OR_OPERATOR) && (LA329_2440 <= BITWISE_XOR_OPERATOR)) || ((LA329_2440 >= CLOSE_CURLY_SYMBOL) && (LA329_2440 <= COLLATE_SYMBOL)) || LA329_2440 == COMMA_SYMBOL || LA329_2440 == CONCAT_PIPES_SYMBOL || LA329_2440 == CROSS_SYMBOL || ((LA329_2440 >= DIV_OPERATOR) && (LA329_2440 <= DIV_SYMBOL)) || LA329_2440 == DOUBLE_QUOTED_TEXT || LA329_2440 == EQUAL_OPERATOR || LA329_2440 == FOR_SYMBOL || LA329_2440 == FROM_SYMBOL || ((LA329_2440 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2440 <= GREATER_THAN_OPERATOR)) || ((LA329_2440 >= GROUP_SYMBOL) && (LA329_2440 <= HAVING_SYMBOL)) || LA329_2440 == HEX_NUMBER || LA329_2440 == IDENTIFIER || LA329_2440 == INNER_SYMBOL || LA329_2440 == INTO_SYMBOL || LA329_2440 == IN_SYMBOL || LA329_2440 == IS_SYMBOL || ((LA329_2440 >= JOIN_SYMBOL) && (LA329_2440 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2440 >= LEFT_SYMBOL) && (LA329_2440 <= LESS_THAN_OPERATOR)) || ((LA329_2440 >= LIKE_SYMBOL) && (LA329_2440 <= LIMIT_SYMBOL)) || LA329_2440 == LOCK_SYMBOL || LA329_2440 == LOGICAL_AND_OPERATOR || LA329_2440 == LOGICAL_OR_OPERATOR || LA329_2440 == MINUS_OPERATOR || ((LA329_2440 >= MOD_OPERATOR) && (LA329_2440 <= MOD_SYMBOL)) || ((LA329_2440 >= MULT_OPERATOR) && (LA329_2440 <= NATURAL_SYMBOL)) || ((LA329_2440 >= NOT_EQUAL2_OPERATOR) && (LA329_2440 <= NOT_SYMBOL)) || LA329_2440 == NULL_SAFE_EQUAL_OPERATOR || LA329_2440 == ON_SYMBOL || LA329_2440 == OPEN_PAR_SYMBOL || ((LA329_2440 >= ORDER_SYMBOL) && (LA329_2440 <= OR_SYMBOL)) || LA329_2440 == PLUS_OPERATOR || LA329_2440 == PROCEDURE_SYMBOL || LA329_2440 == REGEXP_SYMBOL || LA329_2440 == RIGHT_SYMBOL || LA329_2440 == SEMICOLON_SYMBOL || LA329_2440 == SET_SYMBOL || ((LA329_2440 >= SHIFT_LEFT_OPERATOR) && (LA329_2440 <= SHIFT_RIGHT_OPERATOR)) || LA329_2440 == SINGLE_QUOTED_TEXT || LA329_2440 == STRAIGHT_JOIN_SYMBOL || LA329_2440 == UNION_SYMBOL || LA329_2440 == USING_SYMBOL || LA329_2440 == WHERE_SYMBOL || LA329_2440 == WITH_SYMBOL || LA329_2440 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2440;


                                            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  = 329;
                                    EXCEPTION->state        = 648;


                                    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  = 329;
                            EXCEPTION->state        = 27;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == SECOND_SYMBOL))
                {
                    {
                        int LA329_28 = LA(2);
                        if ( (LA329_28 == EOF || ((LA329_28 >= ACCOUNT_SYMBOL) && (LA329_28 <= YEAR_SYMBOL)) || LA329_28 == AND_SYMBOL || LA329_28 == AS_SYMBOL || LA329_28 == BACK_TICK_QUOTED_ID || LA329_28 == BETWEEN_SYMBOL || LA329_28 == BIN_NUMBER || LA329_28 == BITWISE_AND_OPERATOR || ((LA329_28 >= BITWISE_OR_OPERATOR) && (LA329_28 <= BITWISE_XOR_OPERATOR)) || ((LA329_28 >= CLOSE_CURLY_SYMBOL) && (LA329_28 <= COLLATE_SYMBOL)) || LA329_28 == COMMA_SYMBOL || LA329_28 == CONCAT_PIPES_SYMBOL || LA329_28 == CROSS_SYMBOL || ((LA329_28 >= DIV_OPERATOR) && (LA329_28 <= DIV_SYMBOL)) || LA329_28 == DOUBLE_QUOTED_TEXT || LA329_28 == EQUAL_OPERATOR || LA329_28 == FOR_SYMBOL || LA329_28 == FROM_SYMBOL || ((LA329_28 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_28 <= GREATER_THAN_OPERATOR)) || ((LA329_28 >= GROUP_SYMBOL) && (LA329_28 <= HAVING_SYMBOL)) || LA329_28 == HEX_NUMBER || LA329_28 == IDENTIFIER || LA329_28 == INNER_SYMBOL || LA329_28 == INTO_SYMBOL || LA329_28 == IN_SYMBOL || LA329_28 == IS_SYMBOL || ((LA329_28 >= JOIN_SYMBOL) && (LA329_28 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_28 >= LEFT_SYMBOL) && (LA329_28 <= LESS_THAN_OPERATOR)) || ((LA329_28 >= LIKE_SYMBOL) && (LA329_28 <= LIMIT_SYMBOL)) || LA329_28 == LOCK_SYMBOL || LA329_28 == LOGICAL_AND_OPERATOR || LA329_28 == LOGICAL_OR_OPERATOR || LA329_28 == MINUS_OPERATOR || ((LA329_28 >= MOD_OPERATOR) && (LA329_28 <= MOD_SYMBOL)) || ((LA329_28 >= MULT_OPERATOR) && (LA329_28 <= NATURAL_SYMBOL)) || ((LA329_28 >= NOT_EQUAL2_OPERATOR) && (LA329_28 <= NOT_SYMBOL)) || LA329_28 == NULL_SAFE_EQUAL_OPERATOR || LA329_28 == ON_SYMBOL || LA329_28 == OPEN_PAR_SYMBOL || ((LA329_28 >= ORDER_SYMBOL) && (LA329_28 <= OR_SYMBOL)) || LA329_28 == PLUS_OPERATOR || LA329_28 == PROCEDURE_SYMBOL || LA329_28 == REGEXP_SYMBOL || LA329_28 == RIGHT_SYMBOL || LA329_28 == SEMICOLON_SYMBOL || LA329_28 == SET_SYMBOL || ((LA329_28 >= SHIFT_LEFT_OPERATOR) && (LA329_28 <= SHIFT_RIGHT_OPERATOR)) || LA329_28 == SINGLE_QUOTED_TEXT || LA329_28 == STRAIGHT_JOIN_SYMBOL || LA329_28 == UNION_SYMBOL || LA329_28 == USING_SYMBOL || LA329_28 == WHERE_SYMBOL || LA329_28 == WITH_SYMBOL || LA329_28 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_28 == DOT_SYMBOL))
                        {
                            {
                                int LA329_702 = LA(3);
                                if ( (LA329_702 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_702 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2442 = LA(4);
                                        if ( (LA329_2442 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5597 = LA(5);
                                                if ( (LA329_5597 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5597 >= ACCOUNT_SYMBOL) && (LA329_5597 <= YEAR_SYMBOL)) || LA329_5597 == BACK_TICK_QUOTED_ID || LA329_5597 == DOUBLE_QUOTED_TEXT || LA329_5597 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5597;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2442 == EOF || ((LA329_2442 >= ACCOUNT_SYMBOL) && (LA329_2442 <= YEAR_SYMBOL)) || LA329_2442 == AND_SYMBOL || LA329_2442 == AS_SYMBOL || LA329_2442 == BACK_TICK_QUOTED_ID || LA329_2442 == BETWEEN_SYMBOL || LA329_2442 == BIN_NUMBER || LA329_2442 == BITWISE_AND_OPERATOR || ((LA329_2442 >= BITWISE_OR_OPERATOR) && (LA329_2442 <= BITWISE_XOR_OPERATOR)) || ((LA329_2442 >= CLOSE_CURLY_SYMBOL) && (LA329_2442 <= COLLATE_SYMBOL)) || LA329_2442 == COMMA_SYMBOL || LA329_2442 == CONCAT_PIPES_SYMBOL || LA329_2442 == CROSS_SYMBOL || ((LA329_2442 >= DIV_OPERATOR) && (LA329_2442 <= DIV_SYMBOL)) || LA329_2442 == DOUBLE_QUOTED_TEXT || LA329_2442 == EQUAL_OPERATOR || LA329_2442 == FOR_SYMBOL || LA329_2442 == FROM_SYMBOL || ((LA329_2442 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2442 <= GREATER_THAN_OPERATOR)) || ((LA329_2442 >= GROUP_SYMBOL) && (LA329_2442 <= HAVING_SYMBOL)) || LA329_2442 == HEX_NUMBER || LA329_2442 == IDENTIFIER || LA329_2442 == INNER_SYMBOL || LA329_2442 == INTO_SYMBOL || LA329_2442 == IN_SYMBOL || LA329_2442 == IS_SYMBOL || ((LA329_2442 >= JOIN_SYMBOL) && (LA329_2442 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2442 >= LEFT_SYMBOL) && (LA329_2442 <= LESS_THAN_OPERATOR)) || ((LA329_2442 >= LIKE_SYMBOL) && (LA329_2442 <= LIMIT_SYMBOL)) || LA329_2442 == LOCK_SYMBOL || LA329_2442 == LOGICAL_AND_OPERATOR || LA329_2442 == LOGICAL_OR_OPERATOR || LA329_2442 == MINUS_OPERATOR || ((LA329_2442 >= MOD_OPERATOR) && (LA329_2442 <= MOD_SYMBOL)) || ((LA329_2442 >= MULT_OPERATOR) && (LA329_2442 <= NATURAL_SYMBOL)) || ((LA329_2442 >= NOT_EQUAL2_OPERATOR) && (LA329_2442 <= NOT_SYMBOL)) || LA329_2442 == NULL_SAFE_EQUAL_OPERATOR || LA329_2442 == ON_SYMBOL || LA329_2442 == OPEN_PAR_SYMBOL || ((LA329_2442 >= ORDER_SYMBOL) && (LA329_2442 <= OR_SYMBOL)) || LA329_2442 == PLUS_OPERATOR || LA329_2442 == PROCEDURE_SYMBOL || LA329_2442 == REGEXP_SYMBOL || LA329_2442 == RIGHT_SYMBOL || LA329_2442 == SEMICOLON_SYMBOL || LA329_2442 == SET_SYMBOL || ((LA329_2442 >= SHIFT_LEFT_OPERATOR) && (LA329_2442 <= SHIFT_RIGHT_OPERATOR)) || LA329_2442 == SINGLE_QUOTED_TEXT || LA329_2442 == STRAIGHT_JOIN_SYMBOL || LA329_2442 == UNION_SYMBOL || LA329_2442 == USING_SYMBOL || LA329_2442 == WHERE_SYMBOL || LA329_2442 == WITH_SYMBOL || LA329_2442 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2442;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_702 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2443 = LA(4);
                                        if ( (LA329_2443 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5651 = LA(5);
                                                if ( (LA329_5651 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5651 >= ACCOUNT_SYMBOL) && (LA329_5651 <= YEAR_SYMBOL)) || LA329_5651 == BACK_TICK_QUOTED_ID || LA329_5651 == DOUBLE_QUOTED_TEXT || LA329_5651 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5651;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2443 == EOF || ((LA329_2443 >= ACCOUNT_SYMBOL) && (LA329_2443 <= YEAR_SYMBOL)) || LA329_2443 == AND_SYMBOL || LA329_2443 == AS_SYMBOL || LA329_2443 == BACK_TICK_QUOTED_ID || LA329_2443 == BETWEEN_SYMBOL || LA329_2443 == BIN_NUMBER || LA329_2443 == BITWISE_AND_OPERATOR || ((LA329_2443 >= BITWISE_OR_OPERATOR) && (LA329_2443 <= BITWISE_XOR_OPERATOR)) || ((LA329_2443 >= CLOSE_CURLY_SYMBOL) && (LA329_2443 <= COLLATE_SYMBOL)) || LA329_2443 == COMMA_SYMBOL || LA329_2443 == CONCAT_PIPES_SYMBOL || LA329_2443 == CROSS_SYMBOL || ((LA329_2443 >= DIV_OPERATOR) && (LA329_2443 <= DIV_SYMBOL)) || LA329_2443 == DOUBLE_QUOTED_TEXT || LA329_2443 == EQUAL_OPERATOR || LA329_2443 == FOR_SYMBOL || LA329_2443 == FROM_SYMBOL || ((LA329_2443 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2443 <= GREATER_THAN_OPERATOR)) || ((LA329_2443 >= GROUP_SYMBOL) && (LA329_2443 <= HAVING_SYMBOL)) || LA329_2443 == HEX_NUMBER || LA329_2443 == IDENTIFIER || LA329_2443 == INNER_SYMBOL || LA329_2443 == INTO_SYMBOL || LA329_2443 == IN_SYMBOL || LA329_2443 == IS_SYMBOL || ((LA329_2443 >= JOIN_SYMBOL) && (LA329_2443 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2443 >= LEFT_SYMBOL) && (LA329_2443 <= LESS_THAN_OPERATOR)) || ((LA329_2443 >= LIKE_SYMBOL) && (LA329_2443 <= LIMIT_SYMBOL)) || LA329_2443 == LOCK_SYMBOL || LA329_2443 == LOGICAL_AND_OPERATOR || LA329_2443 == LOGICAL_OR_OPERATOR || LA329_2443 == MINUS_OPERATOR || ((LA329_2443 >= MOD_OPERATOR) && (LA329_2443 <= MOD_SYMBOL)) || ((LA329_2443 >= MULT_OPERATOR) && (LA329_2443 <= NATURAL_SYMBOL)) || ((LA329_2443 >= NOT_EQUAL2_OPERATOR) && (LA329_2443 <= NOT_SYMBOL)) || LA329_2443 == NULL_SAFE_EQUAL_OPERATOR || LA329_2443 == ON_SYMBOL || LA329_2443 == OPEN_PAR_SYMBOL || ((LA329_2443 >= ORDER_SYMBOL) && (LA329_2443 <= OR_SYMBOL)) || LA329_2443 == PLUS_OPERATOR || LA329_2443 == PROCEDURE_SYMBOL || LA329_2443 == REGEXP_SYMBOL || LA329_2443 == RIGHT_SYMBOL || LA329_2443 == SEMICOLON_SYMBOL || LA329_2443 == SET_SYMBOL || ((LA329_2443 >= SHIFT_LEFT_OPERATOR) && (LA329_2443 <= SHIFT_RIGHT_OPERATOR)) || LA329_2443 == SINGLE_QUOTED_TEXT || LA329_2443 == STRAIGHT_JOIN_SYMBOL || LA329_2443 == UNION_SYMBOL || LA329_2443 == USING_SYMBOL || LA329_2443 == WHERE_SYMBOL || LA329_2443 == WITH_SYMBOL || LA329_2443 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2443;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_702 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2444 = LA(4);
                                        if ( (LA329_2444 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5705 = LA(5);
                                                if ( (LA329_5705 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5705 >= ACCOUNT_SYMBOL) && (LA329_5705 <= YEAR_SYMBOL)) || LA329_5705 == BACK_TICK_QUOTED_ID || LA329_5705 == DOUBLE_QUOTED_TEXT || LA329_5705 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5705;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2444 == EOF || ((LA329_2444 >= ACCOUNT_SYMBOL) && (LA329_2444 <= YEAR_SYMBOL)) || LA329_2444 == AND_SYMBOL || LA329_2444 == AS_SYMBOL || LA329_2444 == BACK_TICK_QUOTED_ID || LA329_2444 == BETWEEN_SYMBOL || LA329_2444 == BIN_NUMBER || LA329_2444 == BITWISE_AND_OPERATOR || ((LA329_2444 >= BITWISE_OR_OPERATOR) && (LA329_2444 <= BITWISE_XOR_OPERATOR)) || ((LA329_2444 >= CLOSE_CURLY_SYMBOL) && (LA329_2444 <= COLLATE_SYMBOL)) || LA329_2444 == COMMA_SYMBOL || LA329_2444 == CONCAT_PIPES_SYMBOL || LA329_2444 == CROSS_SYMBOL || ((LA329_2444 >= DIV_OPERATOR) && (LA329_2444 <= DIV_SYMBOL)) || LA329_2444 == DOUBLE_QUOTED_TEXT || LA329_2444 == EQUAL_OPERATOR || LA329_2444 == FOR_SYMBOL || LA329_2444 == FROM_SYMBOL || ((LA329_2444 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2444 <= GREATER_THAN_OPERATOR)) || ((LA329_2444 >= GROUP_SYMBOL) && (LA329_2444 <= HAVING_SYMBOL)) || LA329_2444 == HEX_NUMBER || LA329_2444 == IDENTIFIER || LA329_2444 == INNER_SYMBOL || LA329_2444 == INTO_SYMBOL || LA329_2444 == IN_SYMBOL || LA329_2444 == IS_SYMBOL || ((LA329_2444 >= JOIN_SYMBOL) && (LA329_2444 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2444 >= LEFT_SYMBOL) && (LA329_2444 <= LESS_THAN_OPERATOR)) || ((LA329_2444 >= LIKE_SYMBOL) && (LA329_2444 <= LIMIT_SYMBOL)) || LA329_2444 == LOCK_SYMBOL || LA329_2444 == LOGICAL_AND_OPERATOR || LA329_2444 == LOGICAL_OR_OPERATOR || LA329_2444 == MINUS_OPERATOR || ((LA329_2444 >= MOD_OPERATOR) && (LA329_2444 <= MOD_SYMBOL)) || ((LA329_2444 >= MULT_OPERATOR) && (LA329_2444 <= NATURAL_SYMBOL)) || ((LA329_2444 >= NOT_EQUAL2_OPERATOR) && (LA329_2444 <= NOT_SYMBOL)) || LA329_2444 == NULL_SAFE_EQUAL_OPERATOR || LA329_2444 == ON_SYMBOL || LA329_2444 == OPEN_PAR_SYMBOL || ((LA329_2444 >= ORDER_SYMBOL) && (LA329_2444 <= OR_SYMBOL)) || LA329_2444 == PLUS_OPERATOR || LA329_2444 == PROCEDURE_SYMBOL || LA329_2444 == REGEXP_SYMBOL || LA329_2444 == RIGHT_SYMBOL || LA329_2444 == SEMICOLON_SYMBOL || LA329_2444 == SET_SYMBOL || ((LA329_2444 >= SHIFT_LEFT_OPERATOR) && (LA329_2444 <= SHIFT_RIGHT_OPERATOR)) || LA329_2444 == SINGLE_QUOTED_TEXT || LA329_2444 == STRAIGHT_JOIN_SYMBOL || LA329_2444 == UNION_SYMBOL || LA329_2444 == USING_SYMBOL || LA329_2444 == WHERE_SYMBOL || LA329_2444 == WITH_SYMBOL || LA329_2444 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2444;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_702 >= ACTION_SYMBOL) && (LA329_702 <= SHARE_SYMBOL)) || ((LA329_702 >= SLOW_SYMBOL) && (LA329_702 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2445 = LA(4);
                                        if ( (LA329_2445 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5759 = LA(5);
                                                if ( (LA329_5759 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5759 >= ACCOUNT_SYMBOL) && (LA329_5759 <= YEAR_SYMBOL)) || LA329_5759 == BACK_TICK_QUOTED_ID || LA329_5759 == DOUBLE_QUOTED_TEXT || LA329_5759 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5759;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2445 == EOF || ((LA329_2445 >= ACCOUNT_SYMBOL) && (LA329_2445 <= YEAR_SYMBOL)) || LA329_2445 == AND_SYMBOL || LA329_2445 == AS_SYMBOL || LA329_2445 == BACK_TICK_QUOTED_ID || LA329_2445 == BETWEEN_SYMBOL || LA329_2445 == BIN_NUMBER || LA329_2445 == BITWISE_AND_OPERATOR || ((LA329_2445 >= BITWISE_OR_OPERATOR) && (LA329_2445 <= BITWISE_XOR_OPERATOR)) || ((LA329_2445 >= CLOSE_CURLY_SYMBOL) && (LA329_2445 <= COLLATE_SYMBOL)) || LA329_2445 == COMMA_SYMBOL || LA329_2445 == CONCAT_PIPES_SYMBOL || LA329_2445 == CROSS_SYMBOL || ((LA329_2445 >= DIV_OPERATOR) && (LA329_2445 <= DIV_SYMBOL)) || LA329_2445 == DOUBLE_QUOTED_TEXT || LA329_2445 == EQUAL_OPERATOR || LA329_2445 == FOR_SYMBOL || LA329_2445 == FROM_SYMBOL || ((LA329_2445 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2445 <= GREATER_THAN_OPERATOR)) || ((LA329_2445 >= GROUP_SYMBOL) && (LA329_2445 <= HAVING_SYMBOL)) || LA329_2445 == HEX_NUMBER || LA329_2445 == IDENTIFIER || LA329_2445 == INNER_SYMBOL || LA329_2445 == INTO_SYMBOL || LA329_2445 == IN_SYMBOL || LA329_2445 == IS_SYMBOL || ((LA329_2445 >= JOIN_SYMBOL) && (LA329_2445 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2445 >= LEFT_SYMBOL) && (LA329_2445 <= LESS_THAN_OPERATOR)) || ((LA329_2445 >= LIKE_SYMBOL) && (LA329_2445 <= LIMIT_SYMBOL)) || LA329_2445 == LOCK_SYMBOL || LA329_2445 == LOGICAL_AND_OPERATOR || LA329_2445 == LOGICAL_OR_OPERATOR || LA329_2445 == MINUS_OPERATOR || ((LA329_2445 >= MOD_OPERATOR) && (LA329_2445 <= MOD_SYMBOL)) || ((LA329_2445 >= MULT_OPERATOR) && (LA329_2445 <= NATURAL_SYMBOL)) || ((LA329_2445 >= NOT_EQUAL2_OPERATOR) && (LA329_2445 <= NOT_SYMBOL)) || LA329_2445 == NULL_SAFE_EQUAL_OPERATOR || LA329_2445 == ON_SYMBOL || LA329_2445 == OPEN_PAR_SYMBOL || ((LA329_2445 >= ORDER_SYMBOL) && (LA329_2445 <= OR_SYMBOL)) || LA329_2445 == PLUS_OPERATOR || LA329_2445 == PROCEDURE_SYMBOL || LA329_2445 == REGEXP_SYMBOL || LA329_2445 == RIGHT_SYMBOL || LA329_2445 == SEMICOLON_SYMBOL || LA329_2445 == SET_SYMBOL || ((LA329_2445 >= SHIFT_LEFT_OPERATOR) && (LA329_2445 <= SHIFT_RIGHT_OPERATOR)) || LA329_2445 == SINGLE_QUOTED_TEXT || LA329_2445 == STRAIGHT_JOIN_SYMBOL || LA329_2445 == UNION_SYMBOL || LA329_2445 == USING_SYMBOL || LA329_2445 == WHERE_SYMBOL || LA329_2445 == WITH_SYMBOL || LA329_2445 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2445;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_702 >= ACCOUNT_SYMBOL) && (LA329_702 <= XA_SYMBOL)) || LA329_702 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2446 = LA(4);
                                        if ( (LA329_2446 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5813 = LA(5);
                                                if ( (LA329_5813 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5813 >= ACCOUNT_SYMBOL) && (LA329_5813 <= YEAR_SYMBOL)) || LA329_5813 == BACK_TICK_QUOTED_ID || LA329_5813 == DOUBLE_QUOTED_TEXT || LA329_5813 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5813;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2446 == EOF || ((LA329_2446 >= ACCOUNT_SYMBOL) && (LA329_2446 <= YEAR_SYMBOL)) || LA329_2446 == AND_SYMBOL || LA329_2446 == AS_SYMBOL || LA329_2446 == BACK_TICK_QUOTED_ID || LA329_2446 == BETWEEN_SYMBOL || LA329_2446 == BIN_NUMBER || LA329_2446 == BITWISE_AND_OPERATOR || ((LA329_2446 >= BITWISE_OR_OPERATOR) && (LA329_2446 <= BITWISE_XOR_OPERATOR)) || ((LA329_2446 >= CLOSE_CURLY_SYMBOL) && (LA329_2446 <= COLLATE_SYMBOL)) || LA329_2446 == COMMA_SYMBOL || LA329_2446 == CONCAT_PIPES_SYMBOL || LA329_2446 == CROSS_SYMBOL || ((LA329_2446 >= DIV_OPERATOR) && (LA329_2446 <= DIV_SYMBOL)) || LA329_2446 == DOUBLE_QUOTED_TEXT || LA329_2446 == EQUAL_OPERATOR || LA329_2446 == FOR_SYMBOL || LA329_2446 == FROM_SYMBOL || ((LA329_2446 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2446 <= GREATER_THAN_OPERATOR)) || ((LA329_2446 >= GROUP_SYMBOL) && (LA329_2446 <= HAVING_SYMBOL)) || LA329_2446 == HEX_NUMBER || LA329_2446 == IDENTIFIER || LA329_2446 == INNER_SYMBOL || LA329_2446 == INTO_SYMBOL || LA329_2446 == IN_SYMBOL || LA329_2446 == IS_SYMBOL || ((LA329_2446 >= JOIN_SYMBOL) && (LA329_2446 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2446 >= LEFT_SYMBOL) && (LA329_2446 <= LESS_THAN_OPERATOR)) || ((LA329_2446 >= LIKE_SYMBOL) && (LA329_2446 <= LIMIT_SYMBOL)) || LA329_2446 == LOCK_SYMBOL || LA329_2446 == LOGICAL_AND_OPERATOR || LA329_2446 == LOGICAL_OR_OPERATOR || LA329_2446 == MINUS_OPERATOR || ((LA329_2446 >= MOD_OPERATOR) && (LA329_2446 <= MOD_SYMBOL)) || ((LA329_2446 >= MULT_OPERATOR) && (LA329_2446 <= NATURAL_SYMBOL)) || ((LA329_2446 >= NOT_EQUAL2_OPERATOR) && (LA329_2446 <= NOT_SYMBOL)) || LA329_2446 == NULL_SAFE_EQUAL_OPERATOR || LA329_2446 == ON_SYMBOL || LA329_2446 == OPEN_PAR_SYMBOL || ((LA329_2446 >= ORDER_SYMBOL) && (LA329_2446 <= OR_SYMBOL)) || LA329_2446 == PLUS_OPERATOR || LA329_2446 == PROCEDURE_SYMBOL || LA329_2446 == REGEXP_SYMBOL || LA329_2446 == RIGHT_SYMBOL || LA329_2446 == SEMICOLON_SYMBOL || LA329_2446 == SET_SYMBOL || ((LA329_2446 >= SHIFT_LEFT_OPERATOR) && (LA329_2446 <= SHIFT_RIGHT_OPERATOR)) || LA329_2446 == SINGLE_QUOTED_TEXT || LA329_2446 == STRAIGHT_JOIN_SYMBOL || LA329_2446 == UNION_SYMBOL || LA329_2446 == USING_SYMBOL || LA329_2446 == WHERE_SYMBOL || LA329_2446 == WITH_SYMBOL || LA329_2446 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2446;


                                            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  = 329;
                                    EXCEPTION->state        = 702;


                                    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  = 329;
                            EXCEPTION->state        = 28;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == USER_SYMBOL))
                {
                    {
                        int LA329_30 = LA(2);
                        if ( (LA329_30 == DOT_SYMBOL))
                        {
                            {
                                int LA329_755 = LA(3);
                                if ( (LA329_755 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_755 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2448 = LA(4);
                                        if ( (LA329_2448 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5867 = LA(5);
                                                if ( (LA329_5867 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5867 >= ACCOUNT_SYMBOL) && (LA329_5867 <= YEAR_SYMBOL)) || LA329_5867 == BACK_TICK_QUOTED_ID || LA329_5867 == DOUBLE_QUOTED_TEXT || LA329_5867 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5867;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2448 == EOF || ((LA329_2448 >= ACCOUNT_SYMBOL) && (LA329_2448 <= YEAR_SYMBOL)) || LA329_2448 == AND_SYMBOL || LA329_2448 == AS_SYMBOL || LA329_2448 == BACK_TICK_QUOTED_ID || LA329_2448 == BETWEEN_SYMBOL || LA329_2448 == BIN_NUMBER || LA329_2448 == BITWISE_AND_OPERATOR || ((LA329_2448 >= BITWISE_OR_OPERATOR) && (LA329_2448 <= BITWISE_XOR_OPERATOR)) || ((LA329_2448 >= CLOSE_CURLY_SYMBOL) && (LA329_2448 <= COLLATE_SYMBOL)) || LA329_2448 == COMMA_SYMBOL || LA329_2448 == CONCAT_PIPES_SYMBOL || LA329_2448 == CROSS_SYMBOL || ((LA329_2448 >= DIV_OPERATOR) && (LA329_2448 <= DIV_SYMBOL)) || LA329_2448 == DOUBLE_QUOTED_TEXT || LA329_2448 == EQUAL_OPERATOR || LA329_2448 == FOR_SYMBOL || LA329_2448 == FROM_SYMBOL || ((LA329_2448 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2448 <= GREATER_THAN_OPERATOR)) || ((LA329_2448 >= GROUP_SYMBOL) && (LA329_2448 <= HAVING_SYMBOL)) || LA329_2448 == HEX_NUMBER || LA329_2448 == IDENTIFIER || LA329_2448 == INNER_SYMBOL || LA329_2448 == INTO_SYMBOL || LA329_2448 == IN_SYMBOL || LA329_2448 == IS_SYMBOL || ((LA329_2448 >= JOIN_SYMBOL) && (LA329_2448 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2448 >= LEFT_SYMBOL) && (LA329_2448 <= LESS_THAN_OPERATOR)) || ((LA329_2448 >= LIKE_SYMBOL) && (LA329_2448 <= LIMIT_SYMBOL)) || LA329_2448 == LOCK_SYMBOL || LA329_2448 == LOGICAL_AND_OPERATOR || LA329_2448 == LOGICAL_OR_OPERATOR || LA329_2448 == MINUS_OPERATOR || ((LA329_2448 >= MOD_OPERATOR) && (LA329_2448 <= MOD_SYMBOL)) || ((LA329_2448 >= MULT_OPERATOR) && (LA329_2448 <= NATURAL_SYMBOL)) || ((LA329_2448 >= NOT_EQUAL2_OPERATOR) && (LA329_2448 <= NOT_SYMBOL)) || LA329_2448 == NULL_SAFE_EQUAL_OPERATOR || LA329_2448 == ON_SYMBOL || LA329_2448 == OPEN_PAR_SYMBOL || ((LA329_2448 >= ORDER_SYMBOL) && (LA329_2448 <= OR_SYMBOL)) || LA329_2448 == PLUS_OPERATOR || LA329_2448 == PROCEDURE_SYMBOL || LA329_2448 == REGEXP_SYMBOL || LA329_2448 == RIGHT_SYMBOL || LA329_2448 == SEMICOLON_SYMBOL || LA329_2448 == SET_SYMBOL || ((LA329_2448 >= SHIFT_LEFT_OPERATOR) && (LA329_2448 <= SHIFT_RIGHT_OPERATOR)) || LA329_2448 == SINGLE_QUOTED_TEXT || LA329_2448 == STRAIGHT_JOIN_SYMBOL || LA329_2448 == UNION_SYMBOL || LA329_2448 == USING_SYMBOL || LA329_2448 == WHERE_SYMBOL || LA329_2448 == WITH_SYMBOL || LA329_2448 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2448;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_755 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2449 = LA(4);
                                        if ( (LA329_2449 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5921 = LA(5);
                                                if ( (LA329_5921 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5921 >= ACCOUNT_SYMBOL) && (LA329_5921 <= YEAR_SYMBOL)) || LA329_5921 == BACK_TICK_QUOTED_ID || LA329_5921 == DOUBLE_QUOTED_TEXT || LA329_5921 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5921;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2449 == EOF || ((LA329_2449 >= ACCOUNT_SYMBOL) && (LA329_2449 <= YEAR_SYMBOL)) || LA329_2449 == AND_SYMBOL || LA329_2449 == AS_SYMBOL || LA329_2449 == BACK_TICK_QUOTED_ID || LA329_2449 == BETWEEN_SYMBOL || LA329_2449 == BIN_NUMBER || LA329_2449 == BITWISE_AND_OPERATOR || ((LA329_2449 >= BITWISE_OR_OPERATOR) && (LA329_2449 <= BITWISE_XOR_OPERATOR)) || ((LA329_2449 >= CLOSE_CURLY_SYMBOL) && (LA329_2449 <= COLLATE_SYMBOL)) || LA329_2449 == COMMA_SYMBOL || LA329_2449 == CONCAT_PIPES_SYMBOL || LA329_2449 == CROSS_SYMBOL || ((LA329_2449 >= DIV_OPERATOR) && (LA329_2449 <= DIV_SYMBOL)) || LA329_2449 == DOUBLE_QUOTED_TEXT || LA329_2449 == EQUAL_OPERATOR || LA329_2449 == FOR_SYMBOL || LA329_2449 == FROM_SYMBOL || ((LA329_2449 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2449 <= GREATER_THAN_OPERATOR)) || ((LA329_2449 >= GROUP_SYMBOL) && (LA329_2449 <= HAVING_SYMBOL)) || LA329_2449 == HEX_NUMBER || LA329_2449 == IDENTIFIER || LA329_2449 == INNER_SYMBOL || LA329_2449 == INTO_SYMBOL || LA329_2449 == IN_SYMBOL || LA329_2449 == IS_SYMBOL || ((LA329_2449 >= JOIN_SYMBOL) && (LA329_2449 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2449 >= LEFT_SYMBOL) && (LA329_2449 <= LESS_THAN_OPERATOR)) || ((LA329_2449 >= LIKE_SYMBOL) && (LA329_2449 <= LIMIT_SYMBOL)) || LA329_2449 == LOCK_SYMBOL || LA329_2449 == LOGICAL_AND_OPERATOR || LA329_2449 == LOGICAL_OR_OPERATOR || LA329_2449 == MINUS_OPERATOR || ((LA329_2449 >= MOD_OPERATOR) && (LA329_2449 <= MOD_SYMBOL)) || ((LA329_2449 >= MULT_OPERATOR) && (LA329_2449 <= NATURAL_SYMBOL)) || ((LA329_2449 >= NOT_EQUAL2_OPERATOR) && (LA329_2449 <= NOT_SYMBOL)) || LA329_2449 == NULL_SAFE_EQUAL_OPERATOR || LA329_2449 == ON_SYMBOL || LA329_2449 == OPEN_PAR_SYMBOL || ((LA329_2449 >= ORDER_SYMBOL) && (LA329_2449 <= OR_SYMBOL)) || LA329_2449 == PLUS_OPERATOR || LA329_2449 == PROCEDURE_SYMBOL || LA329_2449 == REGEXP_SYMBOL || LA329_2449 == RIGHT_SYMBOL || LA329_2449 == SEMICOLON_SYMBOL || LA329_2449 == SET_SYMBOL || ((LA329_2449 >= SHIFT_LEFT_OPERATOR) && (LA329_2449 <= SHIFT_RIGHT_OPERATOR)) || LA329_2449 == SINGLE_QUOTED_TEXT || LA329_2449 == STRAIGHT_JOIN_SYMBOL || LA329_2449 == UNION_SYMBOL || LA329_2449 == USING_SYMBOL || LA329_2449 == WHERE_SYMBOL || LA329_2449 == WITH_SYMBOL || LA329_2449 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2449;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_755 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2450 = LA(4);
                                        if ( (LA329_2450 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_5975 = LA(5);
                                                if ( (LA329_5975 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_5975 >= ACCOUNT_SYMBOL) && (LA329_5975 <= YEAR_SYMBOL)) || LA329_5975 == BACK_TICK_QUOTED_ID || LA329_5975 == DOUBLE_QUOTED_TEXT || LA329_5975 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 5975;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2450 == EOF || ((LA329_2450 >= ACCOUNT_SYMBOL) && (LA329_2450 <= YEAR_SYMBOL)) || LA329_2450 == AND_SYMBOL || LA329_2450 == AS_SYMBOL || LA329_2450 == BACK_TICK_QUOTED_ID || LA329_2450 == BETWEEN_SYMBOL || LA329_2450 == BIN_NUMBER || LA329_2450 == BITWISE_AND_OPERATOR || ((LA329_2450 >= BITWISE_OR_OPERATOR) && (LA329_2450 <= BITWISE_XOR_OPERATOR)) || ((LA329_2450 >= CLOSE_CURLY_SYMBOL) && (LA329_2450 <= COLLATE_SYMBOL)) || LA329_2450 == COMMA_SYMBOL || LA329_2450 == CONCAT_PIPES_SYMBOL || LA329_2450 == CROSS_SYMBOL || ((LA329_2450 >= DIV_OPERATOR) && (LA329_2450 <= DIV_SYMBOL)) || LA329_2450 == DOUBLE_QUOTED_TEXT || LA329_2450 == EQUAL_OPERATOR || LA329_2450 == FOR_SYMBOL || LA329_2450 == FROM_SYMBOL || ((LA329_2450 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2450 <= GREATER_THAN_OPERATOR)) || ((LA329_2450 >= GROUP_SYMBOL) && (LA329_2450 <= HAVING_SYMBOL)) || LA329_2450 == HEX_NUMBER || LA329_2450 == IDENTIFIER || LA329_2450 == INNER_SYMBOL || LA329_2450 == INTO_SYMBOL || LA329_2450 == IN_SYMBOL || LA329_2450 == IS_SYMBOL || ((LA329_2450 >= JOIN_SYMBOL) && (LA329_2450 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2450 >= LEFT_SYMBOL) && (LA329_2450 <= LESS_THAN_OPERATOR)) || ((LA329_2450 >= LIKE_SYMBOL) && (LA329_2450 <= LIMIT_SYMBOL)) || LA329_2450 == LOCK_SYMBOL || LA329_2450 == LOGICAL_AND_OPERATOR || LA329_2450 == LOGICAL_OR_OPERATOR || LA329_2450 == MINUS_OPERATOR || ((LA329_2450 >= MOD_OPERATOR) && (LA329_2450 <= MOD_SYMBOL)) || ((LA329_2450 >= MULT_OPERATOR) && (LA329_2450 <= NATURAL_SYMBOL)) || ((LA329_2450 >= NOT_EQUAL2_OPERATOR) && (LA329_2450 <= NOT_SYMBOL)) || LA329_2450 == NULL_SAFE_EQUAL_OPERATOR || LA329_2450 == ON_SYMBOL || LA329_2450 == OPEN_PAR_SYMBOL || ((LA329_2450 >= ORDER_SYMBOL) && (LA329_2450 <= OR_SYMBOL)) || LA329_2450 == PLUS_OPERATOR || LA329_2450 == PROCEDURE_SYMBOL || LA329_2450 == REGEXP_SYMBOL || LA329_2450 == RIGHT_SYMBOL || LA329_2450 == SEMICOLON_SYMBOL || LA329_2450 == SET_SYMBOL || ((LA329_2450 >= SHIFT_LEFT_OPERATOR) && (LA329_2450 <= SHIFT_RIGHT_OPERATOR)) || LA329_2450 == SINGLE_QUOTED_TEXT || LA329_2450 == STRAIGHT_JOIN_SYMBOL || LA329_2450 == UNION_SYMBOL || LA329_2450 == USING_SYMBOL || LA329_2450 == WHERE_SYMBOL || LA329_2450 == WITH_SYMBOL || LA329_2450 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2450;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_755 >= ACTION_SYMBOL) && (LA329_755 <= SHARE_SYMBOL)) || ((LA329_755 >= SLOW_SYMBOL) && (LA329_755 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2451 = LA(4);
                                        if ( (LA329_2451 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6029 = LA(5);
                                                if ( (LA329_6029 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6029 >= ACCOUNT_SYMBOL) && (LA329_6029 <= YEAR_SYMBOL)) || LA329_6029 == BACK_TICK_QUOTED_ID || LA329_6029 == DOUBLE_QUOTED_TEXT || LA329_6029 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6029;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2451 == EOF || ((LA329_2451 >= ACCOUNT_SYMBOL) && (LA329_2451 <= YEAR_SYMBOL)) || LA329_2451 == AND_SYMBOL || LA329_2451 == AS_SYMBOL || LA329_2451 == BACK_TICK_QUOTED_ID || LA329_2451 == BETWEEN_SYMBOL || LA329_2451 == BIN_NUMBER || LA329_2451 == BITWISE_AND_OPERATOR || ((LA329_2451 >= BITWISE_OR_OPERATOR) && (LA329_2451 <= BITWISE_XOR_OPERATOR)) || ((LA329_2451 >= CLOSE_CURLY_SYMBOL) && (LA329_2451 <= COLLATE_SYMBOL)) || LA329_2451 == COMMA_SYMBOL || LA329_2451 == CONCAT_PIPES_SYMBOL || LA329_2451 == CROSS_SYMBOL || ((LA329_2451 >= DIV_OPERATOR) && (LA329_2451 <= DIV_SYMBOL)) || LA329_2451 == DOUBLE_QUOTED_TEXT || LA329_2451 == EQUAL_OPERATOR || LA329_2451 == FOR_SYMBOL || LA329_2451 == FROM_SYMBOL || ((LA329_2451 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2451 <= GREATER_THAN_OPERATOR)) || ((LA329_2451 >= GROUP_SYMBOL) && (LA329_2451 <= HAVING_SYMBOL)) || LA329_2451 == HEX_NUMBER || LA329_2451 == IDENTIFIER || LA329_2451 == INNER_SYMBOL || LA329_2451 == INTO_SYMBOL || LA329_2451 == IN_SYMBOL || LA329_2451 == IS_SYMBOL || ((LA329_2451 >= JOIN_SYMBOL) && (LA329_2451 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2451 >= LEFT_SYMBOL) && (LA329_2451 <= LESS_THAN_OPERATOR)) || ((LA329_2451 >= LIKE_SYMBOL) && (LA329_2451 <= LIMIT_SYMBOL)) || LA329_2451 == LOCK_SYMBOL || LA329_2451 == LOGICAL_AND_OPERATOR || LA329_2451 == LOGICAL_OR_OPERATOR || LA329_2451 == MINUS_OPERATOR || ((LA329_2451 >= MOD_OPERATOR) && (LA329_2451 <= MOD_SYMBOL)) || ((LA329_2451 >= MULT_OPERATOR) && (LA329_2451 <= NATURAL_SYMBOL)) || ((LA329_2451 >= NOT_EQUAL2_OPERATOR) && (LA329_2451 <= NOT_SYMBOL)) || LA329_2451 == NULL_SAFE_EQUAL_OPERATOR || LA329_2451 == ON_SYMBOL || LA329_2451 == OPEN_PAR_SYMBOL || ((LA329_2451 >= ORDER_SYMBOL) && (LA329_2451 <= OR_SYMBOL)) || LA329_2451 == PLUS_OPERATOR || LA329_2451 == PROCEDURE_SYMBOL || LA329_2451 == REGEXP_SYMBOL || LA329_2451 == RIGHT_SYMBOL || LA329_2451 == SEMICOLON_SYMBOL || LA329_2451 == SET_SYMBOL || ((LA329_2451 >= SHIFT_LEFT_OPERATOR) && (LA329_2451 <= SHIFT_RIGHT_OPERATOR)) || LA329_2451 == SINGLE_QUOTED_TEXT || LA329_2451 == STRAIGHT_JOIN_SYMBOL || LA329_2451 == UNION_SYMBOL || LA329_2451 == USING_SYMBOL || LA329_2451 == WHERE_SYMBOL || LA329_2451 == WITH_SYMBOL || LA329_2451 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2451;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_755 >= ACCOUNT_SYMBOL) && (LA329_755 <= XA_SYMBOL)) || LA329_755 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2452 = LA(4);
                                        if ( (LA329_2452 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6083 = LA(5);
                                                if ( (LA329_6083 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6083 >= ACCOUNT_SYMBOL) && (LA329_6083 <= YEAR_SYMBOL)) || LA329_6083 == BACK_TICK_QUOTED_ID || LA329_6083 == DOUBLE_QUOTED_TEXT || LA329_6083 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6083;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2452 == EOF || ((LA329_2452 >= ACCOUNT_SYMBOL) && (LA329_2452 <= YEAR_SYMBOL)) || LA329_2452 == AND_SYMBOL || LA329_2452 == AS_SYMBOL || LA329_2452 == BACK_TICK_QUOTED_ID || LA329_2452 == BETWEEN_SYMBOL || LA329_2452 == BIN_NUMBER || LA329_2452 == BITWISE_AND_OPERATOR || ((LA329_2452 >= BITWISE_OR_OPERATOR) && (LA329_2452 <= BITWISE_XOR_OPERATOR)) || ((LA329_2452 >= CLOSE_CURLY_SYMBOL) && (LA329_2452 <= COLLATE_SYMBOL)) || LA329_2452 == COMMA_SYMBOL || LA329_2452 == CONCAT_PIPES_SYMBOL || LA329_2452 == CROSS_SYMBOL || ((LA329_2452 >= DIV_OPERATOR) && (LA329_2452 <= DIV_SYMBOL)) || LA329_2452 == DOUBLE_QUOTED_TEXT || LA329_2452 == EQUAL_OPERATOR || LA329_2452 == FOR_SYMBOL || LA329_2452 == FROM_SYMBOL || ((LA329_2452 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2452 <= GREATER_THAN_OPERATOR)) || ((LA329_2452 >= GROUP_SYMBOL) && (LA329_2452 <= HAVING_SYMBOL)) || LA329_2452 == HEX_NUMBER || LA329_2452 == IDENTIFIER || LA329_2452 == INNER_SYMBOL || LA329_2452 == INTO_SYMBOL || LA329_2452 == IN_SYMBOL || LA329_2452 == IS_SYMBOL || ((LA329_2452 >= JOIN_SYMBOL) && (LA329_2452 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2452 >= LEFT_SYMBOL) && (LA329_2452 <= LESS_THAN_OPERATOR)) || ((LA329_2452 >= LIKE_SYMBOL) && (LA329_2452 <= LIMIT_SYMBOL)) || LA329_2452 == LOCK_SYMBOL || LA329_2452 == LOGICAL_AND_OPERATOR || LA329_2452 == LOGICAL_OR_OPERATOR || LA329_2452 == MINUS_OPERATOR || ((LA329_2452 >= MOD_OPERATOR) && (LA329_2452 <= MOD_SYMBOL)) || ((LA329_2452 >= MULT_OPERATOR) && (LA329_2452 <= NATURAL_SYMBOL)) || ((LA329_2452 >= NOT_EQUAL2_OPERATOR) && (LA329_2452 <= NOT_SYMBOL)) || LA329_2452 == NULL_SAFE_EQUAL_OPERATOR || LA329_2452 == ON_SYMBOL || LA329_2452 == OPEN_PAR_SYMBOL || ((LA329_2452 >= ORDER_SYMBOL) && (LA329_2452 <= OR_SYMBOL)) || LA329_2452 == PLUS_OPERATOR || LA329_2452 == PROCEDURE_SYMBOL || LA329_2452 == REGEXP_SYMBOL || LA329_2452 == RIGHT_SYMBOL || LA329_2452 == SEMICOLON_SYMBOL || LA329_2452 == SET_SYMBOL || ((LA329_2452 >= SHIFT_LEFT_OPERATOR) && (LA329_2452 <= SHIFT_RIGHT_OPERATOR)) || LA329_2452 == SINGLE_QUOTED_TEXT || LA329_2452 == STRAIGHT_JOIN_SYMBOL || LA329_2452 == UNION_SYMBOL || LA329_2452 == USING_SYMBOL || LA329_2452 == WHERE_SYMBOL || LA329_2452 == WITH_SYMBOL || LA329_2452 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2452;


                                            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  = 329;
                                    EXCEPTION->state        = 755;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_30 == EOF || ((LA329_30 >= ACCOUNT_SYMBOL) && (LA329_30 <= YEAR_SYMBOL)) || LA329_30 == AND_SYMBOL || LA329_30 == AS_SYMBOL || LA329_30 == BACK_TICK_QUOTED_ID || LA329_30 == BETWEEN_SYMBOL || LA329_30 == BIN_NUMBER || LA329_30 == BITWISE_AND_OPERATOR || ((LA329_30 >= BITWISE_OR_OPERATOR) && (LA329_30 <= BITWISE_XOR_OPERATOR)) || ((LA329_30 >= CLOSE_CURLY_SYMBOL) && (LA329_30 <= COLLATE_SYMBOL)) || LA329_30 == COMMA_SYMBOL || LA329_30 == CONCAT_PIPES_SYMBOL || LA329_30 == CROSS_SYMBOL || ((LA329_30 >= DIV_OPERATOR) && (LA329_30 <= DIV_SYMBOL)) || LA329_30 == DOUBLE_QUOTED_TEXT || LA329_30 == EQUAL_OPERATOR || LA329_30 == FOR_SYMBOL || LA329_30 == FROM_SYMBOL || ((LA329_30 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_30 <= GREATER_THAN_OPERATOR)) || ((LA329_30 >= GROUP_SYMBOL) && (LA329_30 <= HAVING_SYMBOL)) || LA329_30 == HEX_NUMBER || LA329_30 == IDENTIFIER || LA329_30 == INNER_SYMBOL || LA329_30 == INTO_SYMBOL || LA329_30 == IN_SYMBOL || LA329_30 == IS_SYMBOL || ((LA329_30 >= JOIN_SYMBOL) && (LA329_30 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_30 >= LEFT_SYMBOL) && (LA329_30 <= LESS_THAN_OPERATOR)) || ((LA329_30 >= LIKE_SYMBOL) && (LA329_30 <= LIMIT_SYMBOL)) || LA329_30 == LOCK_SYMBOL || LA329_30 == LOGICAL_AND_OPERATOR || LA329_30 == LOGICAL_OR_OPERATOR || LA329_30 == MINUS_OPERATOR || ((LA329_30 >= MOD_OPERATOR) && (LA329_30 <= MOD_SYMBOL)) || ((LA329_30 >= MULT_OPERATOR) && (LA329_30 <= NATURAL_SYMBOL)) || ((LA329_30 >= NOT_EQUAL2_OPERATOR) && (LA329_30 <= NOT_SYMBOL)) || LA329_30 == NULL_SAFE_EQUAL_OPERATOR || LA329_30 == ON_SYMBOL || LA329_30 == OPEN_PAR_SYMBOL || ((LA329_30 >= ORDER_SYMBOL) && (LA329_30 <= OR_SYMBOL)) || LA329_30 == PLUS_OPERATOR || LA329_30 == PROCEDURE_SYMBOL || LA329_30 == REGEXP_SYMBOL || LA329_30 == RIGHT_SYMBOL || LA329_30 == SEMICOLON_SYMBOL || LA329_30 == SET_SYMBOL || ((LA329_30 >= SHIFT_LEFT_OPERATOR) && (LA329_30 <= SHIFT_RIGHT_OPERATOR)) || LA329_30 == SINGLE_QUOTED_TEXT || LA329_30 == STRAIGHT_JOIN_SYMBOL || LA329_30 == UNION_SYMBOL || LA329_30 == USING_SYMBOL || LA329_30 == WHERE_SYMBOL || LA329_30 == WITH_SYMBOL || LA329_30 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 30;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == YEAR_SYMBOL))
                {
                    {
                        int LA329_32 = LA(2);
                        if ( (LA329_32 == EOF || ((LA329_32 >= ACCOUNT_SYMBOL) && (LA329_32 <= YEAR_SYMBOL)) || LA329_32 == AND_SYMBOL || LA329_32 == AS_SYMBOL || LA329_32 == BACK_TICK_QUOTED_ID || LA329_32 == BETWEEN_SYMBOL || LA329_32 == BIN_NUMBER || LA329_32 == BITWISE_AND_OPERATOR || ((LA329_32 >= BITWISE_OR_OPERATOR) && (LA329_32 <= BITWISE_XOR_OPERATOR)) || ((LA329_32 >= CLOSE_CURLY_SYMBOL) && (LA329_32 <= COLLATE_SYMBOL)) || LA329_32 == COMMA_SYMBOL || LA329_32 == CONCAT_PIPES_SYMBOL || LA329_32 == CROSS_SYMBOL || ((LA329_32 >= DIV_OPERATOR) && (LA329_32 <= DIV_SYMBOL)) || LA329_32 == DOUBLE_QUOTED_TEXT || LA329_32 == EQUAL_OPERATOR || LA329_32 == FOR_SYMBOL || LA329_32 == FROM_SYMBOL || ((LA329_32 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_32 <= GREATER_THAN_OPERATOR)) || ((LA329_32 >= GROUP_SYMBOL) && (LA329_32 <= HAVING_SYMBOL)) || LA329_32 == HEX_NUMBER || LA329_32 == IDENTIFIER || LA329_32 == INNER_SYMBOL || LA329_32 == INTO_SYMBOL || LA329_32 == IN_SYMBOL || LA329_32 == IS_SYMBOL || ((LA329_32 >= JOIN_SYMBOL) && (LA329_32 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_32 >= LEFT_SYMBOL) && (LA329_32 <= LESS_THAN_OPERATOR)) || ((LA329_32 >= LIKE_SYMBOL) && (LA329_32 <= LIMIT_SYMBOL)) || LA329_32 == LOCK_SYMBOL || LA329_32 == LOGICAL_AND_OPERATOR || LA329_32 == LOGICAL_OR_OPERATOR || LA329_32 == MINUS_OPERATOR || ((LA329_32 >= MOD_OPERATOR) && (LA329_32 <= MOD_SYMBOL)) || ((LA329_32 >= MULT_OPERATOR) && (LA329_32 <= NATURAL_SYMBOL)) || ((LA329_32 >= NOT_EQUAL2_OPERATOR) && (LA329_32 <= NOT_SYMBOL)) || LA329_32 == NULL_SAFE_EQUAL_OPERATOR || LA329_32 == ON_SYMBOL || LA329_32 == OPEN_PAR_SYMBOL || ((LA329_32 >= ORDER_SYMBOL) && (LA329_32 <= OR_SYMBOL)) || LA329_32 == PLUS_OPERATOR || LA329_32 == PROCEDURE_SYMBOL || LA329_32 == REGEXP_SYMBOL || LA329_32 == RIGHT_SYMBOL || LA329_32 == SEMICOLON_SYMBOL || LA329_32 == SET_SYMBOL || ((LA329_32 >= SHIFT_LEFT_OPERATOR) && (LA329_32 <= SHIFT_RIGHT_OPERATOR)) || LA329_32 == SINGLE_QUOTED_TEXT || LA329_32 == STRAIGHT_JOIN_SYMBOL || LA329_32 == UNION_SYMBOL || LA329_32 == USING_SYMBOL || LA329_32 == WHERE_SYMBOL || LA329_32 == WITH_SYMBOL || LA329_32 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_32 == DOT_SYMBOL))
                        {
                            {
                                int LA329_810 = LA(3);
                                if ( (LA329_810 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_810 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2454 = LA(4);
                                        if ( (LA329_2454 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6137 = LA(5);
                                                if ( (LA329_6137 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6137 >= ACCOUNT_SYMBOL) && (LA329_6137 <= YEAR_SYMBOL)) || LA329_6137 == BACK_TICK_QUOTED_ID || LA329_6137 == DOUBLE_QUOTED_TEXT || LA329_6137 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6137;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2454 == EOF || ((LA329_2454 >= ACCOUNT_SYMBOL) && (LA329_2454 <= YEAR_SYMBOL)) || LA329_2454 == AND_SYMBOL || LA329_2454 == AS_SYMBOL || LA329_2454 == BACK_TICK_QUOTED_ID || LA329_2454 == BETWEEN_SYMBOL || LA329_2454 == BIN_NUMBER || LA329_2454 == BITWISE_AND_OPERATOR || ((LA329_2454 >= BITWISE_OR_OPERATOR) && (LA329_2454 <= BITWISE_XOR_OPERATOR)) || ((LA329_2454 >= CLOSE_CURLY_SYMBOL) && (LA329_2454 <= COLLATE_SYMBOL)) || LA329_2454 == COMMA_SYMBOL || LA329_2454 == CONCAT_PIPES_SYMBOL || LA329_2454 == CROSS_SYMBOL || ((LA329_2454 >= DIV_OPERATOR) && (LA329_2454 <= DIV_SYMBOL)) || LA329_2454 == DOUBLE_QUOTED_TEXT || LA329_2454 == EQUAL_OPERATOR || LA329_2454 == FOR_SYMBOL || LA329_2454 == FROM_SYMBOL || ((LA329_2454 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2454 <= GREATER_THAN_OPERATOR)) || ((LA329_2454 >= GROUP_SYMBOL) && (LA329_2454 <= HAVING_SYMBOL)) || LA329_2454 == HEX_NUMBER || LA329_2454 == IDENTIFIER || LA329_2454 == INNER_SYMBOL || LA329_2454 == INTO_SYMBOL || LA329_2454 == IN_SYMBOL || LA329_2454 == IS_SYMBOL || ((LA329_2454 >= JOIN_SYMBOL) && (LA329_2454 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2454 >= LEFT_SYMBOL) && (LA329_2454 <= LESS_THAN_OPERATOR)) || ((LA329_2454 >= LIKE_SYMBOL) && (LA329_2454 <= LIMIT_SYMBOL)) || LA329_2454 == LOCK_SYMBOL || LA329_2454 == LOGICAL_AND_OPERATOR || LA329_2454 == LOGICAL_OR_OPERATOR || LA329_2454 == MINUS_OPERATOR || ((LA329_2454 >= MOD_OPERATOR) && (LA329_2454 <= MOD_SYMBOL)) || ((LA329_2454 >= MULT_OPERATOR) && (LA329_2454 <= NATURAL_SYMBOL)) || ((LA329_2454 >= NOT_EQUAL2_OPERATOR) && (LA329_2454 <= NOT_SYMBOL)) || LA329_2454 == NULL_SAFE_EQUAL_OPERATOR || LA329_2454 == ON_SYMBOL || LA329_2454 == OPEN_PAR_SYMBOL || ((LA329_2454 >= ORDER_SYMBOL) && (LA329_2454 <= OR_SYMBOL)) || LA329_2454 == PLUS_OPERATOR || LA329_2454 == PROCEDURE_SYMBOL || LA329_2454 == REGEXP_SYMBOL || LA329_2454 == RIGHT_SYMBOL || LA329_2454 == SEMICOLON_SYMBOL || LA329_2454 == SET_SYMBOL || ((LA329_2454 >= SHIFT_LEFT_OPERATOR) && (LA329_2454 <= SHIFT_RIGHT_OPERATOR)) || LA329_2454 == SINGLE_QUOTED_TEXT || LA329_2454 == STRAIGHT_JOIN_SYMBOL || LA329_2454 == UNION_SYMBOL || LA329_2454 == USING_SYMBOL || LA329_2454 == WHERE_SYMBOL || LA329_2454 == WITH_SYMBOL || LA329_2454 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2454;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_810 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2455 = LA(4);
                                        if ( (LA329_2455 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6191 = LA(5);
                                                if ( (LA329_6191 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6191 >= ACCOUNT_SYMBOL) && (LA329_6191 <= YEAR_SYMBOL)) || LA329_6191 == BACK_TICK_QUOTED_ID || LA329_6191 == DOUBLE_QUOTED_TEXT || LA329_6191 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6191;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2455 == EOF || ((LA329_2455 >= ACCOUNT_SYMBOL) && (LA329_2455 <= YEAR_SYMBOL)) || LA329_2455 == AND_SYMBOL || LA329_2455 == AS_SYMBOL || LA329_2455 == BACK_TICK_QUOTED_ID || LA329_2455 == BETWEEN_SYMBOL || LA329_2455 == BIN_NUMBER || LA329_2455 == BITWISE_AND_OPERATOR || ((LA329_2455 >= BITWISE_OR_OPERATOR) && (LA329_2455 <= BITWISE_XOR_OPERATOR)) || ((LA329_2455 >= CLOSE_CURLY_SYMBOL) && (LA329_2455 <= COLLATE_SYMBOL)) || LA329_2455 == COMMA_SYMBOL || LA329_2455 == CONCAT_PIPES_SYMBOL || LA329_2455 == CROSS_SYMBOL || ((LA329_2455 >= DIV_OPERATOR) && (LA329_2455 <= DIV_SYMBOL)) || LA329_2455 == DOUBLE_QUOTED_TEXT || LA329_2455 == EQUAL_OPERATOR || LA329_2455 == FOR_SYMBOL || LA329_2455 == FROM_SYMBOL || ((LA329_2455 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2455 <= GREATER_THAN_OPERATOR)) || ((LA329_2455 >= GROUP_SYMBOL) && (LA329_2455 <= HAVING_SYMBOL)) || LA329_2455 == HEX_NUMBER || LA329_2455 == IDENTIFIER || LA329_2455 == INNER_SYMBOL || LA329_2455 == INTO_SYMBOL || LA329_2455 == IN_SYMBOL || LA329_2455 == IS_SYMBOL || ((LA329_2455 >= JOIN_SYMBOL) && (LA329_2455 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2455 >= LEFT_SYMBOL) && (LA329_2455 <= LESS_THAN_OPERATOR)) || ((LA329_2455 >= LIKE_SYMBOL) && (LA329_2455 <= LIMIT_SYMBOL)) || LA329_2455 == LOCK_SYMBOL || LA329_2455 == LOGICAL_AND_OPERATOR || LA329_2455 == LOGICAL_OR_OPERATOR || LA329_2455 == MINUS_OPERATOR || ((LA329_2455 >= MOD_OPERATOR) && (LA329_2455 <= MOD_SYMBOL)) || ((LA329_2455 >= MULT_OPERATOR) && (LA329_2455 <= NATURAL_SYMBOL)) || ((LA329_2455 >= NOT_EQUAL2_OPERATOR) && (LA329_2455 <= NOT_SYMBOL)) || LA329_2455 == NULL_SAFE_EQUAL_OPERATOR || LA329_2455 == ON_SYMBOL || LA329_2455 == OPEN_PAR_SYMBOL || ((LA329_2455 >= ORDER_SYMBOL) && (LA329_2455 <= OR_SYMBOL)) || LA329_2455 == PLUS_OPERATOR || LA329_2455 == PROCEDURE_SYMBOL || LA329_2455 == REGEXP_SYMBOL || LA329_2455 == RIGHT_SYMBOL || LA329_2455 == SEMICOLON_SYMBOL || LA329_2455 == SET_SYMBOL || ((LA329_2455 >= SHIFT_LEFT_OPERATOR) && (LA329_2455 <= SHIFT_RIGHT_OPERATOR)) || LA329_2455 == SINGLE_QUOTED_TEXT || LA329_2455 == STRAIGHT_JOIN_SYMBOL || LA329_2455 == UNION_SYMBOL || LA329_2455 == USING_SYMBOL || LA329_2455 == WHERE_SYMBOL || LA329_2455 == WITH_SYMBOL || LA329_2455 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2455;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_810 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2456 = LA(4);
                                        if ( (LA329_2456 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6245 = LA(5);
                                                if ( (LA329_6245 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6245 >= ACCOUNT_SYMBOL) && (LA329_6245 <= YEAR_SYMBOL)) || LA329_6245 == BACK_TICK_QUOTED_ID || LA329_6245 == DOUBLE_QUOTED_TEXT || LA329_6245 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6245;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2456 == EOF || ((LA329_2456 >= ACCOUNT_SYMBOL) && (LA329_2456 <= YEAR_SYMBOL)) || LA329_2456 == AND_SYMBOL || LA329_2456 == AS_SYMBOL || LA329_2456 == BACK_TICK_QUOTED_ID || LA329_2456 == BETWEEN_SYMBOL || LA329_2456 == BIN_NUMBER || LA329_2456 == BITWISE_AND_OPERATOR || ((LA329_2456 >= BITWISE_OR_OPERATOR) && (LA329_2456 <= BITWISE_XOR_OPERATOR)) || ((LA329_2456 >= CLOSE_CURLY_SYMBOL) && (LA329_2456 <= COLLATE_SYMBOL)) || LA329_2456 == COMMA_SYMBOL || LA329_2456 == CONCAT_PIPES_SYMBOL || LA329_2456 == CROSS_SYMBOL || ((LA329_2456 >= DIV_OPERATOR) && (LA329_2456 <= DIV_SYMBOL)) || LA329_2456 == DOUBLE_QUOTED_TEXT || LA329_2456 == EQUAL_OPERATOR || LA329_2456 == FOR_SYMBOL || LA329_2456 == FROM_SYMBOL || ((LA329_2456 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2456 <= GREATER_THAN_OPERATOR)) || ((LA329_2456 >= GROUP_SYMBOL) && (LA329_2456 <= HAVING_SYMBOL)) || LA329_2456 == HEX_NUMBER || LA329_2456 == IDENTIFIER || LA329_2456 == INNER_SYMBOL || LA329_2456 == INTO_SYMBOL || LA329_2456 == IN_SYMBOL || LA329_2456 == IS_SYMBOL || ((LA329_2456 >= JOIN_SYMBOL) && (LA329_2456 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2456 >= LEFT_SYMBOL) && (LA329_2456 <= LESS_THAN_OPERATOR)) || ((LA329_2456 >= LIKE_SYMBOL) && (LA329_2456 <= LIMIT_SYMBOL)) || LA329_2456 == LOCK_SYMBOL || LA329_2456 == LOGICAL_AND_OPERATOR || LA329_2456 == LOGICAL_OR_OPERATOR || LA329_2456 == MINUS_OPERATOR || ((LA329_2456 >= MOD_OPERATOR) && (LA329_2456 <= MOD_SYMBOL)) || ((LA329_2456 >= MULT_OPERATOR) && (LA329_2456 <= NATURAL_SYMBOL)) || ((LA329_2456 >= NOT_EQUAL2_OPERATOR) && (LA329_2456 <= NOT_SYMBOL)) || LA329_2456 == NULL_SAFE_EQUAL_OPERATOR || LA329_2456 == ON_SYMBOL || LA329_2456 == OPEN_PAR_SYMBOL || ((LA329_2456 >= ORDER_SYMBOL) && (LA329_2456 <= OR_SYMBOL)) || LA329_2456 == PLUS_OPERATOR || LA329_2456 == PROCEDURE_SYMBOL || LA329_2456 == REGEXP_SYMBOL || LA329_2456 == RIGHT_SYMBOL || LA329_2456 == SEMICOLON_SYMBOL || LA329_2456 == SET_SYMBOL || ((LA329_2456 >= SHIFT_LEFT_OPERATOR) && (LA329_2456 <= SHIFT_RIGHT_OPERATOR)) || LA329_2456 == SINGLE_QUOTED_TEXT || LA329_2456 == STRAIGHT_JOIN_SYMBOL || LA329_2456 == UNION_SYMBOL || LA329_2456 == USING_SYMBOL || LA329_2456 == WHERE_SYMBOL || LA329_2456 == WITH_SYMBOL || LA329_2456 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2456;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_810 >= ACTION_SYMBOL) && (LA329_810 <= SHARE_SYMBOL)) || ((LA329_810 >= SLOW_SYMBOL) && (LA329_810 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2457 = LA(4);
                                        if ( (LA329_2457 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6299 = LA(5);
                                                if ( (LA329_6299 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6299 >= ACCOUNT_SYMBOL) && (LA329_6299 <= YEAR_SYMBOL)) || LA329_6299 == BACK_TICK_QUOTED_ID || LA329_6299 == DOUBLE_QUOTED_TEXT || LA329_6299 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6299;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2457 == EOF || ((LA329_2457 >= ACCOUNT_SYMBOL) && (LA329_2457 <= YEAR_SYMBOL)) || LA329_2457 == AND_SYMBOL || LA329_2457 == AS_SYMBOL || LA329_2457 == BACK_TICK_QUOTED_ID || LA329_2457 == BETWEEN_SYMBOL || LA329_2457 == BIN_NUMBER || LA329_2457 == BITWISE_AND_OPERATOR || ((LA329_2457 >= BITWISE_OR_OPERATOR) && (LA329_2457 <= BITWISE_XOR_OPERATOR)) || ((LA329_2457 >= CLOSE_CURLY_SYMBOL) && (LA329_2457 <= COLLATE_SYMBOL)) || LA329_2457 == COMMA_SYMBOL || LA329_2457 == CONCAT_PIPES_SYMBOL || LA329_2457 == CROSS_SYMBOL || ((LA329_2457 >= DIV_OPERATOR) && (LA329_2457 <= DIV_SYMBOL)) || LA329_2457 == DOUBLE_QUOTED_TEXT || LA329_2457 == EQUAL_OPERATOR || LA329_2457 == FOR_SYMBOL || LA329_2457 == FROM_SYMBOL || ((LA329_2457 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2457 <= GREATER_THAN_OPERATOR)) || ((LA329_2457 >= GROUP_SYMBOL) && (LA329_2457 <= HAVING_SYMBOL)) || LA329_2457 == HEX_NUMBER || LA329_2457 == IDENTIFIER || LA329_2457 == INNER_SYMBOL || LA329_2457 == INTO_SYMBOL || LA329_2457 == IN_SYMBOL || LA329_2457 == IS_SYMBOL || ((LA329_2457 >= JOIN_SYMBOL) && (LA329_2457 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2457 >= LEFT_SYMBOL) && (LA329_2457 <= LESS_THAN_OPERATOR)) || ((LA329_2457 >= LIKE_SYMBOL) && (LA329_2457 <= LIMIT_SYMBOL)) || LA329_2457 == LOCK_SYMBOL || LA329_2457 == LOGICAL_AND_OPERATOR || LA329_2457 == LOGICAL_OR_OPERATOR || LA329_2457 == MINUS_OPERATOR || ((LA329_2457 >= MOD_OPERATOR) && (LA329_2457 <= MOD_SYMBOL)) || ((LA329_2457 >= MULT_OPERATOR) && (LA329_2457 <= NATURAL_SYMBOL)) || ((LA329_2457 >= NOT_EQUAL2_OPERATOR) && (LA329_2457 <= NOT_SYMBOL)) || LA329_2457 == NULL_SAFE_EQUAL_OPERATOR || LA329_2457 == ON_SYMBOL || LA329_2457 == OPEN_PAR_SYMBOL || ((LA329_2457 >= ORDER_SYMBOL) && (LA329_2457 <= OR_SYMBOL)) || LA329_2457 == PLUS_OPERATOR || LA329_2457 == PROCEDURE_SYMBOL || LA329_2457 == REGEXP_SYMBOL || LA329_2457 == RIGHT_SYMBOL || LA329_2457 == SEMICOLON_SYMBOL || LA329_2457 == SET_SYMBOL || ((LA329_2457 >= SHIFT_LEFT_OPERATOR) && (LA329_2457 <= SHIFT_RIGHT_OPERATOR)) || LA329_2457 == SINGLE_QUOTED_TEXT || LA329_2457 == STRAIGHT_JOIN_SYMBOL || LA329_2457 == UNION_SYMBOL || LA329_2457 == USING_SYMBOL || LA329_2457 == WHERE_SYMBOL || LA329_2457 == WITH_SYMBOL || LA329_2457 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2457;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_810 >= ACCOUNT_SYMBOL) && (LA329_810 <= XA_SYMBOL)) || LA329_810 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2458 = LA(4);
                                        if ( (LA329_2458 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6353 = LA(5);
                                                if ( (LA329_6353 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6353 >= ACCOUNT_SYMBOL) && (LA329_6353 <= YEAR_SYMBOL)) || LA329_6353 == BACK_TICK_QUOTED_ID || LA329_6353 == DOUBLE_QUOTED_TEXT || LA329_6353 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6353;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2458 == EOF || ((LA329_2458 >= ACCOUNT_SYMBOL) && (LA329_2458 <= YEAR_SYMBOL)) || LA329_2458 == AND_SYMBOL || LA329_2458 == AS_SYMBOL || LA329_2458 == BACK_TICK_QUOTED_ID || LA329_2458 == BETWEEN_SYMBOL || LA329_2458 == BIN_NUMBER || LA329_2458 == BITWISE_AND_OPERATOR || ((LA329_2458 >= BITWISE_OR_OPERATOR) && (LA329_2458 <= BITWISE_XOR_OPERATOR)) || ((LA329_2458 >= CLOSE_CURLY_SYMBOL) && (LA329_2458 <= COLLATE_SYMBOL)) || LA329_2458 == COMMA_SYMBOL || LA329_2458 == CONCAT_PIPES_SYMBOL || LA329_2458 == CROSS_SYMBOL || ((LA329_2458 >= DIV_OPERATOR) && (LA329_2458 <= DIV_SYMBOL)) || LA329_2458 == DOUBLE_QUOTED_TEXT || LA329_2458 == EQUAL_OPERATOR || LA329_2458 == FOR_SYMBOL || LA329_2458 == FROM_SYMBOL || ((LA329_2458 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2458 <= GREATER_THAN_OPERATOR)) || ((LA329_2458 >= GROUP_SYMBOL) && (LA329_2458 <= HAVING_SYMBOL)) || LA329_2458 == HEX_NUMBER || LA329_2458 == IDENTIFIER || LA329_2458 == INNER_SYMBOL || LA329_2458 == INTO_SYMBOL || LA329_2458 == IN_SYMBOL || LA329_2458 == IS_SYMBOL || ((LA329_2458 >= JOIN_SYMBOL) && (LA329_2458 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2458 >= LEFT_SYMBOL) && (LA329_2458 <= LESS_THAN_OPERATOR)) || ((LA329_2458 >= LIKE_SYMBOL) && (LA329_2458 <= LIMIT_SYMBOL)) || LA329_2458 == LOCK_SYMBOL || LA329_2458 == LOGICAL_AND_OPERATOR || LA329_2458 == LOGICAL_OR_OPERATOR || LA329_2458 == MINUS_OPERATOR || ((LA329_2458 >= MOD_OPERATOR) && (LA329_2458 <= MOD_SYMBOL)) || ((LA329_2458 >= MULT_OPERATOR) && (LA329_2458 <= NATURAL_SYMBOL)) || ((LA329_2458 >= NOT_EQUAL2_OPERATOR) && (LA329_2458 <= NOT_SYMBOL)) || LA329_2458 == NULL_SAFE_EQUAL_OPERATOR || LA329_2458 == ON_SYMBOL || LA329_2458 == OPEN_PAR_SYMBOL || ((LA329_2458 >= ORDER_SYMBOL) && (LA329_2458 <= OR_SYMBOL)) || LA329_2458 == PLUS_OPERATOR || LA329_2458 == PROCEDURE_SYMBOL || LA329_2458 == REGEXP_SYMBOL || LA329_2458 == RIGHT_SYMBOL || LA329_2458 == SEMICOLON_SYMBOL || LA329_2458 == SET_SYMBOL || ((LA329_2458 >= SHIFT_LEFT_OPERATOR) && (LA329_2458 <= SHIFT_RIGHT_OPERATOR)) || LA329_2458 == SINGLE_QUOTED_TEXT || LA329_2458 == STRAIGHT_JOIN_SYMBOL || LA329_2458 == UNION_SYMBOL || LA329_2458 == USING_SYMBOL || LA329_2458 == WHERE_SYMBOL || LA329_2458 == WITH_SYMBOL || LA329_2458 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2458;


                                            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  = 329;
                                    EXCEPTION->state        = 810;


                                    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  = 329;
                            EXCEPTION->state        = 32;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == ADDDATE_SYMBOL || LA329_0 == SUBDATE_SYMBOL))
                {
                    {
                        int LA329_34 = LA(2);
                        if ( (LA329_34 == EOF || ((LA329_34 >= ACCOUNT_SYMBOL) && (LA329_34 <= YEAR_SYMBOL)) || LA329_34 == AND_SYMBOL || LA329_34 == AS_SYMBOL || LA329_34 == BACK_TICK_QUOTED_ID || LA329_34 == BETWEEN_SYMBOL || LA329_34 == BIN_NUMBER || LA329_34 == BITWISE_AND_OPERATOR || ((LA329_34 >= BITWISE_OR_OPERATOR) && (LA329_34 <= BITWISE_XOR_OPERATOR)) || ((LA329_34 >= CLOSE_CURLY_SYMBOL) && (LA329_34 <= COLLATE_SYMBOL)) || LA329_34 == COMMA_SYMBOL || LA329_34 == CONCAT_PIPES_SYMBOL || LA329_34 == CROSS_SYMBOL || ((LA329_34 >= DIV_OPERATOR) && (LA329_34 <= DIV_SYMBOL)) || LA329_34 == DOUBLE_QUOTED_TEXT || LA329_34 == EQUAL_OPERATOR || LA329_34 == FOR_SYMBOL || LA329_34 == FROM_SYMBOL || ((LA329_34 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_34 <= GREATER_THAN_OPERATOR)) || ((LA329_34 >= GROUP_SYMBOL) && (LA329_34 <= HAVING_SYMBOL)) || LA329_34 == HEX_NUMBER || LA329_34 == IDENTIFIER || LA329_34 == INNER_SYMBOL || LA329_34 == INTO_SYMBOL || LA329_34 == IN_SYMBOL || LA329_34 == IS_SYMBOL || ((LA329_34 >= JOIN_SYMBOL) && (LA329_34 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_34 >= LEFT_SYMBOL) && (LA329_34 <= LESS_THAN_OPERATOR)) || ((LA329_34 >= LIKE_SYMBOL) && (LA329_34 <= LIMIT_SYMBOL)) || LA329_34 == LOCK_SYMBOL || LA329_34 == LOGICAL_AND_OPERATOR || LA329_34 == LOGICAL_OR_OPERATOR || LA329_34 == MINUS_OPERATOR || ((LA329_34 >= MOD_OPERATOR) && (LA329_34 <= MOD_SYMBOL)) || ((LA329_34 >= MULT_OPERATOR) && (LA329_34 <= NATURAL_SYMBOL)) || ((LA329_34 >= NOT_EQUAL2_OPERATOR) && (LA329_34 <= NOT_SYMBOL)) || LA329_34 == NULL_SAFE_EQUAL_OPERATOR || LA329_34 == ON_SYMBOL || LA329_34 == OPEN_PAR_SYMBOL || ((LA329_34 >= ORDER_SYMBOL) && (LA329_34 <= OR_SYMBOL)) || LA329_34 == PLUS_OPERATOR || LA329_34 == PROCEDURE_SYMBOL || LA329_34 == REGEXP_SYMBOL || LA329_34 == RIGHT_SYMBOL || LA329_34 == SEMICOLON_SYMBOL || LA329_34 == SET_SYMBOL || ((LA329_34 >= SHIFT_LEFT_OPERATOR) && (LA329_34 <= SHIFT_RIGHT_OPERATOR)) || LA329_34 == SINGLE_QUOTED_TEXT || LA329_34 == STRAIGHT_JOIN_SYMBOL || LA329_34 == UNION_SYMBOL || LA329_34 == USING_SYMBOL || LA329_34 == WHERE_SYMBOL || LA329_34 == WITH_SYMBOL || LA329_34 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_34 == DOT_SYMBOL))
                        {
                            {
                                int LA329_864 = LA(3);
                                if ( (LA329_864 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_864 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2460 = LA(4);
                                        if ( (LA329_2460 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6407 = LA(5);
                                                if ( (LA329_6407 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6407 >= ACCOUNT_SYMBOL) && (LA329_6407 <= YEAR_SYMBOL)) || LA329_6407 == BACK_TICK_QUOTED_ID || LA329_6407 == DOUBLE_QUOTED_TEXT || LA329_6407 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6407;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2460 == EOF || ((LA329_2460 >= ACCOUNT_SYMBOL) && (LA329_2460 <= YEAR_SYMBOL)) || LA329_2460 == AND_SYMBOL || LA329_2460 == AS_SYMBOL || LA329_2460 == BACK_TICK_QUOTED_ID || LA329_2460 == BETWEEN_SYMBOL || LA329_2460 == BIN_NUMBER || LA329_2460 == BITWISE_AND_OPERATOR || ((LA329_2460 >= BITWISE_OR_OPERATOR) && (LA329_2460 <= BITWISE_XOR_OPERATOR)) || ((LA329_2460 >= CLOSE_CURLY_SYMBOL) && (LA329_2460 <= COLLATE_SYMBOL)) || LA329_2460 == COMMA_SYMBOL || LA329_2460 == CONCAT_PIPES_SYMBOL || LA329_2460 == CROSS_SYMBOL || ((LA329_2460 >= DIV_OPERATOR) && (LA329_2460 <= DIV_SYMBOL)) || LA329_2460 == DOUBLE_QUOTED_TEXT || LA329_2460 == EQUAL_OPERATOR || LA329_2460 == FOR_SYMBOL || LA329_2460 == FROM_SYMBOL || ((LA329_2460 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2460 <= GREATER_THAN_OPERATOR)) || ((LA329_2460 >= GROUP_SYMBOL) && (LA329_2460 <= HAVING_SYMBOL)) || LA329_2460 == HEX_NUMBER || LA329_2460 == IDENTIFIER || LA329_2460 == INNER_SYMBOL || LA329_2460 == INTO_SYMBOL || LA329_2460 == IN_SYMBOL || LA329_2460 == IS_SYMBOL || ((LA329_2460 >= JOIN_SYMBOL) && (LA329_2460 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2460 >= LEFT_SYMBOL) && (LA329_2460 <= LESS_THAN_OPERATOR)) || ((LA329_2460 >= LIKE_SYMBOL) && (LA329_2460 <= LIMIT_SYMBOL)) || LA329_2460 == LOCK_SYMBOL || LA329_2460 == LOGICAL_AND_OPERATOR || LA329_2460 == LOGICAL_OR_OPERATOR || LA329_2460 == MINUS_OPERATOR || ((LA329_2460 >= MOD_OPERATOR) && (LA329_2460 <= MOD_SYMBOL)) || ((LA329_2460 >= MULT_OPERATOR) && (LA329_2460 <= NATURAL_SYMBOL)) || ((LA329_2460 >= NOT_EQUAL2_OPERATOR) && (LA329_2460 <= NOT_SYMBOL)) || LA329_2460 == NULL_SAFE_EQUAL_OPERATOR || LA329_2460 == ON_SYMBOL || LA329_2460 == OPEN_PAR_SYMBOL || ((LA329_2460 >= ORDER_SYMBOL) && (LA329_2460 <= OR_SYMBOL)) || LA329_2460 == PLUS_OPERATOR || LA329_2460 == PROCEDURE_SYMBOL || LA329_2460 == REGEXP_SYMBOL || LA329_2460 == RIGHT_SYMBOL || LA329_2460 == SEMICOLON_SYMBOL || LA329_2460 == SET_SYMBOL || ((LA329_2460 >= SHIFT_LEFT_OPERATOR) && (LA329_2460 <= SHIFT_RIGHT_OPERATOR)) || LA329_2460 == SINGLE_QUOTED_TEXT || LA329_2460 == STRAIGHT_JOIN_SYMBOL || LA329_2460 == UNION_SYMBOL || LA329_2460 == USING_SYMBOL || LA329_2460 == WHERE_SYMBOL || LA329_2460 == WITH_SYMBOL || LA329_2460 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2460;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_864 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2461 = LA(4);
                                        if ( (LA329_2461 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6461 = LA(5);
                                                if ( (LA329_6461 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6461 >= ACCOUNT_SYMBOL) && (LA329_6461 <= YEAR_SYMBOL)) || LA329_6461 == BACK_TICK_QUOTED_ID || LA329_6461 == DOUBLE_QUOTED_TEXT || LA329_6461 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6461;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2461 == EOF || ((LA329_2461 >= ACCOUNT_SYMBOL) && (LA329_2461 <= YEAR_SYMBOL)) || LA329_2461 == AND_SYMBOL || LA329_2461 == AS_SYMBOL || LA329_2461 == BACK_TICK_QUOTED_ID || LA329_2461 == BETWEEN_SYMBOL || LA329_2461 == BIN_NUMBER || LA329_2461 == BITWISE_AND_OPERATOR || ((LA329_2461 >= BITWISE_OR_OPERATOR) && (LA329_2461 <= BITWISE_XOR_OPERATOR)) || ((LA329_2461 >= CLOSE_CURLY_SYMBOL) && (LA329_2461 <= COLLATE_SYMBOL)) || LA329_2461 == COMMA_SYMBOL || LA329_2461 == CONCAT_PIPES_SYMBOL || LA329_2461 == CROSS_SYMBOL || ((LA329_2461 >= DIV_OPERATOR) && (LA329_2461 <= DIV_SYMBOL)) || LA329_2461 == DOUBLE_QUOTED_TEXT || LA329_2461 == EQUAL_OPERATOR || LA329_2461 == FOR_SYMBOL || LA329_2461 == FROM_SYMBOL || ((LA329_2461 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2461 <= GREATER_THAN_OPERATOR)) || ((LA329_2461 >= GROUP_SYMBOL) && (LA329_2461 <= HAVING_SYMBOL)) || LA329_2461 == HEX_NUMBER || LA329_2461 == IDENTIFIER || LA329_2461 == INNER_SYMBOL || LA329_2461 == INTO_SYMBOL || LA329_2461 == IN_SYMBOL || LA329_2461 == IS_SYMBOL || ((LA329_2461 >= JOIN_SYMBOL) && (LA329_2461 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2461 >= LEFT_SYMBOL) && (LA329_2461 <= LESS_THAN_OPERATOR)) || ((LA329_2461 >= LIKE_SYMBOL) && (LA329_2461 <= LIMIT_SYMBOL)) || LA329_2461 == LOCK_SYMBOL || LA329_2461 == LOGICAL_AND_OPERATOR || LA329_2461 == LOGICAL_OR_OPERATOR || LA329_2461 == MINUS_OPERATOR || ((LA329_2461 >= MOD_OPERATOR) && (LA329_2461 <= MOD_SYMBOL)) || ((LA329_2461 >= MULT_OPERATOR) && (LA329_2461 <= NATURAL_SYMBOL)) || ((LA329_2461 >= NOT_EQUAL2_OPERATOR) && (LA329_2461 <= NOT_SYMBOL)) || LA329_2461 == NULL_SAFE_EQUAL_OPERATOR || LA329_2461 == ON_SYMBOL || LA329_2461 == OPEN_PAR_SYMBOL || ((LA329_2461 >= ORDER_SYMBOL) && (LA329_2461 <= OR_SYMBOL)) || LA329_2461 == PLUS_OPERATOR || LA329_2461 == PROCEDURE_SYMBOL || LA329_2461 == REGEXP_SYMBOL || LA329_2461 == RIGHT_SYMBOL || LA329_2461 == SEMICOLON_SYMBOL || LA329_2461 == SET_SYMBOL || ((LA329_2461 >= SHIFT_LEFT_OPERATOR) && (LA329_2461 <= SHIFT_RIGHT_OPERATOR)) || LA329_2461 == SINGLE_QUOTED_TEXT || LA329_2461 == STRAIGHT_JOIN_SYMBOL || LA329_2461 == UNION_SYMBOL || LA329_2461 == USING_SYMBOL || LA329_2461 == WHERE_SYMBOL || LA329_2461 == WITH_SYMBOL || LA329_2461 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2461;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_864 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2462 = LA(4);
                                        if ( (LA329_2462 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6515 = LA(5);
                                                if ( (LA329_6515 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6515 >= ACCOUNT_SYMBOL) && (LA329_6515 <= YEAR_SYMBOL)) || LA329_6515 == BACK_TICK_QUOTED_ID || LA329_6515 == DOUBLE_QUOTED_TEXT || LA329_6515 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6515;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2462 == EOF || ((LA329_2462 >= ACCOUNT_SYMBOL) && (LA329_2462 <= YEAR_SYMBOL)) || LA329_2462 == AND_SYMBOL || LA329_2462 == AS_SYMBOL || LA329_2462 == BACK_TICK_QUOTED_ID || LA329_2462 == BETWEEN_SYMBOL || LA329_2462 == BIN_NUMBER || LA329_2462 == BITWISE_AND_OPERATOR || ((LA329_2462 >= BITWISE_OR_OPERATOR) && (LA329_2462 <= BITWISE_XOR_OPERATOR)) || ((LA329_2462 >= CLOSE_CURLY_SYMBOL) && (LA329_2462 <= COLLATE_SYMBOL)) || LA329_2462 == COMMA_SYMBOL || LA329_2462 == CONCAT_PIPES_SYMBOL || LA329_2462 == CROSS_SYMBOL || ((LA329_2462 >= DIV_OPERATOR) && (LA329_2462 <= DIV_SYMBOL)) || LA329_2462 == DOUBLE_QUOTED_TEXT || LA329_2462 == EQUAL_OPERATOR || LA329_2462 == FOR_SYMBOL || LA329_2462 == FROM_SYMBOL || ((LA329_2462 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2462 <= GREATER_THAN_OPERATOR)) || ((LA329_2462 >= GROUP_SYMBOL) && (LA329_2462 <= HAVING_SYMBOL)) || LA329_2462 == HEX_NUMBER || LA329_2462 == IDENTIFIER || LA329_2462 == INNER_SYMBOL || LA329_2462 == INTO_SYMBOL || LA329_2462 == IN_SYMBOL || LA329_2462 == IS_SYMBOL || ((LA329_2462 >= JOIN_SYMBOL) && (LA329_2462 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2462 >= LEFT_SYMBOL) && (LA329_2462 <= LESS_THAN_OPERATOR)) || ((LA329_2462 >= LIKE_SYMBOL) && (LA329_2462 <= LIMIT_SYMBOL)) || LA329_2462 == LOCK_SYMBOL || LA329_2462 == LOGICAL_AND_OPERATOR || LA329_2462 == LOGICAL_OR_OPERATOR || LA329_2462 == MINUS_OPERATOR || ((LA329_2462 >= MOD_OPERATOR) && (LA329_2462 <= MOD_SYMBOL)) || ((LA329_2462 >= MULT_OPERATOR) && (LA329_2462 <= NATURAL_SYMBOL)) || ((LA329_2462 >= NOT_EQUAL2_OPERATOR) && (LA329_2462 <= NOT_SYMBOL)) || LA329_2462 == NULL_SAFE_EQUAL_OPERATOR || LA329_2462 == ON_SYMBOL || LA329_2462 == OPEN_PAR_SYMBOL || ((LA329_2462 >= ORDER_SYMBOL) && (LA329_2462 <= OR_SYMBOL)) || LA329_2462 == PLUS_OPERATOR || LA329_2462 == PROCEDURE_SYMBOL || LA329_2462 == REGEXP_SYMBOL || LA329_2462 == RIGHT_SYMBOL || LA329_2462 == SEMICOLON_SYMBOL || LA329_2462 == SET_SYMBOL || ((LA329_2462 >= SHIFT_LEFT_OPERATOR) && (LA329_2462 <= SHIFT_RIGHT_OPERATOR)) || LA329_2462 == SINGLE_QUOTED_TEXT || LA329_2462 == STRAIGHT_JOIN_SYMBOL || LA329_2462 == UNION_SYMBOL || LA329_2462 == USING_SYMBOL || LA329_2462 == WHERE_SYMBOL || LA329_2462 == WITH_SYMBOL || LA329_2462 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2462;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_864 >= ACTION_SYMBOL) && (LA329_864 <= SHARE_SYMBOL)) || ((LA329_864 >= SLOW_SYMBOL) && (LA329_864 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2463 = LA(4);
                                        if ( (LA329_2463 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6569 = LA(5);
                                                if ( (LA329_6569 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6569 >= ACCOUNT_SYMBOL) && (LA329_6569 <= YEAR_SYMBOL)) || LA329_6569 == BACK_TICK_QUOTED_ID || LA329_6569 == DOUBLE_QUOTED_TEXT || LA329_6569 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6569;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2463 == EOF || ((LA329_2463 >= ACCOUNT_SYMBOL) && (LA329_2463 <= YEAR_SYMBOL)) || LA329_2463 == AND_SYMBOL || LA329_2463 == AS_SYMBOL || LA329_2463 == BACK_TICK_QUOTED_ID || LA329_2463 == BETWEEN_SYMBOL || LA329_2463 == BIN_NUMBER || LA329_2463 == BITWISE_AND_OPERATOR || ((LA329_2463 >= BITWISE_OR_OPERATOR) && (LA329_2463 <= BITWISE_XOR_OPERATOR)) || ((LA329_2463 >= CLOSE_CURLY_SYMBOL) && (LA329_2463 <= COLLATE_SYMBOL)) || LA329_2463 == COMMA_SYMBOL || LA329_2463 == CONCAT_PIPES_SYMBOL || LA329_2463 == CROSS_SYMBOL || ((LA329_2463 >= DIV_OPERATOR) && (LA329_2463 <= DIV_SYMBOL)) || LA329_2463 == DOUBLE_QUOTED_TEXT || LA329_2463 == EQUAL_OPERATOR || LA329_2463 == FOR_SYMBOL || LA329_2463 == FROM_SYMBOL || ((LA329_2463 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2463 <= GREATER_THAN_OPERATOR)) || ((LA329_2463 >= GROUP_SYMBOL) && (LA329_2463 <= HAVING_SYMBOL)) || LA329_2463 == HEX_NUMBER || LA329_2463 == IDENTIFIER || LA329_2463 == INNER_SYMBOL || LA329_2463 == INTO_SYMBOL || LA329_2463 == IN_SYMBOL || LA329_2463 == IS_SYMBOL || ((LA329_2463 >= JOIN_SYMBOL) && (LA329_2463 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2463 >= LEFT_SYMBOL) && (LA329_2463 <= LESS_THAN_OPERATOR)) || ((LA329_2463 >= LIKE_SYMBOL) && (LA329_2463 <= LIMIT_SYMBOL)) || LA329_2463 == LOCK_SYMBOL || LA329_2463 == LOGICAL_AND_OPERATOR || LA329_2463 == LOGICAL_OR_OPERATOR || LA329_2463 == MINUS_OPERATOR || ((LA329_2463 >= MOD_OPERATOR) && (LA329_2463 <= MOD_SYMBOL)) || ((LA329_2463 >= MULT_OPERATOR) && (LA329_2463 <= NATURAL_SYMBOL)) || ((LA329_2463 >= NOT_EQUAL2_OPERATOR) && (LA329_2463 <= NOT_SYMBOL)) || LA329_2463 == NULL_SAFE_EQUAL_OPERATOR || LA329_2463 == ON_SYMBOL || LA329_2463 == OPEN_PAR_SYMBOL || ((LA329_2463 >= ORDER_SYMBOL) && (LA329_2463 <= OR_SYMBOL)) || LA329_2463 == PLUS_OPERATOR || LA329_2463 == PROCEDURE_SYMBOL || LA329_2463 == REGEXP_SYMBOL || LA329_2463 == RIGHT_SYMBOL || LA329_2463 == SEMICOLON_SYMBOL || LA329_2463 == SET_SYMBOL || ((LA329_2463 >= SHIFT_LEFT_OPERATOR) && (LA329_2463 <= SHIFT_RIGHT_OPERATOR)) || LA329_2463 == SINGLE_QUOTED_TEXT || LA329_2463 == STRAIGHT_JOIN_SYMBOL || LA329_2463 == UNION_SYMBOL || LA329_2463 == USING_SYMBOL || LA329_2463 == WHERE_SYMBOL || LA329_2463 == WITH_SYMBOL || LA329_2463 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2463;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_864 >= ACCOUNT_SYMBOL) && (LA329_864 <= XA_SYMBOL)) || LA329_864 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2464 = LA(4);
                                        if ( (LA329_2464 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6623 = LA(5);
                                                if ( (LA329_6623 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6623 >= ACCOUNT_SYMBOL) && (LA329_6623 <= YEAR_SYMBOL)) || LA329_6623 == BACK_TICK_QUOTED_ID || LA329_6623 == DOUBLE_QUOTED_TEXT || LA329_6623 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6623;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2464 == EOF || ((LA329_2464 >= ACCOUNT_SYMBOL) && (LA329_2464 <= YEAR_SYMBOL)) || LA329_2464 == AND_SYMBOL || LA329_2464 == AS_SYMBOL || LA329_2464 == BACK_TICK_QUOTED_ID || LA329_2464 == BETWEEN_SYMBOL || LA329_2464 == BIN_NUMBER || LA329_2464 == BITWISE_AND_OPERATOR || ((LA329_2464 >= BITWISE_OR_OPERATOR) && (LA329_2464 <= BITWISE_XOR_OPERATOR)) || ((LA329_2464 >= CLOSE_CURLY_SYMBOL) && (LA329_2464 <= COLLATE_SYMBOL)) || LA329_2464 == COMMA_SYMBOL || LA329_2464 == CONCAT_PIPES_SYMBOL || LA329_2464 == CROSS_SYMBOL || ((LA329_2464 >= DIV_OPERATOR) && (LA329_2464 <= DIV_SYMBOL)) || LA329_2464 == DOUBLE_QUOTED_TEXT || LA329_2464 == EQUAL_OPERATOR || LA329_2464 == FOR_SYMBOL || LA329_2464 == FROM_SYMBOL || ((LA329_2464 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2464 <= GREATER_THAN_OPERATOR)) || ((LA329_2464 >= GROUP_SYMBOL) && (LA329_2464 <= HAVING_SYMBOL)) || LA329_2464 == HEX_NUMBER || LA329_2464 == IDENTIFIER || LA329_2464 == INNER_SYMBOL || LA329_2464 == INTO_SYMBOL || LA329_2464 == IN_SYMBOL || LA329_2464 == IS_SYMBOL || ((LA329_2464 >= JOIN_SYMBOL) && (LA329_2464 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2464 >= LEFT_SYMBOL) && (LA329_2464 <= LESS_THAN_OPERATOR)) || ((LA329_2464 >= LIKE_SYMBOL) && (LA329_2464 <= LIMIT_SYMBOL)) || LA329_2464 == LOCK_SYMBOL || LA329_2464 == LOGICAL_AND_OPERATOR || LA329_2464 == LOGICAL_OR_OPERATOR || LA329_2464 == MINUS_OPERATOR || ((LA329_2464 >= MOD_OPERATOR) && (LA329_2464 <= MOD_SYMBOL)) || ((LA329_2464 >= MULT_OPERATOR) && (LA329_2464 <= NATURAL_SYMBOL)) || ((LA329_2464 >= NOT_EQUAL2_OPERATOR) && (LA329_2464 <= NOT_SYMBOL)) || LA329_2464 == NULL_SAFE_EQUAL_OPERATOR || LA329_2464 == ON_SYMBOL || LA329_2464 == OPEN_PAR_SYMBOL || ((LA329_2464 >= ORDER_SYMBOL) && (LA329_2464 <= OR_SYMBOL)) || LA329_2464 == PLUS_OPERATOR || LA329_2464 == PROCEDURE_SYMBOL || LA329_2464 == REGEXP_SYMBOL || LA329_2464 == RIGHT_SYMBOL || LA329_2464 == SEMICOLON_SYMBOL || LA329_2464 == SET_SYMBOL || ((LA329_2464 >= SHIFT_LEFT_OPERATOR) && (LA329_2464 <= SHIFT_RIGHT_OPERATOR)) || LA329_2464 == SINGLE_QUOTED_TEXT || LA329_2464 == STRAIGHT_JOIN_SYMBOL || LA329_2464 == UNION_SYMBOL || LA329_2464 == USING_SYMBOL || LA329_2464 == WHERE_SYMBOL || LA329_2464 == WITH_SYMBOL || LA329_2464 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2464;


                                            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  = 329;
                                    EXCEPTION->state        = 864;


                                    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  = 329;
                            EXCEPTION->state        = 34;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == GET_FORMAT_SYMBOL))
                {
                    {
                        int LA329_35 = LA(2);
                        if ( (LA329_35 == EOF || ((LA329_35 >= ACCOUNT_SYMBOL) && (LA329_35 <= YEAR_SYMBOL)) || LA329_35 == AND_SYMBOL || LA329_35 == AS_SYMBOL || LA329_35 == BACK_TICK_QUOTED_ID || LA329_35 == BETWEEN_SYMBOL || LA329_35 == BIN_NUMBER || LA329_35 == BITWISE_AND_OPERATOR || ((LA329_35 >= BITWISE_OR_OPERATOR) && (LA329_35 <= BITWISE_XOR_OPERATOR)) || ((LA329_35 >= CLOSE_CURLY_SYMBOL) && (LA329_35 <= COLLATE_SYMBOL)) || LA329_35 == COMMA_SYMBOL || LA329_35 == CONCAT_PIPES_SYMBOL || LA329_35 == CROSS_SYMBOL || ((LA329_35 >= DIV_OPERATOR) && (LA329_35 <= DIV_SYMBOL)) || LA329_35 == DOUBLE_QUOTED_TEXT || LA329_35 == EQUAL_OPERATOR || LA329_35 == FOR_SYMBOL || LA329_35 == FROM_SYMBOL || ((LA329_35 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_35 <= GREATER_THAN_OPERATOR)) || ((LA329_35 >= GROUP_SYMBOL) && (LA329_35 <= HAVING_SYMBOL)) || LA329_35 == HEX_NUMBER || LA329_35 == IDENTIFIER || LA329_35 == INNER_SYMBOL || LA329_35 == INTO_SYMBOL || LA329_35 == IN_SYMBOL || LA329_35 == IS_SYMBOL || ((LA329_35 >= JOIN_SYMBOL) && (LA329_35 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_35 >= LEFT_SYMBOL) && (LA329_35 <= LESS_THAN_OPERATOR)) || ((LA329_35 >= LIKE_SYMBOL) && (LA329_35 <= LIMIT_SYMBOL)) || LA329_35 == LOCK_SYMBOL || LA329_35 == LOGICAL_AND_OPERATOR || LA329_35 == LOGICAL_OR_OPERATOR || LA329_35 == MINUS_OPERATOR || ((LA329_35 >= MOD_OPERATOR) && (LA329_35 <= MOD_SYMBOL)) || ((LA329_35 >= MULT_OPERATOR) && (LA329_35 <= NATURAL_SYMBOL)) || ((LA329_35 >= NOT_EQUAL2_OPERATOR) && (LA329_35 <= NOT_SYMBOL)) || LA329_35 == NULL_SAFE_EQUAL_OPERATOR || LA329_35 == ON_SYMBOL || LA329_35 == OPEN_PAR_SYMBOL || ((LA329_35 >= ORDER_SYMBOL) && (LA329_35 <= OR_SYMBOL)) || LA329_35 == PLUS_OPERATOR || LA329_35 == PROCEDURE_SYMBOL || LA329_35 == REGEXP_SYMBOL || LA329_35 == RIGHT_SYMBOL || LA329_35 == SEMICOLON_SYMBOL || LA329_35 == SET_SYMBOL || ((LA329_35 >= SHIFT_LEFT_OPERATOR) && (LA329_35 <= SHIFT_RIGHT_OPERATOR)) || LA329_35 == SINGLE_QUOTED_TEXT || LA329_35 == STRAIGHT_JOIN_SYMBOL || LA329_35 == UNION_SYMBOL || LA329_35 == USING_SYMBOL || LA329_35 == WHERE_SYMBOL || LA329_35 == WITH_SYMBOL || LA329_35 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_35 == DOT_SYMBOL))
                        {
                            {
                                int LA329_918 = LA(3);
                                if ( (LA329_918 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_918 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2466 = LA(4);
                                        if ( (LA329_2466 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6677 = LA(5);
                                                if ( (LA329_6677 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6677 >= ACCOUNT_SYMBOL) && (LA329_6677 <= YEAR_SYMBOL)) || LA329_6677 == BACK_TICK_QUOTED_ID || LA329_6677 == DOUBLE_QUOTED_TEXT || LA329_6677 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6677;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2466 == EOF || ((LA329_2466 >= ACCOUNT_SYMBOL) && (LA329_2466 <= YEAR_SYMBOL)) || LA329_2466 == AND_SYMBOL || LA329_2466 == AS_SYMBOL || LA329_2466 == BACK_TICK_QUOTED_ID || LA329_2466 == BETWEEN_SYMBOL || LA329_2466 == BIN_NUMBER || LA329_2466 == BITWISE_AND_OPERATOR || ((LA329_2466 >= BITWISE_OR_OPERATOR) && (LA329_2466 <= BITWISE_XOR_OPERATOR)) || ((LA329_2466 >= CLOSE_CURLY_SYMBOL) && (LA329_2466 <= COLLATE_SYMBOL)) || LA329_2466 == COMMA_SYMBOL || LA329_2466 == CONCAT_PIPES_SYMBOL || LA329_2466 == CROSS_SYMBOL || ((LA329_2466 >= DIV_OPERATOR) && (LA329_2466 <= DIV_SYMBOL)) || LA329_2466 == DOUBLE_QUOTED_TEXT || LA329_2466 == EQUAL_OPERATOR || LA329_2466 == FOR_SYMBOL || LA329_2466 == FROM_SYMBOL || ((LA329_2466 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2466 <= GREATER_THAN_OPERATOR)) || ((LA329_2466 >= GROUP_SYMBOL) && (LA329_2466 <= HAVING_SYMBOL)) || LA329_2466 == HEX_NUMBER || LA329_2466 == IDENTIFIER || LA329_2466 == INNER_SYMBOL || LA329_2466 == INTO_SYMBOL || LA329_2466 == IN_SYMBOL || LA329_2466 == IS_SYMBOL || ((LA329_2466 >= JOIN_SYMBOL) && (LA329_2466 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2466 >= LEFT_SYMBOL) && (LA329_2466 <= LESS_THAN_OPERATOR)) || ((LA329_2466 >= LIKE_SYMBOL) && (LA329_2466 <= LIMIT_SYMBOL)) || LA329_2466 == LOCK_SYMBOL || LA329_2466 == LOGICAL_AND_OPERATOR || LA329_2466 == LOGICAL_OR_OPERATOR || LA329_2466 == MINUS_OPERATOR || ((LA329_2466 >= MOD_OPERATOR) && (LA329_2466 <= MOD_SYMBOL)) || ((LA329_2466 >= MULT_OPERATOR) && (LA329_2466 <= NATURAL_SYMBOL)) || ((LA329_2466 >= NOT_EQUAL2_OPERATOR) && (LA329_2466 <= NOT_SYMBOL)) || LA329_2466 == NULL_SAFE_EQUAL_OPERATOR || LA329_2466 == ON_SYMBOL || LA329_2466 == OPEN_PAR_SYMBOL || ((LA329_2466 >= ORDER_SYMBOL) && (LA329_2466 <= OR_SYMBOL)) || LA329_2466 == PLUS_OPERATOR || LA329_2466 == PROCEDURE_SYMBOL || LA329_2466 == REGEXP_SYMBOL || LA329_2466 == RIGHT_SYMBOL || LA329_2466 == SEMICOLON_SYMBOL || LA329_2466 == SET_SYMBOL || ((LA329_2466 >= SHIFT_LEFT_OPERATOR) && (LA329_2466 <= SHIFT_RIGHT_OPERATOR)) || LA329_2466 == SINGLE_QUOTED_TEXT || LA329_2466 == STRAIGHT_JOIN_SYMBOL || LA329_2466 == UNION_SYMBOL || LA329_2466 == USING_SYMBOL || LA329_2466 == WHERE_SYMBOL || LA329_2466 == WITH_SYMBOL || LA329_2466 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2466;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_918 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2467 = LA(4);
                                        if ( (LA329_2467 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6731 = LA(5);
                                                if ( (LA329_6731 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6731 >= ACCOUNT_SYMBOL) && (LA329_6731 <= YEAR_SYMBOL)) || LA329_6731 == BACK_TICK_QUOTED_ID || LA329_6731 == DOUBLE_QUOTED_TEXT || LA329_6731 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6731;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2467 == EOF || ((LA329_2467 >= ACCOUNT_SYMBOL) && (LA329_2467 <= YEAR_SYMBOL)) || LA329_2467 == AND_SYMBOL || LA329_2467 == AS_SYMBOL || LA329_2467 == BACK_TICK_QUOTED_ID || LA329_2467 == BETWEEN_SYMBOL || LA329_2467 == BIN_NUMBER || LA329_2467 == BITWISE_AND_OPERATOR || ((LA329_2467 >= BITWISE_OR_OPERATOR) && (LA329_2467 <= BITWISE_XOR_OPERATOR)) || ((LA329_2467 >= CLOSE_CURLY_SYMBOL) && (LA329_2467 <= COLLATE_SYMBOL)) || LA329_2467 == COMMA_SYMBOL || LA329_2467 == CONCAT_PIPES_SYMBOL || LA329_2467 == CROSS_SYMBOL || ((LA329_2467 >= DIV_OPERATOR) && (LA329_2467 <= DIV_SYMBOL)) || LA329_2467 == DOUBLE_QUOTED_TEXT || LA329_2467 == EQUAL_OPERATOR || LA329_2467 == FOR_SYMBOL || LA329_2467 == FROM_SYMBOL || ((LA329_2467 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2467 <= GREATER_THAN_OPERATOR)) || ((LA329_2467 >= GROUP_SYMBOL) && (LA329_2467 <= HAVING_SYMBOL)) || LA329_2467 == HEX_NUMBER || LA329_2467 == IDENTIFIER || LA329_2467 == INNER_SYMBOL || LA329_2467 == INTO_SYMBOL || LA329_2467 == IN_SYMBOL || LA329_2467 == IS_SYMBOL || ((LA329_2467 >= JOIN_SYMBOL) && (LA329_2467 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2467 >= LEFT_SYMBOL) && (LA329_2467 <= LESS_THAN_OPERATOR)) || ((LA329_2467 >= LIKE_SYMBOL) && (LA329_2467 <= LIMIT_SYMBOL)) || LA329_2467 == LOCK_SYMBOL || LA329_2467 == LOGICAL_AND_OPERATOR || LA329_2467 == LOGICAL_OR_OPERATOR || LA329_2467 == MINUS_OPERATOR || ((LA329_2467 >= MOD_OPERATOR) && (LA329_2467 <= MOD_SYMBOL)) || ((LA329_2467 >= MULT_OPERATOR) && (LA329_2467 <= NATURAL_SYMBOL)) || ((LA329_2467 >= NOT_EQUAL2_OPERATOR) && (LA329_2467 <= NOT_SYMBOL)) || LA329_2467 == NULL_SAFE_EQUAL_OPERATOR || LA329_2467 == ON_SYMBOL || LA329_2467 == OPEN_PAR_SYMBOL || ((LA329_2467 >= ORDER_SYMBOL) && (LA329_2467 <= OR_SYMBOL)) || LA329_2467 == PLUS_OPERATOR || LA329_2467 == PROCEDURE_SYMBOL || LA329_2467 == REGEXP_SYMBOL || LA329_2467 == RIGHT_SYMBOL || LA329_2467 == SEMICOLON_SYMBOL || LA329_2467 == SET_SYMBOL || ((LA329_2467 >= SHIFT_LEFT_OPERATOR) && (LA329_2467 <= SHIFT_RIGHT_OPERATOR)) || LA329_2467 == SINGLE_QUOTED_TEXT || LA329_2467 == STRAIGHT_JOIN_SYMBOL || LA329_2467 == UNION_SYMBOL || LA329_2467 == USING_SYMBOL || LA329_2467 == WHERE_SYMBOL || LA329_2467 == WITH_SYMBOL || LA329_2467 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2467;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_918 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2468 = LA(4);
                                        if ( (LA329_2468 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6785 = LA(5);
                                                if ( (LA329_6785 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6785 >= ACCOUNT_SYMBOL) && (LA329_6785 <= YEAR_SYMBOL)) || LA329_6785 == BACK_TICK_QUOTED_ID || LA329_6785 == DOUBLE_QUOTED_TEXT || LA329_6785 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6785;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2468 == EOF || ((LA329_2468 >= ACCOUNT_SYMBOL) && (LA329_2468 <= YEAR_SYMBOL)) || LA329_2468 == AND_SYMBOL || LA329_2468 == AS_SYMBOL || LA329_2468 == BACK_TICK_QUOTED_ID || LA329_2468 == BETWEEN_SYMBOL || LA329_2468 == BIN_NUMBER || LA329_2468 == BITWISE_AND_OPERATOR || ((LA329_2468 >= BITWISE_OR_OPERATOR) && (LA329_2468 <= BITWISE_XOR_OPERATOR)) || ((LA329_2468 >= CLOSE_CURLY_SYMBOL) && (LA329_2468 <= COLLATE_SYMBOL)) || LA329_2468 == COMMA_SYMBOL || LA329_2468 == CONCAT_PIPES_SYMBOL || LA329_2468 == CROSS_SYMBOL || ((LA329_2468 >= DIV_OPERATOR) && (LA329_2468 <= DIV_SYMBOL)) || LA329_2468 == DOUBLE_QUOTED_TEXT || LA329_2468 == EQUAL_OPERATOR || LA329_2468 == FOR_SYMBOL || LA329_2468 == FROM_SYMBOL || ((LA329_2468 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2468 <= GREATER_THAN_OPERATOR)) || ((LA329_2468 >= GROUP_SYMBOL) && (LA329_2468 <= HAVING_SYMBOL)) || LA329_2468 == HEX_NUMBER || LA329_2468 == IDENTIFIER || LA329_2468 == INNER_SYMBOL || LA329_2468 == INTO_SYMBOL || LA329_2468 == IN_SYMBOL || LA329_2468 == IS_SYMBOL || ((LA329_2468 >= JOIN_SYMBOL) && (LA329_2468 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2468 >= LEFT_SYMBOL) && (LA329_2468 <= LESS_THAN_OPERATOR)) || ((LA329_2468 >= LIKE_SYMBOL) && (LA329_2468 <= LIMIT_SYMBOL)) || LA329_2468 == LOCK_SYMBOL || LA329_2468 == LOGICAL_AND_OPERATOR || LA329_2468 == LOGICAL_OR_OPERATOR || LA329_2468 == MINUS_OPERATOR || ((LA329_2468 >= MOD_OPERATOR) && (LA329_2468 <= MOD_SYMBOL)) || ((LA329_2468 >= MULT_OPERATOR) && (LA329_2468 <= NATURAL_SYMBOL)) || ((LA329_2468 >= NOT_EQUAL2_OPERATOR) && (LA329_2468 <= NOT_SYMBOL)) || LA329_2468 == NULL_SAFE_EQUAL_OPERATOR || LA329_2468 == ON_SYMBOL || LA329_2468 == OPEN_PAR_SYMBOL || ((LA329_2468 >= ORDER_SYMBOL) && (LA329_2468 <= OR_SYMBOL)) || LA329_2468 == PLUS_OPERATOR || LA329_2468 == PROCEDURE_SYMBOL || LA329_2468 == REGEXP_SYMBOL || LA329_2468 == RIGHT_SYMBOL || LA329_2468 == SEMICOLON_SYMBOL || LA329_2468 == SET_SYMBOL || ((LA329_2468 >= SHIFT_LEFT_OPERATOR) && (LA329_2468 <= SHIFT_RIGHT_OPERATOR)) || LA329_2468 == SINGLE_QUOTED_TEXT || LA329_2468 == STRAIGHT_JOIN_SYMBOL || LA329_2468 == UNION_SYMBOL || LA329_2468 == USING_SYMBOL || LA329_2468 == WHERE_SYMBOL || LA329_2468 == WITH_SYMBOL || LA329_2468 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2468;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_918 >= ACTION_SYMBOL) && (LA329_918 <= SHARE_SYMBOL)) || ((LA329_918 >= SLOW_SYMBOL) && (LA329_918 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2469 = LA(4);
                                        if ( (LA329_2469 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6839 = LA(5);
                                                if ( (LA329_6839 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6839 >= ACCOUNT_SYMBOL) && (LA329_6839 <= YEAR_SYMBOL)) || LA329_6839 == BACK_TICK_QUOTED_ID || LA329_6839 == DOUBLE_QUOTED_TEXT || LA329_6839 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6839;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2469 == EOF || ((LA329_2469 >= ACCOUNT_SYMBOL) && (LA329_2469 <= YEAR_SYMBOL)) || LA329_2469 == AND_SYMBOL || LA329_2469 == AS_SYMBOL || LA329_2469 == BACK_TICK_QUOTED_ID || LA329_2469 == BETWEEN_SYMBOL || LA329_2469 == BIN_NUMBER || LA329_2469 == BITWISE_AND_OPERATOR || ((LA329_2469 >= BITWISE_OR_OPERATOR) && (LA329_2469 <= BITWISE_XOR_OPERATOR)) || ((LA329_2469 >= CLOSE_CURLY_SYMBOL) && (LA329_2469 <= COLLATE_SYMBOL)) || LA329_2469 == COMMA_SYMBOL || LA329_2469 == CONCAT_PIPES_SYMBOL || LA329_2469 == CROSS_SYMBOL || ((LA329_2469 >= DIV_OPERATOR) && (LA329_2469 <= DIV_SYMBOL)) || LA329_2469 == DOUBLE_QUOTED_TEXT || LA329_2469 == EQUAL_OPERATOR || LA329_2469 == FOR_SYMBOL || LA329_2469 == FROM_SYMBOL || ((LA329_2469 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2469 <= GREATER_THAN_OPERATOR)) || ((LA329_2469 >= GROUP_SYMBOL) && (LA329_2469 <= HAVING_SYMBOL)) || LA329_2469 == HEX_NUMBER || LA329_2469 == IDENTIFIER || LA329_2469 == INNER_SYMBOL || LA329_2469 == INTO_SYMBOL || LA329_2469 == IN_SYMBOL || LA329_2469 == IS_SYMBOL || ((LA329_2469 >= JOIN_SYMBOL) && (LA329_2469 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2469 >= LEFT_SYMBOL) && (LA329_2469 <= LESS_THAN_OPERATOR)) || ((LA329_2469 >= LIKE_SYMBOL) && (LA329_2469 <= LIMIT_SYMBOL)) || LA329_2469 == LOCK_SYMBOL || LA329_2469 == LOGICAL_AND_OPERATOR || LA329_2469 == LOGICAL_OR_OPERATOR || LA329_2469 == MINUS_OPERATOR || ((LA329_2469 >= MOD_OPERATOR) && (LA329_2469 <= MOD_SYMBOL)) || ((LA329_2469 >= MULT_OPERATOR) && (LA329_2469 <= NATURAL_SYMBOL)) || ((LA329_2469 >= NOT_EQUAL2_OPERATOR) && (LA329_2469 <= NOT_SYMBOL)) || LA329_2469 == NULL_SAFE_EQUAL_OPERATOR || LA329_2469 == ON_SYMBOL || LA329_2469 == OPEN_PAR_SYMBOL || ((LA329_2469 >= ORDER_SYMBOL) && (LA329_2469 <= OR_SYMBOL)) || LA329_2469 == PLUS_OPERATOR || LA329_2469 == PROCEDURE_SYMBOL || LA329_2469 == REGEXP_SYMBOL || LA329_2469 == RIGHT_SYMBOL || LA329_2469 == SEMICOLON_SYMBOL || LA329_2469 == SET_SYMBOL || ((LA329_2469 >= SHIFT_LEFT_OPERATOR) && (LA329_2469 <= SHIFT_RIGHT_OPERATOR)) || LA329_2469 == SINGLE_QUOTED_TEXT || LA329_2469 == STRAIGHT_JOIN_SYMBOL || LA329_2469 == UNION_SYMBOL || LA329_2469 == USING_SYMBOL || LA329_2469 == WHERE_SYMBOL || LA329_2469 == WITH_SYMBOL || LA329_2469 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2469;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_918 >= ACCOUNT_SYMBOL) && (LA329_918 <= XA_SYMBOL)) || LA329_918 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2470 = LA(4);
                                        if ( (LA329_2470 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6893 = LA(5);
                                                if ( (LA329_6893 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6893 >= ACCOUNT_SYMBOL) && (LA329_6893 <= YEAR_SYMBOL)) || LA329_6893 == BACK_TICK_QUOTED_ID || LA329_6893 == DOUBLE_QUOTED_TEXT || LA329_6893 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6893;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2470 == EOF || ((LA329_2470 >= ACCOUNT_SYMBOL) && (LA329_2470 <= YEAR_SYMBOL)) || LA329_2470 == AND_SYMBOL || LA329_2470 == AS_SYMBOL || LA329_2470 == BACK_TICK_QUOTED_ID || LA329_2470 == BETWEEN_SYMBOL || LA329_2470 == BIN_NUMBER || LA329_2470 == BITWISE_AND_OPERATOR || ((LA329_2470 >= BITWISE_OR_OPERATOR) && (LA329_2470 <= BITWISE_XOR_OPERATOR)) || ((LA329_2470 >= CLOSE_CURLY_SYMBOL) && (LA329_2470 <= COLLATE_SYMBOL)) || LA329_2470 == COMMA_SYMBOL || LA329_2470 == CONCAT_PIPES_SYMBOL || LA329_2470 == CROSS_SYMBOL || ((LA329_2470 >= DIV_OPERATOR) && (LA329_2470 <= DIV_SYMBOL)) || LA329_2470 == DOUBLE_QUOTED_TEXT || LA329_2470 == EQUAL_OPERATOR || LA329_2470 == FOR_SYMBOL || LA329_2470 == FROM_SYMBOL || ((LA329_2470 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2470 <= GREATER_THAN_OPERATOR)) || ((LA329_2470 >= GROUP_SYMBOL) && (LA329_2470 <= HAVING_SYMBOL)) || LA329_2470 == HEX_NUMBER || LA329_2470 == IDENTIFIER || LA329_2470 == INNER_SYMBOL || LA329_2470 == INTO_SYMBOL || LA329_2470 == IN_SYMBOL || LA329_2470 == IS_SYMBOL || ((LA329_2470 >= JOIN_SYMBOL) && (LA329_2470 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2470 >= LEFT_SYMBOL) && (LA329_2470 <= LESS_THAN_OPERATOR)) || ((LA329_2470 >= LIKE_SYMBOL) && (LA329_2470 <= LIMIT_SYMBOL)) || LA329_2470 == LOCK_SYMBOL || LA329_2470 == LOGICAL_AND_OPERATOR || LA329_2470 == LOGICAL_OR_OPERATOR || LA329_2470 == MINUS_OPERATOR || ((LA329_2470 >= MOD_OPERATOR) && (LA329_2470 <= MOD_SYMBOL)) || ((LA329_2470 >= MULT_OPERATOR) && (LA329_2470 <= NATURAL_SYMBOL)) || ((LA329_2470 >= NOT_EQUAL2_OPERATOR) && (LA329_2470 <= NOT_SYMBOL)) || LA329_2470 == NULL_SAFE_EQUAL_OPERATOR || LA329_2470 == ON_SYMBOL || LA329_2470 == OPEN_PAR_SYMBOL || ((LA329_2470 >= ORDER_SYMBOL) && (LA329_2470 <= OR_SYMBOL)) || LA329_2470 == PLUS_OPERATOR || LA329_2470 == PROCEDURE_SYMBOL || LA329_2470 == REGEXP_SYMBOL || LA329_2470 == RIGHT_SYMBOL || LA329_2470 == SEMICOLON_SYMBOL || LA329_2470 == SET_SYMBOL || ((LA329_2470 >= SHIFT_LEFT_OPERATOR) && (LA329_2470 <= SHIFT_RIGHT_OPERATOR)) || LA329_2470 == SINGLE_QUOTED_TEXT || LA329_2470 == STRAIGHT_JOIN_SYMBOL || LA329_2470 == UNION_SYMBOL || LA329_2470 == USING_SYMBOL || LA329_2470 == WHERE_SYMBOL || LA329_2470 == WITH_SYMBOL || LA329_2470 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2470;


                                            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  = 329;
                                    EXCEPTION->state        = 918;


                                    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  = 329;
                            EXCEPTION->state        = 35;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (((LA329_0 >= TIMESTAMP_ADD_SYMBOL) && (LA329_0 <= TIMESTAMP_DIFF_SYMBOL))))
                {
                    {
                        int LA329_40 = LA(2);
                        if ( (LA329_40 == EOF || ((LA329_40 >= ACCOUNT_SYMBOL) && (LA329_40 <= YEAR_SYMBOL)) || LA329_40 == AND_SYMBOL || LA329_40 == AS_SYMBOL || LA329_40 == BACK_TICK_QUOTED_ID || LA329_40 == BETWEEN_SYMBOL || LA329_40 == BIN_NUMBER || LA329_40 == BITWISE_AND_OPERATOR || ((LA329_40 >= BITWISE_OR_OPERATOR) && (LA329_40 <= BITWISE_XOR_OPERATOR)) || ((LA329_40 >= CLOSE_CURLY_SYMBOL) && (LA329_40 <= COLLATE_SYMBOL)) || LA329_40 == COMMA_SYMBOL || LA329_40 == CONCAT_PIPES_SYMBOL || LA329_40 == CROSS_SYMBOL || ((LA329_40 >= DIV_OPERATOR) && (LA329_40 <= DIV_SYMBOL)) || LA329_40 == DOUBLE_QUOTED_TEXT || LA329_40 == EQUAL_OPERATOR || LA329_40 == FOR_SYMBOL || LA329_40 == FROM_SYMBOL || ((LA329_40 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_40 <= GREATER_THAN_OPERATOR)) || ((LA329_40 >= GROUP_SYMBOL) && (LA329_40 <= HAVING_SYMBOL)) || LA329_40 == HEX_NUMBER || LA329_40 == IDENTIFIER || LA329_40 == INNER_SYMBOL || LA329_40 == INTO_SYMBOL || LA329_40 == IN_SYMBOL || LA329_40 == IS_SYMBOL || ((LA329_40 >= JOIN_SYMBOL) && (LA329_40 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_40 >= LEFT_SYMBOL) && (LA329_40 <= LESS_THAN_OPERATOR)) || ((LA329_40 >= LIKE_SYMBOL) && (LA329_40 <= LIMIT_SYMBOL)) || LA329_40 == LOCK_SYMBOL || LA329_40 == LOGICAL_AND_OPERATOR || LA329_40 == LOGICAL_OR_OPERATOR || LA329_40 == MINUS_OPERATOR || ((LA329_40 >= MOD_OPERATOR) && (LA329_40 <= MOD_SYMBOL)) || ((LA329_40 >= MULT_OPERATOR) && (LA329_40 <= NATURAL_SYMBOL)) || ((LA329_40 >= NOT_EQUAL2_OPERATOR) && (LA329_40 <= NOT_SYMBOL)) || LA329_40 == NULL_SAFE_EQUAL_OPERATOR || LA329_40 == ON_SYMBOL || LA329_40 == OPEN_PAR_SYMBOL || ((LA329_40 >= ORDER_SYMBOL) && (LA329_40 <= OR_SYMBOL)) || LA329_40 == PLUS_OPERATOR || LA329_40 == PROCEDURE_SYMBOL || LA329_40 == REGEXP_SYMBOL || LA329_40 == RIGHT_SYMBOL || LA329_40 == SEMICOLON_SYMBOL || LA329_40 == SET_SYMBOL || ((LA329_40 >= SHIFT_LEFT_OPERATOR) && (LA329_40 <= SHIFT_RIGHT_OPERATOR)) || LA329_40 == SINGLE_QUOTED_TEXT || LA329_40 == STRAIGHT_JOIN_SYMBOL || LA329_40 == UNION_SYMBOL || LA329_40 == USING_SYMBOL || LA329_40 == WHERE_SYMBOL || LA329_40 == WITH_SYMBOL || LA329_40 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_40 == DOT_SYMBOL))
                        {
                            {
                                int LA329_972 = LA(3);
                                if ( (LA329_972 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_972 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2472 = LA(4);
                                        if ( (LA329_2472 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_6947 = LA(5);
                                                if ( (LA329_6947 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_6947 >= ACCOUNT_SYMBOL) && (LA329_6947 <= YEAR_SYMBOL)) || LA329_6947 == BACK_TICK_QUOTED_ID || LA329_6947 == DOUBLE_QUOTED_TEXT || LA329_6947 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 6947;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2472 == EOF || ((LA329_2472 >= ACCOUNT_SYMBOL) && (LA329_2472 <= YEAR_SYMBOL)) || LA329_2472 == AND_SYMBOL || LA329_2472 == AS_SYMBOL || LA329_2472 == BACK_TICK_QUOTED_ID || LA329_2472 == BETWEEN_SYMBOL || LA329_2472 == BIN_NUMBER || LA329_2472 == BITWISE_AND_OPERATOR || ((LA329_2472 >= BITWISE_OR_OPERATOR) && (LA329_2472 <= BITWISE_XOR_OPERATOR)) || ((LA329_2472 >= CLOSE_CURLY_SYMBOL) && (LA329_2472 <= COLLATE_SYMBOL)) || LA329_2472 == COMMA_SYMBOL || LA329_2472 == CONCAT_PIPES_SYMBOL || LA329_2472 == CROSS_SYMBOL || ((LA329_2472 >= DIV_OPERATOR) && (LA329_2472 <= DIV_SYMBOL)) || LA329_2472 == DOUBLE_QUOTED_TEXT || LA329_2472 == EQUAL_OPERATOR || LA329_2472 == FOR_SYMBOL || LA329_2472 == FROM_SYMBOL || ((LA329_2472 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2472 <= GREATER_THAN_OPERATOR)) || ((LA329_2472 >= GROUP_SYMBOL) && (LA329_2472 <= HAVING_SYMBOL)) || LA329_2472 == HEX_NUMBER || LA329_2472 == IDENTIFIER || LA329_2472 == INNER_SYMBOL || LA329_2472 == INTO_SYMBOL || LA329_2472 == IN_SYMBOL || LA329_2472 == IS_SYMBOL || ((LA329_2472 >= JOIN_SYMBOL) && (LA329_2472 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2472 >= LEFT_SYMBOL) && (LA329_2472 <= LESS_THAN_OPERATOR)) || ((LA329_2472 >= LIKE_SYMBOL) && (LA329_2472 <= LIMIT_SYMBOL)) || LA329_2472 == LOCK_SYMBOL || LA329_2472 == LOGICAL_AND_OPERATOR || LA329_2472 == LOGICAL_OR_OPERATOR || LA329_2472 == MINUS_OPERATOR || ((LA329_2472 >= MOD_OPERATOR) && (LA329_2472 <= MOD_SYMBOL)) || ((LA329_2472 >= MULT_OPERATOR) && (LA329_2472 <= NATURAL_SYMBOL)) || ((LA329_2472 >= NOT_EQUAL2_OPERATOR) && (LA329_2472 <= NOT_SYMBOL)) || LA329_2472 == NULL_SAFE_EQUAL_OPERATOR || LA329_2472 == ON_SYMBOL || LA329_2472 == OPEN_PAR_SYMBOL || ((LA329_2472 >= ORDER_SYMBOL) && (LA329_2472 <= OR_SYMBOL)) || LA329_2472 == PLUS_OPERATOR || LA329_2472 == PROCEDURE_SYMBOL || LA329_2472 == REGEXP_SYMBOL || LA329_2472 == RIGHT_SYMBOL || LA329_2472 == SEMICOLON_SYMBOL || LA329_2472 == SET_SYMBOL || ((LA329_2472 >= SHIFT_LEFT_OPERATOR) && (LA329_2472 <= SHIFT_RIGHT_OPERATOR)) || LA329_2472 == SINGLE_QUOTED_TEXT || LA329_2472 == STRAIGHT_JOIN_SYMBOL || LA329_2472 == UNION_SYMBOL || LA329_2472 == USING_SYMBOL || LA329_2472 == WHERE_SYMBOL || LA329_2472 == WITH_SYMBOL || LA329_2472 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2472;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_972 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2473 = LA(4);
                                        if ( (LA329_2473 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7001 = LA(5);
                                                if ( (LA329_7001 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7001 >= ACCOUNT_SYMBOL) && (LA329_7001 <= YEAR_SYMBOL)) || LA329_7001 == BACK_TICK_QUOTED_ID || LA329_7001 == DOUBLE_QUOTED_TEXT || LA329_7001 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7001;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2473 == EOF || ((LA329_2473 >= ACCOUNT_SYMBOL) && (LA329_2473 <= YEAR_SYMBOL)) || LA329_2473 == AND_SYMBOL || LA329_2473 == AS_SYMBOL || LA329_2473 == BACK_TICK_QUOTED_ID || LA329_2473 == BETWEEN_SYMBOL || LA329_2473 == BIN_NUMBER || LA329_2473 == BITWISE_AND_OPERATOR || ((LA329_2473 >= BITWISE_OR_OPERATOR) && (LA329_2473 <= BITWISE_XOR_OPERATOR)) || ((LA329_2473 >= CLOSE_CURLY_SYMBOL) && (LA329_2473 <= COLLATE_SYMBOL)) || LA329_2473 == COMMA_SYMBOL || LA329_2473 == CONCAT_PIPES_SYMBOL || LA329_2473 == CROSS_SYMBOL || ((LA329_2473 >= DIV_OPERATOR) && (LA329_2473 <= DIV_SYMBOL)) || LA329_2473 == DOUBLE_QUOTED_TEXT || LA329_2473 == EQUAL_OPERATOR || LA329_2473 == FOR_SYMBOL || LA329_2473 == FROM_SYMBOL || ((LA329_2473 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2473 <= GREATER_THAN_OPERATOR)) || ((LA329_2473 >= GROUP_SYMBOL) && (LA329_2473 <= HAVING_SYMBOL)) || LA329_2473 == HEX_NUMBER || LA329_2473 == IDENTIFIER || LA329_2473 == INNER_SYMBOL || LA329_2473 == INTO_SYMBOL || LA329_2473 == IN_SYMBOL || LA329_2473 == IS_SYMBOL || ((LA329_2473 >= JOIN_SYMBOL) && (LA329_2473 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2473 >= LEFT_SYMBOL) && (LA329_2473 <= LESS_THAN_OPERATOR)) || ((LA329_2473 >= LIKE_SYMBOL) && (LA329_2473 <= LIMIT_SYMBOL)) || LA329_2473 == LOCK_SYMBOL || LA329_2473 == LOGICAL_AND_OPERATOR || LA329_2473 == LOGICAL_OR_OPERATOR || LA329_2473 == MINUS_OPERATOR || ((LA329_2473 >= MOD_OPERATOR) && (LA329_2473 <= MOD_SYMBOL)) || ((LA329_2473 >= MULT_OPERATOR) && (LA329_2473 <= NATURAL_SYMBOL)) || ((LA329_2473 >= NOT_EQUAL2_OPERATOR) && (LA329_2473 <= NOT_SYMBOL)) || LA329_2473 == NULL_SAFE_EQUAL_OPERATOR || LA329_2473 == ON_SYMBOL || LA329_2473 == OPEN_PAR_SYMBOL || ((LA329_2473 >= ORDER_SYMBOL) && (LA329_2473 <= OR_SYMBOL)) || LA329_2473 == PLUS_OPERATOR || LA329_2473 == PROCEDURE_SYMBOL || LA329_2473 == REGEXP_SYMBOL || LA329_2473 == RIGHT_SYMBOL || LA329_2473 == SEMICOLON_SYMBOL || LA329_2473 == SET_SYMBOL || ((LA329_2473 >= SHIFT_LEFT_OPERATOR) && (LA329_2473 <= SHIFT_RIGHT_OPERATOR)) || LA329_2473 == SINGLE_QUOTED_TEXT || LA329_2473 == STRAIGHT_JOIN_SYMBOL || LA329_2473 == UNION_SYMBOL || LA329_2473 == USING_SYMBOL || LA329_2473 == WHERE_SYMBOL || LA329_2473 == WITH_SYMBOL || LA329_2473 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2473;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_972 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2474 = LA(4);
                                        if ( (LA329_2474 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7055 = LA(5);
                                                if ( (LA329_7055 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7055 >= ACCOUNT_SYMBOL) && (LA329_7055 <= YEAR_SYMBOL)) || LA329_7055 == BACK_TICK_QUOTED_ID || LA329_7055 == DOUBLE_QUOTED_TEXT || LA329_7055 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7055;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2474 == EOF || ((LA329_2474 >= ACCOUNT_SYMBOL) && (LA329_2474 <= YEAR_SYMBOL)) || LA329_2474 == AND_SYMBOL || LA329_2474 == AS_SYMBOL || LA329_2474 == BACK_TICK_QUOTED_ID || LA329_2474 == BETWEEN_SYMBOL || LA329_2474 == BIN_NUMBER || LA329_2474 == BITWISE_AND_OPERATOR || ((LA329_2474 >= BITWISE_OR_OPERATOR) && (LA329_2474 <= BITWISE_XOR_OPERATOR)) || ((LA329_2474 >= CLOSE_CURLY_SYMBOL) && (LA329_2474 <= COLLATE_SYMBOL)) || LA329_2474 == COMMA_SYMBOL || LA329_2474 == CONCAT_PIPES_SYMBOL || LA329_2474 == CROSS_SYMBOL || ((LA329_2474 >= DIV_OPERATOR) && (LA329_2474 <= DIV_SYMBOL)) || LA329_2474 == DOUBLE_QUOTED_TEXT || LA329_2474 == EQUAL_OPERATOR || LA329_2474 == FOR_SYMBOL || LA329_2474 == FROM_SYMBOL || ((LA329_2474 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2474 <= GREATER_THAN_OPERATOR)) || ((LA329_2474 >= GROUP_SYMBOL) && (LA329_2474 <= HAVING_SYMBOL)) || LA329_2474 == HEX_NUMBER || LA329_2474 == IDENTIFIER || LA329_2474 == INNER_SYMBOL || LA329_2474 == INTO_SYMBOL || LA329_2474 == IN_SYMBOL || LA329_2474 == IS_SYMBOL || ((LA329_2474 >= JOIN_SYMBOL) && (LA329_2474 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2474 >= LEFT_SYMBOL) && (LA329_2474 <= LESS_THAN_OPERATOR)) || ((LA329_2474 >= LIKE_SYMBOL) && (LA329_2474 <= LIMIT_SYMBOL)) || LA329_2474 == LOCK_SYMBOL || LA329_2474 == LOGICAL_AND_OPERATOR || LA329_2474 == LOGICAL_OR_OPERATOR || LA329_2474 == MINUS_OPERATOR || ((LA329_2474 >= MOD_OPERATOR) && (LA329_2474 <= MOD_SYMBOL)) || ((LA329_2474 >= MULT_OPERATOR) && (LA329_2474 <= NATURAL_SYMBOL)) || ((LA329_2474 >= NOT_EQUAL2_OPERATOR) && (LA329_2474 <= NOT_SYMBOL)) || LA329_2474 == NULL_SAFE_EQUAL_OPERATOR || LA329_2474 == ON_SYMBOL || LA329_2474 == OPEN_PAR_SYMBOL || ((LA329_2474 >= ORDER_SYMBOL) && (LA329_2474 <= OR_SYMBOL)) || LA329_2474 == PLUS_OPERATOR || LA329_2474 == PROCEDURE_SYMBOL || LA329_2474 == REGEXP_SYMBOL || LA329_2474 == RIGHT_SYMBOL || LA329_2474 == SEMICOLON_SYMBOL || LA329_2474 == SET_SYMBOL || ((LA329_2474 >= SHIFT_LEFT_OPERATOR) && (LA329_2474 <= SHIFT_RIGHT_OPERATOR)) || LA329_2474 == SINGLE_QUOTED_TEXT || LA329_2474 == STRAIGHT_JOIN_SYMBOL || LA329_2474 == UNION_SYMBOL || LA329_2474 == USING_SYMBOL || LA329_2474 == WHERE_SYMBOL || LA329_2474 == WITH_SYMBOL || LA329_2474 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2474;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_972 >= ACTION_SYMBOL) && (LA329_972 <= SHARE_SYMBOL)) || ((LA329_972 >= SLOW_SYMBOL) && (LA329_972 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2475 = LA(4);
                                        if ( (LA329_2475 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7109 = LA(5);
                                                if ( (LA329_7109 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7109 >= ACCOUNT_SYMBOL) && (LA329_7109 <= YEAR_SYMBOL)) || LA329_7109 == BACK_TICK_QUOTED_ID || LA329_7109 == DOUBLE_QUOTED_TEXT || LA329_7109 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7109;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2475 == EOF || ((LA329_2475 >= ACCOUNT_SYMBOL) && (LA329_2475 <= YEAR_SYMBOL)) || LA329_2475 == AND_SYMBOL || LA329_2475 == AS_SYMBOL || LA329_2475 == BACK_TICK_QUOTED_ID || LA329_2475 == BETWEEN_SYMBOL || LA329_2475 == BIN_NUMBER || LA329_2475 == BITWISE_AND_OPERATOR || ((LA329_2475 >= BITWISE_OR_OPERATOR) && (LA329_2475 <= BITWISE_XOR_OPERATOR)) || ((LA329_2475 >= CLOSE_CURLY_SYMBOL) && (LA329_2475 <= COLLATE_SYMBOL)) || LA329_2475 == COMMA_SYMBOL || LA329_2475 == CONCAT_PIPES_SYMBOL || LA329_2475 == CROSS_SYMBOL || ((LA329_2475 >= DIV_OPERATOR) && (LA329_2475 <= DIV_SYMBOL)) || LA329_2475 == DOUBLE_QUOTED_TEXT || LA329_2475 == EQUAL_OPERATOR || LA329_2475 == FOR_SYMBOL || LA329_2475 == FROM_SYMBOL || ((LA329_2475 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2475 <= GREATER_THAN_OPERATOR)) || ((LA329_2475 >= GROUP_SYMBOL) && (LA329_2475 <= HAVING_SYMBOL)) || LA329_2475 == HEX_NUMBER || LA329_2475 == IDENTIFIER || LA329_2475 == INNER_SYMBOL || LA329_2475 == INTO_SYMBOL || LA329_2475 == IN_SYMBOL || LA329_2475 == IS_SYMBOL || ((LA329_2475 >= JOIN_SYMBOL) && (LA329_2475 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2475 >= LEFT_SYMBOL) && (LA329_2475 <= LESS_THAN_OPERATOR)) || ((LA329_2475 >= LIKE_SYMBOL) && (LA329_2475 <= LIMIT_SYMBOL)) || LA329_2475 == LOCK_SYMBOL || LA329_2475 == LOGICAL_AND_OPERATOR || LA329_2475 == LOGICAL_OR_OPERATOR || LA329_2475 == MINUS_OPERATOR || ((LA329_2475 >= MOD_OPERATOR) && (LA329_2475 <= MOD_SYMBOL)) || ((LA329_2475 >= MULT_OPERATOR) && (LA329_2475 <= NATURAL_SYMBOL)) || ((LA329_2475 >= NOT_EQUAL2_OPERATOR) && (LA329_2475 <= NOT_SYMBOL)) || LA329_2475 == NULL_SAFE_EQUAL_OPERATOR || LA329_2475 == ON_SYMBOL || LA329_2475 == OPEN_PAR_SYMBOL || ((LA329_2475 >= ORDER_SYMBOL) && (LA329_2475 <= OR_SYMBOL)) || LA329_2475 == PLUS_OPERATOR || LA329_2475 == PROCEDURE_SYMBOL || LA329_2475 == REGEXP_SYMBOL || LA329_2475 == RIGHT_SYMBOL || LA329_2475 == SEMICOLON_SYMBOL || LA329_2475 == SET_SYMBOL || ((LA329_2475 >= SHIFT_LEFT_OPERATOR) && (LA329_2475 <= SHIFT_RIGHT_OPERATOR)) || LA329_2475 == SINGLE_QUOTED_TEXT || LA329_2475 == STRAIGHT_JOIN_SYMBOL || LA329_2475 == UNION_SYMBOL || LA329_2475 == USING_SYMBOL || LA329_2475 == WHERE_SYMBOL || LA329_2475 == WITH_SYMBOL || LA329_2475 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2475;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_972 >= ACCOUNT_SYMBOL) && (LA329_972 <= XA_SYMBOL)) || LA329_972 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2476 = LA(4);
                                        if ( (LA329_2476 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7163 = LA(5);
                                                if ( (LA329_7163 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7163 >= ACCOUNT_SYMBOL) && (LA329_7163 <= YEAR_SYMBOL)) || LA329_7163 == BACK_TICK_QUOTED_ID || LA329_7163 == DOUBLE_QUOTED_TEXT || LA329_7163 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7163;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2476 == EOF || ((LA329_2476 >= ACCOUNT_SYMBOL) && (LA329_2476 <= YEAR_SYMBOL)) || LA329_2476 == AND_SYMBOL || LA329_2476 == AS_SYMBOL || LA329_2476 == BACK_TICK_QUOTED_ID || LA329_2476 == BETWEEN_SYMBOL || LA329_2476 == BIN_NUMBER || LA329_2476 == BITWISE_AND_OPERATOR || ((LA329_2476 >= BITWISE_OR_OPERATOR) && (LA329_2476 <= BITWISE_XOR_OPERATOR)) || ((LA329_2476 >= CLOSE_CURLY_SYMBOL) && (LA329_2476 <= COLLATE_SYMBOL)) || LA329_2476 == COMMA_SYMBOL || LA329_2476 == CONCAT_PIPES_SYMBOL || LA329_2476 == CROSS_SYMBOL || ((LA329_2476 >= DIV_OPERATOR) && (LA329_2476 <= DIV_SYMBOL)) || LA329_2476 == DOUBLE_QUOTED_TEXT || LA329_2476 == EQUAL_OPERATOR || LA329_2476 == FOR_SYMBOL || LA329_2476 == FROM_SYMBOL || ((LA329_2476 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2476 <= GREATER_THAN_OPERATOR)) || ((LA329_2476 >= GROUP_SYMBOL) && (LA329_2476 <= HAVING_SYMBOL)) || LA329_2476 == HEX_NUMBER || LA329_2476 == IDENTIFIER || LA329_2476 == INNER_SYMBOL || LA329_2476 == INTO_SYMBOL || LA329_2476 == IN_SYMBOL || LA329_2476 == IS_SYMBOL || ((LA329_2476 >= JOIN_SYMBOL) && (LA329_2476 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2476 >= LEFT_SYMBOL) && (LA329_2476 <= LESS_THAN_OPERATOR)) || ((LA329_2476 >= LIKE_SYMBOL) && (LA329_2476 <= LIMIT_SYMBOL)) || LA329_2476 == LOCK_SYMBOL || LA329_2476 == LOGICAL_AND_OPERATOR || LA329_2476 == LOGICAL_OR_OPERATOR || LA329_2476 == MINUS_OPERATOR || ((LA329_2476 >= MOD_OPERATOR) && (LA329_2476 <= MOD_SYMBOL)) || ((LA329_2476 >= MULT_OPERATOR) && (LA329_2476 <= NATURAL_SYMBOL)) || ((LA329_2476 >= NOT_EQUAL2_OPERATOR) && (LA329_2476 <= NOT_SYMBOL)) || LA329_2476 == NULL_SAFE_EQUAL_OPERATOR || LA329_2476 == ON_SYMBOL || LA329_2476 == OPEN_PAR_SYMBOL || ((LA329_2476 >= ORDER_SYMBOL) && (LA329_2476 <= OR_SYMBOL)) || LA329_2476 == PLUS_OPERATOR || LA329_2476 == PROCEDURE_SYMBOL || LA329_2476 == REGEXP_SYMBOL || LA329_2476 == RIGHT_SYMBOL || LA329_2476 == SEMICOLON_SYMBOL || LA329_2476 == SET_SYMBOL || ((LA329_2476 >= SHIFT_LEFT_OPERATOR) && (LA329_2476 <= SHIFT_RIGHT_OPERATOR)) || LA329_2476 == SINGLE_QUOTED_TEXT || LA329_2476 == STRAIGHT_JOIN_SYMBOL || LA329_2476 == UNION_SYMBOL || LA329_2476 == USING_SYMBOL || LA329_2476 == WHERE_SYMBOL || LA329_2476 == WITH_SYMBOL || LA329_2476 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2476;


                                            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  = 329;
                                    EXCEPTION->state        = 972;


                                    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  = 329;
                            EXCEPTION->state        = 40;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == COALESCE_SYMBOL))
                {
                    {
                        int LA329_45 = LA(2);
                        if ( (LA329_45 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1025 = LA(3);
                                if ( (LA329_1025 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1025 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2478 = LA(4);
                                        if ( (LA329_2478 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7217 = LA(5);
                                                if ( (LA329_7217 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7217 >= ACCOUNT_SYMBOL) && (LA329_7217 <= YEAR_SYMBOL)) || LA329_7217 == BACK_TICK_QUOTED_ID || LA329_7217 == DOUBLE_QUOTED_TEXT || LA329_7217 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7217;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2478 == EOF || ((LA329_2478 >= ACCOUNT_SYMBOL) && (LA329_2478 <= YEAR_SYMBOL)) || LA329_2478 == AND_SYMBOL || LA329_2478 == AS_SYMBOL || LA329_2478 == BACK_TICK_QUOTED_ID || LA329_2478 == BETWEEN_SYMBOL || LA329_2478 == BIN_NUMBER || LA329_2478 == BITWISE_AND_OPERATOR || ((LA329_2478 >= BITWISE_OR_OPERATOR) && (LA329_2478 <= BITWISE_XOR_OPERATOR)) || ((LA329_2478 >= CLOSE_CURLY_SYMBOL) && (LA329_2478 <= COLLATE_SYMBOL)) || LA329_2478 == COMMA_SYMBOL || LA329_2478 == CONCAT_PIPES_SYMBOL || LA329_2478 == CROSS_SYMBOL || ((LA329_2478 >= DIV_OPERATOR) && (LA329_2478 <= DIV_SYMBOL)) || LA329_2478 == DOUBLE_QUOTED_TEXT || LA329_2478 == EQUAL_OPERATOR || LA329_2478 == FOR_SYMBOL || LA329_2478 == FROM_SYMBOL || ((LA329_2478 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2478 <= GREATER_THAN_OPERATOR)) || ((LA329_2478 >= GROUP_SYMBOL) && (LA329_2478 <= HAVING_SYMBOL)) || LA329_2478 == HEX_NUMBER || LA329_2478 == IDENTIFIER || LA329_2478 == INNER_SYMBOL || LA329_2478 == INTO_SYMBOL || LA329_2478 == IN_SYMBOL || LA329_2478 == IS_SYMBOL || ((LA329_2478 >= JOIN_SYMBOL) && (LA329_2478 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2478 >= LEFT_SYMBOL) && (LA329_2478 <= LESS_THAN_OPERATOR)) || ((LA329_2478 >= LIKE_SYMBOL) && (LA329_2478 <= LIMIT_SYMBOL)) || LA329_2478 == LOCK_SYMBOL || LA329_2478 == LOGICAL_AND_OPERATOR || LA329_2478 == LOGICAL_OR_OPERATOR || LA329_2478 == MINUS_OPERATOR || ((LA329_2478 >= MOD_OPERATOR) && (LA329_2478 <= MOD_SYMBOL)) || ((LA329_2478 >= MULT_OPERATOR) && (LA329_2478 <= NATURAL_SYMBOL)) || ((LA329_2478 >= NOT_EQUAL2_OPERATOR) && (LA329_2478 <= NOT_SYMBOL)) || LA329_2478 == NULL_SAFE_EQUAL_OPERATOR || LA329_2478 == ON_SYMBOL || LA329_2478 == OPEN_PAR_SYMBOL || ((LA329_2478 >= ORDER_SYMBOL) && (LA329_2478 <= OR_SYMBOL)) || LA329_2478 == PLUS_OPERATOR || LA329_2478 == PROCEDURE_SYMBOL || LA329_2478 == REGEXP_SYMBOL || LA329_2478 == RIGHT_SYMBOL || LA329_2478 == SEMICOLON_SYMBOL || LA329_2478 == SET_SYMBOL || ((LA329_2478 >= SHIFT_LEFT_OPERATOR) && (LA329_2478 <= SHIFT_RIGHT_OPERATOR)) || LA329_2478 == SINGLE_QUOTED_TEXT || LA329_2478 == STRAIGHT_JOIN_SYMBOL || LA329_2478 == UNION_SYMBOL || LA329_2478 == USING_SYMBOL || LA329_2478 == WHERE_SYMBOL || LA329_2478 == WITH_SYMBOL || LA329_2478 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2478;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1025 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2479 = LA(4);
                                        if ( (LA329_2479 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7271 = LA(5);
                                                if ( (LA329_7271 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7271 >= ACCOUNT_SYMBOL) && (LA329_7271 <= YEAR_SYMBOL)) || LA329_7271 == BACK_TICK_QUOTED_ID || LA329_7271 == DOUBLE_QUOTED_TEXT || LA329_7271 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7271;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2479 == EOF || ((LA329_2479 >= ACCOUNT_SYMBOL) && (LA329_2479 <= YEAR_SYMBOL)) || LA329_2479 == AND_SYMBOL || LA329_2479 == AS_SYMBOL || LA329_2479 == BACK_TICK_QUOTED_ID || LA329_2479 == BETWEEN_SYMBOL || LA329_2479 == BIN_NUMBER || LA329_2479 == BITWISE_AND_OPERATOR || ((LA329_2479 >= BITWISE_OR_OPERATOR) && (LA329_2479 <= BITWISE_XOR_OPERATOR)) || ((LA329_2479 >= CLOSE_CURLY_SYMBOL) && (LA329_2479 <= COLLATE_SYMBOL)) || LA329_2479 == COMMA_SYMBOL || LA329_2479 == CONCAT_PIPES_SYMBOL || LA329_2479 == CROSS_SYMBOL || ((LA329_2479 >= DIV_OPERATOR) && (LA329_2479 <= DIV_SYMBOL)) || LA329_2479 == DOUBLE_QUOTED_TEXT || LA329_2479 == EQUAL_OPERATOR || LA329_2479 == FOR_SYMBOL || LA329_2479 == FROM_SYMBOL || ((LA329_2479 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2479 <= GREATER_THAN_OPERATOR)) || ((LA329_2479 >= GROUP_SYMBOL) && (LA329_2479 <= HAVING_SYMBOL)) || LA329_2479 == HEX_NUMBER || LA329_2479 == IDENTIFIER || LA329_2479 == INNER_SYMBOL || LA329_2479 == INTO_SYMBOL || LA329_2479 == IN_SYMBOL || LA329_2479 == IS_SYMBOL || ((LA329_2479 >= JOIN_SYMBOL) && (LA329_2479 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2479 >= LEFT_SYMBOL) && (LA329_2479 <= LESS_THAN_OPERATOR)) || ((LA329_2479 >= LIKE_SYMBOL) && (LA329_2479 <= LIMIT_SYMBOL)) || LA329_2479 == LOCK_SYMBOL || LA329_2479 == LOGICAL_AND_OPERATOR || LA329_2479 == LOGICAL_OR_OPERATOR || LA329_2479 == MINUS_OPERATOR || ((LA329_2479 >= MOD_OPERATOR) && (LA329_2479 <= MOD_SYMBOL)) || ((LA329_2479 >= MULT_OPERATOR) && (LA329_2479 <= NATURAL_SYMBOL)) || ((LA329_2479 >= NOT_EQUAL2_OPERATOR) && (LA329_2479 <= NOT_SYMBOL)) || LA329_2479 == NULL_SAFE_EQUAL_OPERATOR || LA329_2479 == ON_SYMBOL || LA329_2479 == OPEN_PAR_SYMBOL || ((LA329_2479 >= ORDER_SYMBOL) && (LA329_2479 <= OR_SYMBOL)) || LA329_2479 == PLUS_OPERATOR || LA329_2479 == PROCEDURE_SYMBOL || LA329_2479 == REGEXP_SYMBOL || LA329_2479 == RIGHT_SYMBOL || LA329_2479 == SEMICOLON_SYMBOL || LA329_2479 == SET_SYMBOL || ((LA329_2479 >= SHIFT_LEFT_OPERATOR) && (LA329_2479 <= SHIFT_RIGHT_OPERATOR)) || LA329_2479 == SINGLE_QUOTED_TEXT || LA329_2479 == STRAIGHT_JOIN_SYMBOL || LA329_2479 == UNION_SYMBOL || LA329_2479 == USING_SYMBOL || LA329_2479 == WHERE_SYMBOL || LA329_2479 == WITH_SYMBOL || LA329_2479 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2479;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1025 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2480 = LA(4);
                                        if ( (LA329_2480 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7325 = LA(5);
                                                if ( (LA329_7325 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7325 >= ACCOUNT_SYMBOL) && (LA329_7325 <= YEAR_SYMBOL)) || LA329_7325 == BACK_TICK_QUOTED_ID || LA329_7325 == DOUBLE_QUOTED_TEXT || LA329_7325 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7325;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2480 == EOF || ((LA329_2480 >= ACCOUNT_SYMBOL) && (LA329_2480 <= YEAR_SYMBOL)) || LA329_2480 == AND_SYMBOL || LA329_2480 == AS_SYMBOL || LA329_2480 == BACK_TICK_QUOTED_ID || LA329_2480 == BETWEEN_SYMBOL || LA329_2480 == BIN_NUMBER || LA329_2480 == BITWISE_AND_OPERATOR || ((LA329_2480 >= BITWISE_OR_OPERATOR) && (LA329_2480 <= BITWISE_XOR_OPERATOR)) || ((LA329_2480 >= CLOSE_CURLY_SYMBOL) && (LA329_2480 <= COLLATE_SYMBOL)) || LA329_2480 == COMMA_SYMBOL || LA329_2480 == CONCAT_PIPES_SYMBOL || LA329_2480 == CROSS_SYMBOL || ((LA329_2480 >= DIV_OPERATOR) && (LA329_2480 <= DIV_SYMBOL)) || LA329_2480 == DOUBLE_QUOTED_TEXT || LA329_2480 == EQUAL_OPERATOR || LA329_2480 == FOR_SYMBOL || LA329_2480 == FROM_SYMBOL || ((LA329_2480 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2480 <= GREATER_THAN_OPERATOR)) || ((LA329_2480 >= GROUP_SYMBOL) && (LA329_2480 <= HAVING_SYMBOL)) || LA329_2480 == HEX_NUMBER || LA329_2480 == IDENTIFIER || LA329_2480 == INNER_SYMBOL || LA329_2480 == INTO_SYMBOL || LA329_2480 == IN_SYMBOL || LA329_2480 == IS_SYMBOL || ((LA329_2480 >= JOIN_SYMBOL) && (LA329_2480 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2480 >= LEFT_SYMBOL) && (LA329_2480 <= LESS_THAN_OPERATOR)) || ((LA329_2480 >= LIKE_SYMBOL) && (LA329_2480 <= LIMIT_SYMBOL)) || LA329_2480 == LOCK_SYMBOL || LA329_2480 == LOGICAL_AND_OPERATOR || LA329_2480 == LOGICAL_OR_OPERATOR || LA329_2480 == MINUS_OPERATOR || ((LA329_2480 >= MOD_OPERATOR) && (LA329_2480 <= MOD_SYMBOL)) || ((LA329_2480 >= MULT_OPERATOR) && (LA329_2480 <= NATURAL_SYMBOL)) || ((LA329_2480 >= NOT_EQUAL2_OPERATOR) && (LA329_2480 <= NOT_SYMBOL)) || LA329_2480 == NULL_SAFE_EQUAL_OPERATOR || LA329_2480 == ON_SYMBOL || LA329_2480 == OPEN_PAR_SYMBOL || ((LA329_2480 >= ORDER_SYMBOL) && (LA329_2480 <= OR_SYMBOL)) || LA329_2480 == PLUS_OPERATOR || LA329_2480 == PROCEDURE_SYMBOL || LA329_2480 == REGEXP_SYMBOL || LA329_2480 == RIGHT_SYMBOL || LA329_2480 == SEMICOLON_SYMBOL || LA329_2480 == SET_SYMBOL || ((LA329_2480 >= SHIFT_LEFT_OPERATOR) && (LA329_2480 <= SHIFT_RIGHT_OPERATOR)) || LA329_2480 == SINGLE_QUOTED_TEXT || LA329_2480 == STRAIGHT_JOIN_SYMBOL || LA329_2480 == UNION_SYMBOL || LA329_2480 == USING_SYMBOL || LA329_2480 == WHERE_SYMBOL || LA329_2480 == WITH_SYMBOL || LA329_2480 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2480;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1025 >= ACTION_SYMBOL) && (LA329_1025 <= SHARE_SYMBOL)) || ((LA329_1025 >= SLOW_SYMBOL) && (LA329_1025 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2481 = LA(4);
                                        if ( (LA329_2481 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7379 = LA(5);
                                                if ( (LA329_7379 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7379 >= ACCOUNT_SYMBOL) && (LA329_7379 <= YEAR_SYMBOL)) || LA329_7379 == BACK_TICK_QUOTED_ID || LA329_7379 == DOUBLE_QUOTED_TEXT || LA329_7379 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7379;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2481 == EOF || ((LA329_2481 >= ACCOUNT_SYMBOL) && (LA329_2481 <= YEAR_SYMBOL)) || LA329_2481 == AND_SYMBOL || LA329_2481 == AS_SYMBOL || LA329_2481 == BACK_TICK_QUOTED_ID || LA329_2481 == BETWEEN_SYMBOL || LA329_2481 == BIN_NUMBER || LA329_2481 == BITWISE_AND_OPERATOR || ((LA329_2481 >= BITWISE_OR_OPERATOR) && (LA329_2481 <= BITWISE_XOR_OPERATOR)) || ((LA329_2481 >= CLOSE_CURLY_SYMBOL) && (LA329_2481 <= COLLATE_SYMBOL)) || LA329_2481 == COMMA_SYMBOL || LA329_2481 == CONCAT_PIPES_SYMBOL || LA329_2481 == CROSS_SYMBOL || ((LA329_2481 >= DIV_OPERATOR) && (LA329_2481 <= DIV_SYMBOL)) || LA329_2481 == DOUBLE_QUOTED_TEXT || LA329_2481 == EQUAL_OPERATOR || LA329_2481 == FOR_SYMBOL || LA329_2481 == FROM_SYMBOL || ((LA329_2481 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2481 <= GREATER_THAN_OPERATOR)) || ((LA329_2481 >= GROUP_SYMBOL) && (LA329_2481 <= HAVING_SYMBOL)) || LA329_2481 == HEX_NUMBER || LA329_2481 == IDENTIFIER || LA329_2481 == INNER_SYMBOL || LA329_2481 == INTO_SYMBOL || LA329_2481 == IN_SYMBOL || LA329_2481 == IS_SYMBOL || ((LA329_2481 >= JOIN_SYMBOL) && (LA329_2481 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2481 >= LEFT_SYMBOL) && (LA329_2481 <= LESS_THAN_OPERATOR)) || ((LA329_2481 >= LIKE_SYMBOL) && (LA329_2481 <= LIMIT_SYMBOL)) || LA329_2481 == LOCK_SYMBOL || LA329_2481 == LOGICAL_AND_OPERATOR || LA329_2481 == LOGICAL_OR_OPERATOR || LA329_2481 == MINUS_OPERATOR || ((LA329_2481 >= MOD_OPERATOR) && (LA329_2481 <= MOD_SYMBOL)) || ((LA329_2481 >= MULT_OPERATOR) && (LA329_2481 <= NATURAL_SYMBOL)) || ((LA329_2481 >= NOT_EQUAL2_OPERATOR) && (LA329_2481 <= NOT_SYMBOL)) || LA329_2481 == NULL_SAFE_EQUAL_OPERATOR || LA329_2481 == ON_SYMBOL || LA329_2481 == OPEN_PAR_SYMBOL || ((LA329_2481 >= ORDER_SYMBOL) && (LA329_2481 <= OR_SYMBOL)) || LA329_2481 == PLUS_OPERATOR || LA329_2481 == PROCEDURE_SYMBOL || LA329_2481 == REGEXP_SYMBOL || LA329_2481 == RIGHT_SYMBOL || LA329_2481 == SEMICOLON_SYMBOL || LA329_2481 == SET_SYMBOL || ((LA329_2481 >= SHIFT_LEFT_OPERATOR) && (LA329_2481 <= SHIFT_RIGHT_OPERATOR)) || LA329_2481 == SINGLE_QUOTED_TEXT || LA329_2481 == STRAIGHT_JOIN_SYMBOL || LA329_2481 == UNION_SYMBOL || LA329_2481 == USING_SYMBOL || LA329_2481 == WHERE_SYMBOL || LA329_2481 == WITH_SYMBOL || LA329_2481 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2481;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1025 >= ACCOUNT_SYMBOL) && (LA329_1025 <= XA_SYMBOL)) || LA329_1025 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2482 = LA(4);
                                        if ( (LA329_2482 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7433 = LA(5);
                                                if ( (LA329_7433 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7433 >= ACCOUNT_SYMBOL) && (LA329_7433 <= YEAR_SYMBOL)) || LA329_7433 == BACK_TICK_QUOTED_ID || LA329_7433 == DOUBLE_QUOTED_TEXT || LA329_7433 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7433;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2482 == EOF || ((LA329_2482 >= ACCOUNT_SYMBOL) && (LA329_2482 <= YEAR_SYMBOL)) || LA329_2482 == AND_SYMBOL || LA329_2482 == AS_SYMBOL || LA329_2482 == BACK_TICK_QUOTED_ID || LA329_2482 == BETWEEN_SYMBOL || LA329_2482 == BIN_NUMBER || LA329_2482 == BITWISE_AND_OPERATOR || ((LA329_2482 >= BITWISE_OR_OPERATOR) && (LA329_2482 <= BITWISE_XOR_OPERATOR)) || ((LA329_2482 >= CLOSE_CURLY_SYMBOL) && (LA329_2482 <= COLLATE_SYMBOL)) || LA329_2482 == COMMA_SYMBOL || LA329_2482 == CONCAT_PIPES_SYMBOL || LA329_2482 == CROSS_SYMBOL || ((LA329_2482 >= DIV_OPERATOR) && (LA329_2482 <= DIV_SYMBOL)) || LA329_2482 == DOUBLE_QUOTED_TEXT || LA329_2482 == EQUAL_OPERATOR || LA329_2482 == FOR_SYMBOL || LA329_2482 == FROM_SYMBOL || ((LA329_2482 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2482 <= GREATER_THAN_OPERATOR)) || ((LA329_2482 >= GROUP_SYMBOL) && (LA329_2482 <= HAVING_SYMBOL)) || LA329_2482 == HEX_NUMBER || LA329_2482 == IDENTIFIER || LA329_2482 == INNER_SYMBOL || LA329_2482 == INTO_SYMBOL || LA329_2482 == IN_SYMBOL || LA329_2482 == IS_SYMBOL || ((LA329_2482 >= JOIN_SYMBOL) && (LA329_2482 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2482 >= LEFT_SYMBOL) && (LA329_2482 <= LESS_THAN_OPERATOR)) || ((LA329_2482 >= LIKE_SYMBOL) && (LA329_2482 <= LIMIT_SYMBOL)) || LA329_2482 == LOCK_SYMBOL || LA329_2482 == LOGICAL_AND_OPERATOR || LA329_2482 == LOGICAL_OR_OPERATOR || LA329_2482 == MINUS_OPERATOR || ((LA329_2482 >= MOD_OPERATOR) && (LA329_2482 <= MOD_SYMBOL)) || ((LA329_2482 >= MULT_OPERATOR) && (LA329_2482 <= NATURAL_SYMBOL)) || ((LA329_2482 >= NOT_EQUAL2_OPERATOR) && (LA329_2482 <= NOT_SYMBOL)) || LA329_2482 == NULL_SAFE_EQUAL_OPERATOR || LA329_2482 == ON_SYMBOL || LA329_2482 == OPEN_PAR_SYMBOL || ((LA329_2482 >= ORDER_SYMBOL) && (LA329_2482 <= OR_SYMBOL)) || LA329_2482 == PLUS_OPERATOR || LA329_2482 == PROCEDURE_SYMBOL || LA329_2482 == REGEXP_SYMBOL || LA329_2482 == RIGHT_SYMBOL || LA329_2482 == SEMICOLON_SYMBOL || LA329_2482 == SET_SYMBOL || ((LA329_2482 >= SHIFT_LEFT_OPERATOR) && (LA329_2482 <= SHIFT_RIGHT_OPERATOR)) || LA329_2482 == SINGLE_QUOTED_TEXT || LA329_2482 == STRAIGHT_JOIN_SYMBOL || LA329_2482 == UNION_SYMBOL || LA329_2482 == USING_SYMBOL || LA329_2482 == WHERE_SYMBOL || LA329_2482 == WITH_SYMBOL || LA329_2482 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2482;


                                            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  = 329;
                                    EXCEPTION->state        = 1025;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_45 == EOF || ((LA329_45 >= ACCOUNT_SYMBOL) && (LA329_45 <= YEAR_SYMBOL)) || LA329_45 == AND_SYMBOL || LA329_45 == AS_SYMBOL || LA329_45 == BACK_TICK_QUOTED_ID || LA329_45 == BETWEEN_SYMBOL || LA329_45 == BIN_NUMBER || LA329_45 == BITWISE_AND_OPERATOR || ((LA329_45 >= BITWISE_OR_OPERATOR) && (LA329_45 <= BITWISE_XOR_OPERATOR)) || ((LA329_45 >= CLOSE_CURLY_SYMBOL) && (LA329_45 <= COLLATE_SYMBOL)) || LA329_45 == COMMA_SYMBOL || LA329_45 == CONCAT_PIPES_SYMBOL || LA329_45 == CROSS_SYMBOL || ((LA329_45 >= DIV_OPERATOR) && (LA329_45 <= DIV_SYMBOL)) || LA329_45 == DOUBLE_QUOTED_TEXT || LA329_45 == EQUAL_OPERATOR || LA329_45 == FOR_SYMBOL || LA329_45 == FROM_SYMBOL || ((LA329_45 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_45 <= GREATER_THAN_OPERATOR)) || ((LA329_45 >= GROUP_SYMBOL) && (LA329_45 <= HAVING_SYMBOL)) || LA329_45 == HEX_NUMBER || LA329_45 == IDENTIFIER || LA329_45 == INNER_SYMBOL || LA329_45 == INTO_SYMBOL || LA329_45 == IN_SYMBOL || LA329_45 == IS_SYMBOL || ((LA329_45 >= JOIN_SYMBOL) && (LA329_45 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_45 >= LEFT_SYMBOL) && (LA329_45 <= LESS_THAN_OPERATOR)) || ((LA329_45 >= LIKE_SYMBOL) && (LA329_45 <= LIMIT_SYMBOL)) || LA329_45 == LOCK_SYMBOL || LA329_45 == LOGICAL_AND_OPERATOR || LA329_45 == LOGICAL_OR_OPERATOR || LA329_45 == MINUS_OPERATOR || ((LA329_45 >= MOD_OPERATOR) && (LA329_45 <= MOD_SYMBOL)) || ((LA329_45 >= MULT_OPERATOR) && (LA329_45 <= NATURAL_SYMBOL)) || ((LA329_45 >= NOT_EQUAL2_OPERATOR) && (LA329_45 <= NOT_SYMBOL)) || LA329_45 == NULL_SAFE_EQUAL_OPERATOR || LA329_45 == ON_SYMBOL || LA329_45 == OPEN_PAR_SYMBOL || ((LA329_45 >= ORDER_SYMBOL) && (LA329_45 <= OR_SYMBOL)) || LA329_45 == PLUS_OPERATOR || LA329_45 == PROCEDURE_SYMBOL || LA329_45 == REGEXP_SYMBOL || LA329_45 == RIGHT_SYMBOL || LA329_45 == SEMICOLON_SYMBOL || LA329_45 == SET_SYMBOL || ((LA329_45 >= SHIFT_LEFT_OPERATOR) && (LA329_45 <= SHIFT_RIGHT_OPERATOR)) || LA329_45 == SINGLE_QUOTED_TEXT || LA329_45 == STRAIGHT_JOIN_SYMBOL || LA329_45 == UNION_SYMBOL || LA329_45 == USING_SYMBOL || LA329_45 == WHERE_SYMBOL || LA329_45 == WITH_SYMBOL || LA329_45 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 45;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == CHARSET_SYMBOL))
                {
                    {
                        int LA329_49 = LA(2);
                        if ( (LA329_49 == EOF || ((LA329_49 >= ACCOUNT_SYMBOL) && (LA329_49 <= YEAR_SYMBOL)) || LA329_49 == AND_SYMBOL || LA329_49 == AS_SYMBOL || LA329_49 == BACK_TICK_QUOTED_ID || LA329_49 == BETWEEN_SYMBOL || LA329_49 == BIN_NUMBER || LA329_49 == BITWISE_AND_OPERATOR || ((LA329_49 >= BITWISE_OR_OPERATOR) && (LA329_49 <= BITWISE_XOR_OPERATOR)) || ((LA329_49 >= CLOSE_CURLY_SYMBOL) && (LA329_49 <= COLLATE_SYMBOL)) || LA329_49 == COMMA_SYMBOL || LA329_49 == CONCAT_PIPES_SYMBOL || LA329_49 == CROSS_SYMBOL || ((LA329_49 >= DIV_OPERATOR) && (LA329_49 <= DIV_SYMBOL)) || LA329_49 == DOUBLE_QUOTED_TEXT || LA329_49 == EQUAL_OPERATOR || LA329_49 == FOR_SYMBOL || LA329_49 == FROM_SYMBOL || ((LA329_49 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_49 <= GREATER_THAN_OPERATOR)) || ((LA329_49 >= GROUP_SYMBOL) && (LA329_49 <= HAVING_SYMBOL)) || LA329_49 == HEX_NUMBER || LA329_49 == IDENTIFIER || LA329_49 == INNER_SYMBOL || LA329_49 == INTO_SYMBOL || LA329_49 == IN_SYMBOL || LA329_49 == IS_SYMBOL || ((LA329_49 >= JOIN_SYMBOL) && (LA329_49 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_49 >= LEFT_SYMBOL) && (LA329_49 <= LESS_THAN_OPERATOR)) || ((LA329_49 >= LIKE_SYMBOL) && (LA329_49 <= LIMIT_SYMBOL)) || LA329_49 == LOCK_SYMBOL || LA329_49 == LOGICAL_AND_OPERATOR || LA329_49 == LOGICAL_OR_OPERATOR || LA329_49 == MINUS_OPERATOR || ((LA329_49 >= MOD_OPERATOR) && (LA329_49 <= MOD_SYMBOL)) || ((LA329_49 >= MULT_OPERATOR) && (LA329_49 <= NATURAL_SYMBOL)) || ((LA329_49 >= NOT_EQUAL2_OPERATOR) && (LA329_49 <= NOT_SYMBOL)) || LA329_49 == NULL_SAFE_EQUAL_OPERATOR || LA329_49 == ON_SYMBOL || LA329_49 == OPEN_PAR_SYMBOL || ((LA329_49 >= ORDER_SYMBOL) && (LA329_49 <= OR_SYMBOL)) || LA329_49 == PLUS_OPERATOR || LA329_49 == PROCEDURE_SYMBOL || LA329_49 == REGEXP_SYMBOL || LA329_49 == RIGHT_SYMBOL || LA329_49 == SEMICOLON_SYMBOL || LA329_49 == SET_SYMBOL || ((LA329_49 >= SHIFT_LEFT_OPERATOR) && (LA329_49 <= SHIFT_RIGHT_OPERATOR)) || LA329_49 == SINGLE_QUOTED_TEXT || LA329_49 == STRAIGHT_JOIN_SYMBOL || LA329_49 == UNION_SYMBOL || LA329_49 == USING_SYMBOL || LA329_49 == WHERE_SYMBOL || LA329_49 == WITH_SYMBOL || LA329_49 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_49 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1080 = LA(3);
                                if ( (LA329_1080 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1080 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2484 = LA(4);
                                        if ( (LA329_2484 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7487 = LA(5);
                                                if ( (LA329_7487 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7487 >= ACCOUNT_SYMBOL) && (LA329_7487 <= YEAR_SYMBOL)) || LA329_7487 == BACK_TICK_QUOTED_ID || LA329_7487 == DOUBLE_QUOTED_TEXT || LA329_7487 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7487;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2484 == EOF || ((LA329_2484 >= ACCOUNT_SYMBOL) && (LA329_2484 <= YEAR_SYMBOL)) || LA329_2484 == AND_SYMBOL || LA329_2484 == AS_SYMBOL || LA329_2484 == BACK_TICK_QUOTED_ID || LA329_2484 == BETWEEN_SYMBOL || LA329_2484 == BIN_NUMBER || LA329_2484 == BITWISE_AND_OPERATOR || ((LA329_2484 >= BITWISE_OR_OPERATOR) && (LA329_2484 <= BITWISE_XOR_OPERATOR)) || ((LA329_2484 >= CLOSE_CURLY_SYMBOL) && (LA329_2484 <= COLLATE_SYMBOL)) || LA329_2484 == COMMA_SYMBOL || LA329_2484 == CONCAT_PIPES_SYMBOL || LA329_2484 == CROSS_SYMBOL || ((LA329_2484 >= DIV_OPERATOR) && (LA329_2484 <= DIV_SYMBOL)) || LA329_2484 == DOUBLE_QUOTED_TEXT || LA329_2484 == EQUAL_OPERATOR || LA329_2484 == FOR_SYMBOL || LA329_2484 == FROM_SYMBOL || ((LA329_2484 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2484 <= GREATER_THAN_OPERATOR)) || ((LA329_2484 >= GROUP_SYMBOL) && (LA329_2484 <= HAVING_SYMBOL)) || LA329_2484 == HEX_NUMBER || LA329_2484 == IDENTIFIER || LA329_2484 == INNER_SYMBOL || LA329_2484 == INTO_SYMBOL || LA329_2484 == IN_SYMBOL || LA329_2484 == IS_SYMBOL || ((LA329_2484 >= JOIN_SYMBOL) && (LA329_2484 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2484 >= LEFT_SYMBOL) && (LA329_2484 <= LESS_THAN_OPERATOR)) || ((LA329_2484 >= LIKE_SYMBOL) && (LA329_2484 <= LIMIT_SYMBOL)) || LA329_2484 == LOCK_SYMBOL || LA329_2484 == LOGICAL_AND_OPERATOR || LA329_2484 == LOGICAL_OR_OPERATOR || LA329_2484 == MINUS_OPERATOR || ((LA329_2484 >= MOD_OPERATOR) && (LA329_2484 <= MOD_SYMBOL)) || ((LA329_2484 >= MULT_OPERATOR) && (LA329_2484 <= NATURAL_SYMBOL)) || ((LA329_2484 >= NOT_EQUAL2_OPERATOR) && (LA329_2484 <= NOT_SYMBOL)) || LA329_2484 == NULL_SAFE_EQUAL_OPERATOR || LA329_2484 == ON_SYMBOL || LA329_2484 == OPEN_PAR_SYMBOL || ((LA329_2484 >= ORDER_SYMBOL) && (LA329_2484 <= OR_SYMBOL)) || LA329_2484 == PLUS_OPERATOR || LA329_2484 == PROCEDURE_SYMBOL || LA329_2484 == REGEXP_SYMBOL || LA329_2484 == RIGHT_SYMBOL || LA329_2484 == SEMICOLON_SYMBOL || LA329_2484 == SET_SYMBOL || ((LA329_2484 >= SHIFT_LEFT_OPERATOR) && (LA329_2484 <= SHIFT_RIGHT_OPERATOR)) || LA329_2484 == SINGLE_QUOTED_TEXT || LA329_2484 == STRAIGHT_JOIN_SYMBOL || LA329_2484 == UNION_SYMBOL || LA329_2484 == USING_SYMBOL || LA329_2484 == WHERE_SYMBOL || LA329_2484 == WITH_SYMBOL || LA329_2484 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2484;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1080 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2485 = LA(4);
                                        if ( (LA329_2485 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7541 = LA(5);
                                                if ( (LA329_7541 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7541 >= ACCOUNT_SYMBOL) && (LA329_7541 <= YEAR_SYMBOL)) || LA329_7541 == BACK_TICK_QUOTED_ID || LA329_7541 == DOUBLE_QUOTED_TEXT || LA329_7541 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7541;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2485 == EOF || ((LA329_2485 >= ACCOUNT_SYMBOL) && (LA329_2485 <= YEAR_SYMBOL)) || LA329_2485 == AND_SYMBOL || LA329_2485 == AS_SYMBOL || LA329_2485 == BACK_TICK_QUOTED_ID || LA329_2485 == BETWEEN_SYMBOL || LA329_2485 == BIN_NUMBER || LA329_2485 == BITWISE_AND_OPERATOR || ((LA329_2485 >= BITWISE_OR_OPERATOR) && (LA329_2485 <= BITWISE_XOR_OPERATOR)) || ((LA329_2485 >= CLOSE_CURLY_SYMBOL) && (LA329_2485 <= COLLATE_SYMBOL)) || LA329_2485 == COMMA_SYMBOL || LA329_2485 == CONCAT_PIPES_SYMBOL || LA329_2485 == CROSS_SYMBOL || ((LA329_2485 >= DIV_OPERATOR) && (LA329_2485 <= DIV_SYMBOL)) || LA329_2485 == DOUBLE_QUOTED_TEXT || LA329_2485 == EQUAL_OPERATOR || LA329_2485 == FOR_SYMBOL || LA329_2485 == FROM_SYMBOL || ((LA329_2485 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2485 <= GREATER_THAN_OPERATOR)) || ((LA329_2485 >= GROUP_SYMBOL) && (LA329_2485 <= HAVING_SYMBOL)) || LA329_2485 == HEX_NUMBER || LA329_2485 == IDENTIFIER || LA329_2485 == INNER_SYMBOL || LA329_2485 == INTO_SYMBOL || LA329_2485 == IN_SYMBOL || LA329_2485 == IS_SYMBOL || ((LA329_2485 >= JOIN_SYMBOL) && (LA329_2485 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2485 >= LEFT_SYMBOL) && (LA329_2485 <= LESS_THAN_OPERATOR)) || ((LA329_2485 >= LIKE_SYMBOL) && (LA329_2485 <= LIMIT_SYMBOL)) || LA329_2485 == LOCK_SYMBOL || LA329_2485 == LOGICAL_AND_OPERATOR || LA329_2485 == LOGICAL_OR_OPERATOR || LA329_2485 == MINUS_OPERATOR || ((LA329_2485 >= MOD_OPERATOR) && (LA329_2485 <= MOD_SYMBOL)) || ((LA329_2485 >= MULT_OPERATOR) && (LA329_2485 <= NATURAL_SYMBOL)) || ((LA329_2485 >= NOT_EQUAL2_OPERATOR) && (LA329_2485 <= NOT_SYMBOL)) || LA329_2485 == NULL_SAFE_EQUAL_OPERATOR || LA329_2485 == ON_SYMBOL || LA329_2485 == OPEN_PAR_SYMBOL || ((LA329_2485 >= ORDER_SYMBOL) && (LA329_2485 <= OR_SYMBOL)) || LA329_2485 == PLUS_OPERATOR || LA329_2485 == PROCEDURE_SYMBOL || LA329_2485 == REGEXP_SYMBOL || LA329_2485 == RIGHT_SYMBOL || LA329_2485 == SEMICOLON_SYMBOL || LA329_2485 == SET_SYMBOL || ((LA329_2485 >= SHIFT_LEFT_OPERATOR) && (LA329_2485 <= SHIFT_RIGHT_OPERATOR)) || LA329_2485 == SINGLE_QUOTED_TEXT || LA329_2485 == STRAIGHT_JOIN_SYMBOL || LA329_2485 == UNION_SYMBOL || LA329_2485 == USING_SYMBOL || LA329_2485 == WHERE_SYMBOL || LA329_2485 == WITH_SYMBOL || LA329_2485 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2485;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1080 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2486 = LA(4);
                                        if ( (LA329_2486 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7595 = LA(5);
                                                if ( (LA329_7595 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7595 >= ACCOUNT_SYMBOL) && (LA329_7595 <= YEAR_SYMBOL)) || LA329_7595 == BACK_TICK_QUOTED_ID || LA329_7595 == DOUBLE_QUOTED_TEXT || LA329_7595 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7595;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2486 == EOF || ((LA329_2486 >= ACCOUNT_SYMBOL) && (LA329_2486 <= YEAR_SYMBOL)) || LA329_2486 == AND_SYMBOL || LA329_2486 == AS_SYMBOL || LA329_2486 == BACK_TICK_QUOTED_ID || LA329_2486 == BETWEEN_SYMBOL || LA329_2486 == BIN_NUMBER || LA329_2486 == BITWISE_AND_OPERATOR || ((LA329_2486 >= BITWISE_OR_OPERATOR) && (LA329_2486 <= BITWISE_XOR_OPERATOR)) || ((LA329_2486 >= CLOSE_CURLY_SYMBOL) && (LA329_2486 <= COLLATE_SYMBOL)) || LA329_2486 == COMMA_SYMBOL || LA329_2486 == CONCAT_PIPES_SYMBOL || LA329_2486 == CROSS_SYMBOL || ((LA329_2486 >= DIV_OPERATOR) && (LA329_2486 <= DIV_SYMBOL)) || LA329_2486 == DOUBLE_QUOTED_TEXT || LA329_2486 == EQUAL_OPERATOR || LA329_2486 == FOR_SYMBOL || LA329_2486 == FROM_SYMBOL || ((LA329_2486 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2486 <= GREATER_THAN_OPERATOR)) || ((LA329_2486 >= GROUP_SYMBOL) && (LA329_2486 <= HAVING_SYMBOL)) || LA329_2486 == HEX_NUMBER || LA329_2486 == IDENTIFIER || LA329_2486 == INNER_SYMBOL || LA329_2486 == INTO_SYMBOL || LA329_2486 == IN_SYMBOL || LA329_2486 == IS_SYMBOL || ((LA329_2486 >= JOIN_SYMBOL) && (LA329_2486 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2486 >= LEFT_SYMBOL) && (LA329_2486 <= LESS_THAN_OPERATOR)) || ((LA329_2486 >= LIKE_SYMBOL) && (LA329_2486 <= LIMIT_SYMBOL)) || LA329_2486 == LOCK_SYMBOL || LA329_2486 == LOGICAL_AND_OPERATOR || LA329_2486 == LOGICAL_OR_OPERATOR || LA329_2486 == MINUS_OPERATOR || ((LA329_2486 >= MOD_OPERATOR) && (LA329_2486 <= MOD_SYMBOL)) || ((LA329_2486 >= MULT_OPERATOR) && (LA329_2486 <= NATURAL_SYMBOL)) || ((LA329_2486 >= NOT_EQUAL2_OPERATOR) && (LA329_2486 <= NOT_SYMBOL)) || LA329_2486 == NULL_SAFE_EQUAL_OPERATOR || LA329_2486 == ON_SYMBOL || LA329_2486 == OPEN_PAR_SYMBOL || ((LA329_2486 >= ORDER_SYMBOL) && (LA329_2486 <= OR_SYMBOL)) || LA329_2486 == PLUS_OPERATOR || LA329_2486 == PROCEDURE_SYMBOL || LA329_2486 == REGEXP_SYMBOL || LA329_2486 == RIGHT_SYMBOL || LA329_2486 == SEMICOLON_SYMBOL || LA329_2486 == SET_SYMBOL || ((LA329_2486 >= SHIFT_LEFT_OPERATOR) && (LA329_2486 <= SHIFT_RIGHT_OPERATOR)) || LA329_2486 == SINGLE_QUOTED_TEXT || LA329_2486 == STRAIGHT_JOIN_SYMBOL || LA329_2486 == UNION_SYMBOL || LA329_2486 == USING_SYMBOL || LA329_2486 == WHERE_SYMBOL || LA329_2486 == WITH_SYMBOL || LA329_2486 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2486;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1080 >= ACTION_SYMBOL) && (LA329_1080 <= SHARE_SYMBOL)) || ((LA329_1080 >= SLOW_SYMBOL) && (LA329_1080 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2487 = LA(4);
                                        if ( (LA329_2487 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7649 = LA(5);
                                                if ( (LA329_7649 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7649 >= ACCOUNT_SYMBOL) && (LA329_7649 <= YEAR_SYMBOL)) || LA329_7649 == BACK_TICK_QUOTED_ID || LA329_7649 == DOUBLE_QUOTED_TEXT || LA329_7649 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7649;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2487 == EOF || ((LA329_2487 >= ACCOUNT_SYMBOL) && (LA329_2487 <= YEAR_SYMBOL)) || LA329_2487 == AND_SYMBOL || LA329_2487 == AS_SYMBOL || LA329_2487 == BACK_TICK_QUOTED_ID || LA329_2487 == BETWEEN_SYMBOL || LA329_2487 == BIN_NUMBER || LA329_2487 == BITWISE_AND_OPERATOR || ((LA329_2487 >= BITWISE_OR_OPERATOR) && (LA329_2487 <= BITWISE_XOR_OPERATOR)) || ((LA329_2487 >= CLOSE_CURLY_SYMBOL) && (LA329_2487 <= COLLATE_SYMBOL)) || LA329_2487 == COMMA_SYMBOL || LA329_2487 == CONCAT_PIPES_SYMBOL || LA329_2487 == CROSS_SYMBOL || ((LA329_2487 >= DIV_OPERATOR) && (LA329_2487 <= DIV_SYMBOL)) || LA329_2487 == DOUBLE_QUOTED_TEXT || LA329_2487 == EQUAL_OPERATOR || LA329_2487 == FOR_SYMBOL || LA329_2487 == FROM_SYMBOL || ((LA329_2487 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2487 <= GREATER_THAN_OPERATOR)) || ((LA329_2487 >= GROUP_SYMBOL) && (LA329_2487 <= HAVING_SYMBOL)) || LA329_2487 == HEX_NUMBER || LA329_2487 == IDENTIFIER || LA329_2487 == INNER_SYMBOL || LA329_2487 == INTO_SYMBOL || LA329_2487 == IN_SYMBOL || LA329_2487 == IS_SYMBOL || ((LA329_2487 >= JOIN_SYMBOL) && (LA329_2487 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2487 >= LEFT_SYMBOL) && (LA329_2487 <= LESS_THAN_OPERATOR)) || ((LA329_2487 >= LIKE_SYMBOL) && (LA329_2487 <= LIMIT_SYMBOL)) || LA329_2487 == LOCK_SYMBOL || LA329_2487 == LOGICAL_AND_OPERATOR || LA329_2487 == LOGICAL_OR_OPERATOR || LA329_2487 == MINUS_OPERATOR || ((LA329_2487 >= MOD_OPERATOR) && (LA329_2487 <= MOD_SYMBOL)) || ((LA329_2487 >= MULT_OPERATOR) && (LA329_2487 <= NATURAL_SYMBOL)) || ((LA329_2487 >= NOT_EQUAL2_OPERATOR) && (LA329_2487 <= NOT_SYMBOL)) || LA329_2487 == NULL_SAFE_EQUAL_OPERATOR || LA329_2487 == ON_SYMBOL || LA329_2487 == OPEN_PAR_SYMBOL || ((LA329_2487 >= ORDER_SYMBOL) && (LA329_2487 <= OR_SYMBOL)) || LA329_2487 == PLUS_OPERATOR || LA329_2487 == PROCEDURE_SYMBOL || LA329_2487 == REGEXP_SYMBOL || LA329_2487 == RIGHT_SYMBOL || LA329_2487 == SEMICOLON_SYMBOL || LA329_2487 == SET_SYMBOL || ((LA329_2487 >= SHIFT_LEFT_OPERATOR) && (LA329_2487 <= SHIFT_RIGHT_OPERATOR)) || LA329_2487 == SINGLE_QUOTED_TEXT || LA329_2487 == STRAIGHT_JOIN_SYMBOL || LA329_2487 == UNION_SYMBOL || LA329_2487 == USING_SYMBOL || LA329_2487 == WHERE_SYMBOL || LA329_2487 == WITH_SYMBOL || LA329_2487 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2487;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1080 >= ACCOUNT_SYMBOL) && (LA329_1080 <= XA_SYMBOL)) || LA329_1080 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2488 = LA(4);
                                        if ( (LA329_2488 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7703 = LA(5);
                                                if ( (LA329_7703 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7703 >= ACCOUNT_SYMBOL) && (LA329_7703 <= YEAR_SYMBOL)) || LA329_7703 == BACK_TICK_QUOTED_ID || LA329_7703 == DOUBLE_QUOTED_TEXT || LA329_7703 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7703;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2488 == EOF || ((LA329_2488 >= ACCOUNT_SYMBOL) && (LA329_2488 <= YEAR_SYMBOL)) || LA329_2488 == AND_SYMBOL || LA329_2488 == AS_SYMBOL || LA329_2488 == BACK_TICK_QUOTED_ID || LA329_2488 == BETWEEN_SYMBOL || LA329_2488 == BIN_NUMBER || LA329_2488 == BITWISE_AND_OPERATOR || ((LA329_2488 >= BITWISE_OR_OPERATOR) && (LA329_2488 <= BITWISE_XOR_OPERATOR)) || ((LA329_2488 >= CLOSE_CURLY_SYMBOL) && (LA329_2488 <= COLLATE_SYMBOL)) || LA329_2488 == COMMA_SYMBOL || LA329_2488 == CONCAT_PIPES_SYMBOL || LA329_2488 == CROSS_SYMBOL || ((LA329_2488 >= DIV_OPERATOR) && (LA329_2488 <= DIV_SYMBOL)) || LA329_2488 == DOUBLE_QUOTED_TEXT || LA329_2488 == EQUAL_OPERATOR || LA329_2488 == FOR_SYMBOL || LA329_2488 == FROM_SYMBOL || ((LA329_2488 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2488 <= GREATER_THAN_OPERATOR)) || ((LA329_2488 >= GROUP_SYMBOL) && (LA329_2488 <= HAVING_SYMBOL)) || LA329_2488 == HEX_NUMBER || LA329_2488 == IDENTIFIER || LA329_2488 == INNER_SYMBOL || LA329_2488 == INTO_SYMBOL || LA329_2488 == IN_SYMBOL || LA329_2488 == IS_SYMBOL || ((LA329_2488 >= JOIN_SYMBOL) && (LA329_2488 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2488 >= LEFT_SYMBOL) && (LA329_2488 <= LESS_THAN_OPERATOR)) || ((LA329_2488 >= LIKE_SYMBOL) && (LA329_2488 <= LIMIT_SYMBOL)) || LA329_2488 == LOCK_SYMBOL || LA329_2488 == LOGICAL_AND_OPERATOR || LA329_2488 == LOGICAL_OR_OPERATOR || LA329_2488 == MINUS_OPERATOR || ((LA329_2488 >= MOD_OPERATOR) && (LA329_2488 <= MOD_SYMBOL)) || ((LA329_2488 >= MULT_OPERATOR) && (LA329_2488 <= NATURAL_SYMBOL)) || ((LA329_2488 >= NOT_EQUAL2_OPERATOR) && (LA329_2488 <= NOT_SYMBOL)) || LA329_2488 == NULL_SAFE_EQUAL_OPERATOR || LA329_2488 == ON_SYMBOL || LA329_2488 == OPEN_PAR_SYMBOL || ((LA329_2488 >= ORDER_SYMBOL) && (LA329_2488 <= OR_SYMBOL)) || LA329_2488 == PLUS_OPERATOR || LA329_2488 == PROCEDURE_SYMBOL || LA329_2488 == REGEXP_SYMBOL || LA329_2488 == RIGHT_SYMBOL || LA329_2488 == SEMICOLON_SYMBOL || LA329_2488 == SET_SYMBOL || ((LA329_2488 >= SHIFT_LEFT_OPERATOR) && (LA329_2488 <= SHIFT_RIGHT_OPERATOR)) || LA329_2488 == SINGLE_QUOTED_TEXT || LA329_2488 == STRAIGHT_JOIN_SYMBOL || LA329_2488 == UNION_SYMBOL || LA329_2488 == USING_SYMBOL || LA329_2488 == WHERE_SYMBOL || LA329_2488 == WITH_SYMBOL || LA329_2488 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2488;


                                            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  = 329;
                                    EXCEPTION->state        = 1080;


                                    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  = 329;
                            EXCEPTION->state        = 49;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == FORMAT_SYMBOL))
                {
                    {
                        int LA329_50 = LA(2);
                        if ( (LA329_50 == EOF || ((LA329_50 >= ACCOUNT_SYMBOL) && (LA329_50 <= YEAR_SYMBOL)) || LA329_50 == AND_SYMBOL || LA329_50 == AS_SYMBOL || LA329_50 == BACK_TICK_QUOTED_ID || LA329_50 == BETWEEN_SYMBOL || LA329_50 == BIN_NUMBER || LA329_50 == BITWISE_AND_OPERATOR || ((LA329_50 >= BITWISE_OR_OPERATOR) && (LA329_50 <= BITWISE_XOR_OPERATOR)) || ((LA329_50 >= CLOSE_CURLY_SYMBOL) && (LA329_50 <= COLLATE_SYMBOL)) || LA329_50 == COMMA_SYMBOL || LA329_50 == CONCAT_PIPES_SYMBOL || LA329_50 == CROSS_SYMBOL || ((LA329_50 >= DIV_OPERATOR) && (LA329_50 <= DIV_SYMBOL)) || LA329_50 == DOUBLE_QUOTED_TEXT || LA329_50 == EQUAL_OPERATOR || LA329_50 == FOR_SYMBOL || LA329_50 == FROM_SYMBOL || ((LA329_50 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_50 <= GREATER_THAN_OPERATOR)) || ((LA329_50 >= GROUP_SYMBOL) && (LA329_50 <= HAVING_SYMBOL)) || LA329_50 == HEX_NUMBER || LA329_50 == IDENTIFIER || LA329_50 == INNER_SYMBOL || LA329_50 == INTO_SYMBOL || LA329_50 == IN_SYMBOL || LA329_50 == IS_SYMBOL || ((LA329_50 >= JOIN_SYMBOL) && (LA329_50 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_50 >= LEFT_SYMBOL) && (LA329_50 <= LESS_THAN_OPERATOR)) || ((LA329_50 >= LIKE_SYMBOL) && (LA329_50 <= LIMIT_SYMBOL)) || LA329_50 == LOCK_SYMBOL || LA329_50 == LOGICAL_AND_OPERATOR || LA329_50 == LOGICAL_OR_OPERATOR || LA329_50 == MINUS_OPERATOR || ((LA329_50 >= MOD_OPERATOR) && (LA329_50 <= MOD_SYMBOL)) || ((LA329_50 >= MULT_OPERATOR) && (LA329_50 <= NATURAL_SYMBOL)) || ((LA329_50 >= NOT_EQUAL2_OPERATOR) && (LA329_50 <= NOT_SYMBOL)) || LA329_50 == NULL_SAFE_EQUAL_OPERATOR || LA329_50 == ON_SYMBOL || LA329_50 == OPEN_PAR_SYMBOL || ((LA329_50 >= ORDER_SYMBOL) && (LA329_50 <= OR_SYMBOL)) || LA329_50 == PLUS_OPERATOR || LA329_50 == PROCEDURE_SYMBOL || LA329_50 == REGEXP_SYMBOL || LA329_50 == RIGHT_SYMBOL || LA329_50 == SEMICOLON_SYMBOL || LA329_50 == SET_SYMBOL || ((LA329_50 >= SHIFT_LEFT_OPERATOR) && (LA329_50 <= SHIFT_RIGHT_OPERATOR)) || LA329_50 == SINGLE_QUOTED_TEXT || LA329_50 == STRAIGHT_JOIN_SYMBOL || LA329_50 == UNION_SYMBOL || LA329_50 == USING_SYMBOL || LA329_50 == WHERE_SYMBOL || LA329_50 == WITH_SYMBOL || LA329_50 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_50 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1134 = LA(3);
                                if ( (LA329_1134 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1134 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2490 = LA(4);
                                        if ( (LA329_2490 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7757 = LA(5);
                                                if ( (LA329_7757 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7757 >= ACCOUNT_SYMBOL) && (LA329_7757 <= YEAR_SYMBOL)) || LA329_7757 == BACK_TICK_QUOTED_ID || LA329_7757 == DOUBLE_QUOTED_TEXT || LA329_7757 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7757;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2490 == EOF || ((LA329_2490 >= ACCOUNT_SYMBOL) && (LA329_2490 <= YEAR_SYMBOL)) || LA329_2490 == AND_SYMBOL || LA329_2490 == AS_SYMBOL || LA329_2490 == BACK_TICK_QUOTED_ID || LA329_2490 == BETWEEN_SYMBOL || LA329_2490 == BIN_NUMBER || LA329_2490 == BITWISE_AND_OPERATOR || ((LA329_2490 >= BITWISE_OR_OPERATOR) && (LA329_2490 <= BITWISE_XOR_OPERATOR)) || ((LA329_2490 >= CLOSE_CURLY_SYMBOL) && (LA329_2490 <= COLLATE_SYMBOL)) || LA329_2490 == COMMA_SYMBOL || LA329_2490 == CONCAT_PIPES_SYMBOL || LA329_2490 == CROSS_SYMBOL || ((LA329_2490 >= DIV_OPERATOR) && (LA329_2490 <= DIV_SYMBOL)) || LA329_2490 == DOUBLE_QUOTED_TEXT || LA329_2490 == EQUAL_OPERATOR || LA329_2490 == FOR_SYMBOL || LA329_2490 == FROM_SYMBOL || ((LA329_2490 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2490 <= GREATER_THAN_OPERATOR)) || ((LA329_2490 >= GROUP_SYMBOL) && (LA329_2490 <= HAVING_SYMBOL)) || LA329_2490 == HEX_NUMBER || LA329_2490 == IDENTIFIER || LA329_2490 == INNER_SYMBOL || LA329_2490 == INTO_SYMBOL || LA329_2490 == IN_SYMBOL || LA329_2490 == IS_SYMBOL || ((LA329_2490 >= JOIN_SYMBOL) && (LA329_2490 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2490 >= LEFT_SYMBOL) && (LA329_2490 <= LESS_THAN_OPERATOR)) || ((LA329_2490 >= LIKE_SYMBOL) && (LA329_2490 <= LIMIT_SYMBOL)) || LA329_2490 == LOCK_SYMBOL || LA329_2490 == LOGICAL_AND_OPERATOR || LA329_2490 == LOGICAL_OR_OPERATOR || LA329_2490 == MINUS_OPERATOR || ((LA329_2490 >= MOD_OPERATOR) && (LA329_2490 <= MOD_SYMBOL)) || ((LA329_2490 >= MULT_OPERATOR) && (LA329_2490 <= NATURAL_SYMBOL)) || ((LA329_2490 >= NOT_EQUAL2_OPERATOR) && (LA329_2490 <= NOT_SYMBOL)) || LA329_2490 == NULL_SAFE_EQUAL_OPERATOR || LA329_2490 == ON_SYMBOL || LA329_2490 == OPEN_PAR_SYMBOL || ((LA329_2490 >= ORDER_SYMBOL) && (LA329_2490 <= OR_SYMBOL)) || LA329_2490 == PLUS_OPERATOR || LA329_2490 == PROCEDURE_SYMBOL || LA329_2490 == REGEXP_SYMBOL || LA329_2490 == RIGHT_SYMBOL || LA329_2490 == SEMICOLON_SYMBOL || LA329_2490 == SET_SYMBOL || ((LA329_2490 >= SHIFT_LEFT_OPERATOR) && (LA329_2490 <= SHIFT_RIGHT_OPERATOR)) || LA329_2490 == SINGLE_QUOTED_TEXT || LA329_2490 == STRAIGHT_JOIN_SYMBOL || LA329_2490 == UNION_SYMBOL || LA329_2490 == USING_SYMBOL || LA329_2490 == WHERE_SYMBOL || LA329_2490 == WITH_SYMBOL || LA329_2490 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2490;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1134 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2491 = LA(4);
                                        if ( (LA329_2491 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7811 = LA(5);
                                                if ( (LA329_7811 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7811 >= ACCOUNT_SYMBOL) && (LA329_7811 <= YEAR_SYMBOL)) || LA329_7811 == BACK_TICK_QUOTED_ID || LA329_7811 == DOUBLE_QUOTED_TEXT || LA329_7811 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7811;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2491 == EOF || ((LA329_2491 >= ACCOUNT_SYMBOL) && (LA329_2491 <= YEAR_SYMBOL)) || LA329_2491 == AND_SYMBOL || LA329_2491 == AS_SYMBOL || LA329_2491 == BACK_TICK_QUOTED_ID || LA329_2491 == BETWEEN_SYMBOL || LA329_2491 == BIN_NUMBER || LA329_2491 == BITWISE_AND_OPERATOR || ((LA329_2491 >= BITWISE_OR_OPERATOR) && (LA329_2491 <= BITWISE_XOR_OPERATOR)) || ((LA329_2491 >= CLOSE_CURLY_SYMBOL) && (LA329_2491 <= COLLATE_SYMBOL)) || LA329_2491 == COMMA_SYMBOL || LA329_2491 == CONCAT_PIPES_SYMBOL || LA329_2491 == CROSS_SYMBOL || ((LA329_2491 >= DIV_OPERATOR) && (LA329_2491 <= DIV_SYMBOL)) || LA329_2491 == DOUBLE_QUOTED_TEXT || LA329_2491 == EQUAL_OPERATOR || LA329_2491 == FOR_SYMBOL || LA329_2491 == FROM_SYMBOL || ((LA329_2491 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2491 <= GREATER_THAN_OPERATOR)) || ((LA329_2491 >= GROUP_SYMBOL) && (LA329_2491 <= HAVING_SYMBOL)) || LA329_2491 == HEX_NUMBER || LA329_2491 == IDENTIFIER || LA329_2491 == INNER_SYMBOL || LA329_2491 == INTO_SYMBOL || LA329_2491 == IN_SYMBOL || LA329_2491 == IS_SYMBOL || ((LA329_2491 >= JOIN_SYMBOL) && (LA329_2491 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2491 >= LEFT_SYMBOL) && (LA329_2491 <= LESS_THAN_OPERATOR)) || ((LA329_2491 >= LIKE_SYMBOL) && (LA329_2491 <= LIMIT_SYMBOL)) || LA329_2491 == LOCK_SYMBOL || LA329_2491 == LOGICAL_AND_OPERATOR || LA329_2491 == LOGICAL_OR_OPERATOR || LA329_2491 == MINUS_OPERATOR || ((LA329_2491 >= MOD_OPERATOR) && (LA329_2491 <= MOD_SYMBOL)) || ((LA329_2491 >= MULT_OPERATOR) && (LA329_2491 <= NATURAL_SYMBOL)) || ((LA329_2491 >= NOT_EQUAL2_OPERATOR) && (LA329_2491 <= NOT_SYMBOL)) || LA329_2491 == NULL_SAFE_EQUAL_OPERATOR || LA329_2491 == ON_SYMBOL || LA329_2491 == OPEN_PAR_SYMBOL || ((LA329_2491 >= ORDER_SYMBOL) && (LA329_2491 <= OR_SYMBOL)) || LA329_2491 == PLUS_OPERATOR || LA329_2491 == PROCEDURE_SYMBOL || LA329_2491 == REGEXP_SYMBOL || LA329_2491 == RIGHT_SYMBOL || LA329_2491 == SEMICOLON_SYMBOL || LA329_2491 == SET_SYMBOL || ((LA329_2491 >= SHIFT_LEFT_OPERATOR) && (LA329_2491 <= SHIFT_RIGHT_OPERATOR)) || LA329_2491 == SINGLE_QUOTED_TEXT || LA329_2491 == STRAIGHT_JOIN_SYMBOL || LA329_2491 == UNION_SYMBOL || LA329_2491 == USING_SYMBOL || LA329_2491 == WHERE_SYMBOL || LA329_2491 == WITH_SYMBOL || LA329_2491 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2491;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1134 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2492 = LA(4);
                                        if ( (LA329_2492 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7865 = LA(5);
                                                if ( (LA329_7865 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7865 >= ACCOUNT_SYMBOL) && (LA329_7865 <= YEAR_SYMBOL)) || LA329_7865 == BACK_TICK_QUOTED_ID || LA329_7865 == DOUBLE_QUOTED_TEXT || LA329_7865 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7865;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2492 == EOF || ((LA329_2492 >= ACCOUNT_SYMBOL) && (LA329_2492 <= YEAR_SYMBOL)) || LA329_2492 == AND_SYMBOL || LA329_2492 == AS_SYMBOL || LA329_2492 == BACK_TICK_QUOTED_ID || LA329_2492 == BETWEEN_SYMBOL || LA329_2492 == BIN_NUMBER || LA329_2492 == BITWISE_AND_OPERATOR || ((LA329_2492 >= BITWISE_OR_OPERATOR) && (LA329_2492 <= BITWISE_XOR_OPERATOR)) || ((LA329_2492 >= CLOSE_CURLY_SYMBOL) && (LA329_2492 <= COLLATE_SYMBOL)) || LA329_2492 == COMMA_SYMBOL || LA329_2492 == CONCAT_PIPES_SYMBOL || LA329_2492 == CROSS_SYMBOL || ((LA329_2492 >= DIV_OPERATOR) && (LA329_2492 <= DIV_SYMBOL)) || LA329_2492 == DOUBLE_QUOTED_TEXT || LA329_2492 == EQUAL_OPERATOR || LA329_2492 == FOR_SYMBOL || LA329_2492 == FROM_SYMBOL || ((LA329_2492 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2492 <= GREATER_THAN_OPERATOR)) || ((LA329_2492 >= GROUP_SYMBOL) && (LA329_2492 <= HAVING_SYMBOL)) || LA329_2492 == HEX_NUMBER || LA329_2492 == IDENTIFIER || LA329_2492 == INNER_SYMBOL || LA329_2492 == INTO_SYMBOL || LA329_2492 == IN_SYMBOL || LA329_2492 == IS_SYMBOL || ((LA329_2492 >= JOIN_SYMBOL) && (LA329_2492 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2492 >= LEFT_SYMBOL) && (LA329_2492 <= LESS_THAN_OPERATOR)) || ((LA329_2492 >= LIKE_SYMBOL) && (LA329_2492 <= LIMIT_SYMBOL)) || LA329_2492 == LOCK_SYMBOL || LA329_2492 == LOGICAL_AND_OPERATOR || LA329_2492 == LOGICAL_OR_OPERATOR || LA329_2492 == MINUS_OPERATOR || ((LA329_2492 >= MOD_OPERATOR) && (LA329_2492 <= MOD_SYMBOL)) || ((LA329_2492 >= MULT_OPERATOR) && (LA329_2492 <= NATURAL_SYMBOL)) || ((LA329_2492 >= NOT_EQUAL2_OPERATOR) && (LA329_2492 <= NOT_SYMBOL)) || LA329_2492 == NULL_SAFE_EQUAL_OPERATOR || LA329_2492 == ON_SYMBOL || LA329_2492 == OPEN_PAR_SYMBOL || ((LA329_2492 >= ORDER_SYMBOL) && (LA329_2492 <= OR_SYMBOL)) || LA329_2492 == PLUS_OPERATOR || LA329_2492 == PROCEDURE_SYMBOL || LA329_2492 == REGEXP_SYMBOL || LA329_2492 == RIGHT_SYMBOL || LA329_2492 == SEMICOLON_SYMBOL || LA329_2492 == SET_SYMBOL || ((LA329_2492 >= SHIFT_LEFT_OPERATOR) && (LA329_2492 <= SHIFT_RIGHT_OPERATOR)) || LA329_2492 == SINGLE_QUOTED_TEXT || LA329_2492 == STRAIGHT_JOIN_SYMBOL || LA329_2492 == UNION_SYMBOL || LA329_2492 == USING_SYMBOL || LA329_2492 == WHERE_SYMBOL || LA329_2492 == WITH_SYMBOL || LA329_2492 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2492;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1134 >= ACTION_SYMBOL) && (LA329_1134 <= SHARE_SYMBOL)) || ((LA329_1134 >= SLOW_SYMBOL) && (LA329_1134 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2493 = LA(4);
                                        if ( (LA329_2493 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7919 = LA(5);
                                                if ( (LA329_7919 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7919 >= ACCOUNT_SYMBOL) && (LA329_7919 <= YEAR_SYMBOL)) || LA329_7919 == BACK_TICK_QUOTED_ID || LA329_7919 == DOUBLE_QUOTED_TEXT || LA329_7919 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7919;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2493 == EOF || ((LA329_2493 >= ACCOUNT_SYMBOL) && (LA329_2493 <= YEAR_SYMBOL)) || LA329_2493 == AND_SYMBOL || LA329_2493 == AS_SYMBOL || LA329_2493 == BACK_TICK_QUOTED_ID || LA329_2493 == BETWEEN_SYMBOL || LA329_2493 == BIN_NUMBER || LA329_2493 == BITWISE_AND_OPERATOR || ((LA329_2493 >= BITWISE_OR_OPERATOR) && (LA329_2493 <= BITWISE_XOR_OPERATOR)) || ((LA329_2493 >= CLOSE_CURLY_SYMBOL) && (LA329_2493 <= COLLATE_SYMBOL)) || LA329_2493 == COMMA_SYMBOL || LA329_2493 == CONCAT_PIPES_SYMBOL || LA329_2493 == CROSS_SYMBOL || ((LA329_2493 >= DIV_OPERATOR) && (LA329_2493 <= DIV_SYMBOL)) || LA329_2493 == DOUBLE_QUOTED_TEXT || LA329_2493 == EQUAL_OPERATOR || LA329_2493 == FOR_SYMBOL || LA329_2493 == FROM_SYMBOL || ((LA329_2493 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2493 <= GREATER_THAN_OPERATOR)) || ((LA329_2493 >= GROUP_SYMBOL) && (LA329_2493 <= HAVING_SYMBOL)) || LA329_2493 == HEX_NUMBER || LA329_2493 == IDENTIFIER || LA329_2493 == INNER_SYMBOL || LA329_2493 == INTO_SYMBOL || LA329_2493 == IN_SYMBOL || LA329_2493 == IS_SYMBOL || ((LA329_2493 >= JOIN_SYMBOL) && (LA329_2493 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2493 >= LEFT_SYMBOL) && (LA329_2493 <= LESS_THAN_OPERATOR)) || ((LA329_2493 >= LIKE_SYMBOL) && (LA329_2493 <= LIMIT_SYMBOL)) || LA329_2493 == LOCK_SYMBOL || LA329_2493 == LOGICAL_AND_OPERATOR || LA329_2493 == LOGICAL_OR_OPERATOR || LA329_2493 == MINUS_OPERATOR || ((LA329_2493 >= MOD_OPERATOR) && (LA329_2493 <= MOD_SYMBOL)) || ((LA329_2493 >= MULT_OPERATOR) && (LA329_2493 <= NATURAL_SYMBOL)) || ((LA329_2493 >= NOT_EQUAL2_OPERATOR) && (LA329_2493 <= NOT_SYMBOL)) || LA329_2493 == NULL_SAFE_EQUAL_OPERATOR || LA329_2493 == ON_SYMBOL || LA329_2493 == OPEN_PAR_SYMBOL || ((LA329_2493 >= ORDER_SYMBOL) && (LA329_2493 <= OR_SYMBOL)) || LA329_2493 == PLUS_OPERATOR || LA329_2493 == PROCEDURE_SYMBOL || LA329_2493 == REGEXP_SYMBOL || LA329_2493 == RIGHT_SYMBOL || LA329_2493 == SEMICOLON_SYMBOL || LA329_2493 == SET_SYMBOL || ((LA329_2493 >= SHIFT_LEFT_OPERATOR) && (LA329_2493 <= SHIFT_RIGHT_OPERATOR)) || LA329_2493 == SINGLE_QUOTED_TEXT || LA329_2493 == STRAIGHT_JOIN_SYMBOL || LA329_2493 == UNION_SYMBOL || LA329_2493 == USING_SYMBOL || LA329_2493 == WHERE_SYMBOL || LA329_2493 == WITH_SYMBOL || LA329_2493 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2493;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1134 >= ACCOUNT_SYMBOL) && (LA329_1134 <= XA_SYMBOL)) || LA329_1134 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2494 = LA(4);
                                        if ( (LA329_2494 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_7973 = LA(5);
                                                if ( (LA329_7973 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_7973 >= ACCOUNT_SYMBOL) && (LA329_7973 <= YEAR_SYMBOL)) || LA329_7973 == BACK_TICK_QUOTED_ID || LA329_7973 == DOUBLE_QUOTED_TEXT || LA329_7973 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 7973;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2494 == EOF || ((LA329_2494 >= ACCOUNT_SYMBOL) && (LA329_2494 <= YEAR_SYMBOL)) || LA329_2494 == AND_SYMBOL || LA329_2494 == AS_SYMBOL || LA329_2494 == BACK_TICK_QUOTED_ID || LA329_2494 == BETWEEN_SYMBOL || LA329_2494 == BIN_NUMBER || LA329_2494 == BITWISE_AND_OPERATOR || ((LA329_2494 >= BITWISE_OR_OPERATOR) && (LA329_2494 <= BITWISE_XOR_OPERATOR)) || ((LA329_2494 >= CLOSE_CURLY_SYMBOL) && (LA329_2494 <= COLLATE_SYMBOL)) || LA329_2494 == COMMA_SYMBOL || LA329_2494 == CONCAT_PIPES_SYMBOL || LA329_2494 == CROSS_SYMBOL || ((LA329_2494 >= DIV_OPERATOR) && (LA329_2494 <= DIV_SYMBOL)) || LA329_2494 == DOUBLE_QUOTED_TEXT || LA329_2494 == EQUAL_OPERATOR || LA329_2494 == FOR_SYMBOL || LA329_2494 == FROM_SYMBOL || ((LA329_2494 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2494 <= GREATER_THAN_OPERATOR)) || ((LA329_2494 >= GROUP_SYMBOL) && (LA329_2494 <= HAVING_SYMBOL)) || LA329_2494 == HEX_NUMBER || LA329_2494 == IDENTIFIER || LA329_2494 == INNER_SYMBOL || LA329_2494 == INTO_SYMBOL || LA329_2494 == IN_SYMBOL || LA329_2494 == IS_SYMBOL || ((LA329_2494 >= JOIN_SYMBOL) && (LA329_2494 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2494 >= LEFT_SYMBOL) && (LA329_2494 <= LESS_THAN_OPERATOR)) || ((LA329_2494 >= LIKE_SYMBOL) && (LA329_2494 <= LIMIT_SYMBOL)) || LA329_2494 == LOCK_SYMBOL || LA329_2494 == LOGICAL_AND_OPERATOR || LA329_2494 == LOGICAL_OR_OPERATOR || LA329_2494 == MINUS_OPERATOR || ((LA329_2494 >= MOD_OPERATOR) && (LA329_2494 <= MOD_SYMBOL)) || ((LA329_2494 >= MULT_OPERATOR) && (LA329_2494 <= NATURAL_SYMBOL)) || ((LA329_2494 >= NOT_EQUAL2_OPERATOR) && (LA329_2494 <= NOT_SYMBOL)) || LA329_2494 == NULL_SAFE_EQUAL_OPERATOR || LA329_2494 == ON_SYMBOL || LA329_2494 == OPEN_PAR_SYMBOL || ((LA329_2494 >= ORDER_SYMBOL) && (LA329_2494 <= OR_SYMBOL)) || LA329_2494 == PLUS_OPERATOR || LA329_2494 == PROCEDURE_SYMBOL || LA329_2494 == REGEXP_SYMBOL || LA329_2494 == RIGHT_SYMBOL || LA329_2494 == SEMICOLON_SYMBOL || LA329_2494 == SET_SYMBOL || ((LA329_2494 >= SHIFT_LEFT_OPERATOR) && (LA329_2494 <= SHIFT_RIGHT_OPERATOR)) || LA329_2494 == SINGLE_QUOTED_TEXT || LA329_2494 == STRAIGHT_JOIN_SYMBOL || LA329_2494 == UNION_SYMBOL || LA329_2494 == USING_SYMBOL || LA329_2494 == WHERE_SYMBOL || LA329_2494 == WITH_SYMBOL || LA329_2494 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2494;


                                            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  = 329;
                                    EXCEPTION->state        = 1134;


                                    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  = 329;
                            EXCEPTION->state        = 50;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == COLLATION_SYMBOL))
                {
                    {
                        int LA329_51 = LA(2);
                        if ( (LA329_51 == EOF || ((LA329_51 >= ACCOUNT_SYMBOL) && (LA329_51 <= YEAR_SYMBOL)) || LA329_51 == AND_SYMBOL || LA329_51 == AS_SYMBOL || LA329_51 == BACK_TICK_QUOTED_ID || LA329_51 == BETWEEN_SYMBOL || LA329_51 == BIN_NUMBER || LA329_51 == BITWISE_AND_OPERATOR || ((LA329_51 >= BITWISE_OR_OPERATOR) && (LA329_51 <= BITWISE_XOR_OPERATOR)) || ((LA329_51 >= CLOSE_CURLY_SYMBOL) && (LA329_51 <= COLLATE_SYMBOL)) || LA329_51 == COMMA_SYMBOL || LA329_51 == CONCAT_PIPES_SYMBOL || LA329_51 == CROSS_SYMBOL || ((LA329_51 >= DIV_OPERATOR) && (LA329_51 <= DIV_SYMBOL)) || LA329_51 == DOUBLE_QUOTED_TEXT || LA329_51 == EQUAL_OPERATOR || LA329_51 == FOR_SYMBOL || LA329_51 == FROM_SYMBOL || ((LA329_51 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_51 <= GREATER_THAN_OPERATOR)) || ((LA329_51 >= GROUP_SYMBOL) && (LA329_51 <= HAVING_SYMBOL)) || LA329_51 == HEX_NUMBER || LA329_51 == IDENTIFIER || LA329_51 == INNER_SYMBOL || LA329_51 == INTO_SYMBOL || LA329_51 == IN_SYMBOL || LA329_51 == IS_SYMBOL || ((LA329_51 >= JOIN_SYMBOL) && (LA329_51 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_51 >= LEFT_SYMBOL) && (LA329_51 <= LESS_THAN_OPERATOR)) || ((LA329_51 >= LIKE_SYMBOL) && (LA329_51 <= LIMIT_SYMBOL)) || LA329_51 == LOCK_SYMBOL || LA329_51 == LOGICAL_AND_OPERATOR || LA329_51 == LOGICAL_OR_OPERATOR || LA329_51 == MINUS_OPERATOR || ((LA329_51 >= MOD_OPERATOR) && (LA329_51 <= MOD_SYMBOL)) || ((LA329_51 >= MULT_OPERATOR) && (LA329_51 <= NATURAL_SYMBOL)) || ((LA329_51 >= NOT_EQUAL2_OPERATOR) && (LA329_51 <= NOT_SYMBOL)) || LA329_51 == NULL_SAFE_EQUAL_OPERATOR || LA329_51 == ON_SYMBOL || LA329_51 == OPEN_PAR_SYMBOL || ((LA329_51 >= ORDER_SYMBOL) && (LA329_51 <= OR_SYMBOL)) || LA329_51 == PLUS_OPERATOR || LA329_51 == PROCEDURE_SYMBOL || LA329_51 == REGEXP_SYMBOL || LA329_51 == RIGHT_SYMBOL || LA329_51 == SEMICOLON_SYMBOL || LA329_51 == SET_SYMBOL || ((LA329_51 >= SHIFT_LEFT_OPERATOR) && (LA329_51 <= SHIFT_RIGHT_OPERATOR)) || LA329_51 == SINGLE_QUOTED_TEXT || LA329_51 == STRAIGHT_JOIN_SYMBOL || LA329_51 == UNION_SYMBOL || LA329_51 == USING_SYMBOL || LA329_51 == WHERE_SYMBOL || LA329_51 == WITH_SYMBOL || LA329_51 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_51 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1188 = LA(3);
                                if ( (LA329_1188 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1188 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2496 = LA(4);
                                        if ( (LA329_2496 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8027 = LA(5);
                                                if ( (LA329_8027 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8027 >= ACCOUNT_SYMBOL) && (LA329_8027 <= YEAR_SYMBOL)) || LA329_8027 == BACK_TICK_QUOTED_ID || LA329_8027 == DOUBLE_QUOTED_TEXT || LA329_8027 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8027;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2496 == EOF || ((LA329_2496 >= ACCOUNT_SYMBOL) && (LA329_2496 <= YEAR_SYMBOL)) || LA329_2496 == AND_SYMBOL || LA329_2496 == AS_SYMBOL || LA329_2496 == BACK_TICK_QUOTED_ID || LA329_2496 == BETWEEN_SYMBOL || LA329_2496 == BIN_NUMBER || LA329_2496 == BITWISE_AND_OPERATOR || ((LA329_2496 >= BITWISE_OR_OPERATOR) && (LA329_2496 <= BITWISE_XOR_OPERATOR)) || ((LA329_2496 >= CLOSE_CURLY_SYMBOL) && (LA329_2496 <= COLLATE_SYMBOL)) || LA329_2496 == COMMA_SYMBOL || LA329_2496 == CONCAT_PIPES_SYMBOL || LA329_2496 == CROSS_SYMBOL || ((LA329_2496 >= DIV_OPERATOR) && (LA329_2496 <= DIV_SYMBOL)) || LA329_2496 == DOUBLE_QUOTED_TEXT || LA329_2496 == EQUAL_OPERATOR || LA329_2496 == FOR_SYMBOL || LA329_2496 == FROM_SYMBOL || ((LA329_2496 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2496 <= GREATER_THAN_OPERATOR)) || ((LA329_2496 >= GROUP_SYMBOL) && (LA329_2496 <= HAVING_SYMBOL)) || LA329_2496 == HEX_NUMBER || LA329_2496 == IDENTIFIER || LA329_2496 == INNER_SYMBOL || LA329_2496 == INTO_SYMBOL || LA329_2496 == IN_SYMBOL || LA329_2496 == IS_SYMBOL || ((LA329_2496 >= JOIN_SYMBOL) && (LA329_2496 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2496 >= LEFT_SYMBOL) && (LA329_2496 <= LESS_THAN_OPERATOR)) || ((LA329_2496 >= LIKE_SYMBOL) && (LA329_2496 <= LIMIT_SYMBOL)) || LA329_2496 == LOCK_SYMBOL || LA329_2496 == LOGICAL_AND_OPERATOR || LA329_2496 == LOGICAL_OR_OPERATOR || LA329_2496 == MINUS_OPERATOR || ((LA329_2496 >= MOD_OPERATOR) && (LA329_2496 <= MOD_SYMBOL)) || ((LA329_2496 >= MULT_OPERATOR) && (LA329_2496 <= NATURAL_SYMBOL)) || ((LA329_2496 >= NOT_EQUAL2_OPERATOR) && (LA329_2496 <= NOT_SYMBOL)) || LA329_2496 == NULL_SAFE_EQUAL_OPERATOR || LA329_2496 == ON_SYMBOL || LA329_2496 == OPEN_PAR_SYMBOL || ((LA329_2496 >= ORDER_SYMBOL) && (LA329_2496 <= OR_SYMBOL)) || LA329_2496 == PLUS_OPERATOR || LA329_2496 == PROCEDURE_SYMBOL || LA329_2496 == REGEXP_SYMBOL || LA329_2496 == RIGHT_SYMBOL || LA329_2496 == SEMICOLON_SYMBOL || LA329_2496 == SET_SYMBOL || ((LA329_2496 >= SHIFT_LEFT_OPERATOR) && (LA329_2496 <= SHIFT_RIGHT_OPERATOR)) || LA329_2496 == SINGLE_QUOTED_TEXT || LA329_2496 == STRAIGHT_JOIN_SYMBOL || LA329_2496 == UNION_SYMBOL || LA329_2496 == USING_SYMBOL || LA329_2496 == WHERE_SYMBOL || LA329_2496 == WITH_SYMBOL || LA329_2496 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2496;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1188 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2497 = LA(4);
                                        if ( (LA329_2497 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8081 = LA(5);
                                                if ( (LA329_8081 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8081 >= ACCOUNT_SYMBOL) && (LA329_8081 <= YEAR_SYMBOL)) || LA329_8081 == BACK_TICK_QUOTED_ID || LA329_8081 == DOUBLE_QUOTED_TEXT || LA329_8081 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8081;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2497 == EOF || ((LA329_2497 >= ACCOUNT_SYMBOL) && (LA329_2497 <= YEAR_SYMBOL)) || LA329_2497 == AND_SYMBOL || LA329_2497 == AS_SYMBOL || LA329_2497 == BACK_TICK_QUOTED_ID || LA329_2497 == BETWEEN_SYMBOL || LA329_2497 == BIN_NUMBER || LA329_2497 == BITWISE_AND_OPERATOR || ((LA329_2497 >= BITWISE_OR_OPERATOR) && (LA329_2497 <= BITWISE_XOR_OPERATOR)) || ((LA329_2497 >= CLOSE_CURLY_SYMBOL) && (LA329_2497 <= COLLATE_SYMBOL)) || LA329_2497 == COMMA_SYMBOL || LA329_2497 == CONCAT_PIPES_SYMBOL || LA329_2497 == CROSS_SYMBOL || ((LA329_2497 >= DIV_OPERATOR) && (LA329_2497 <= DIV_SYMBOL)) || LA329_2497 == DOUBLE_QUOTED_TEXT || LA329_2497 == EQUAL_OPERATOR || LA329_2497 == FOR_SYMBOL || LA329_2497 == FROM_SYMBOL || ((LA329_2497 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2497 <= GREATER_THAN_OPERATOR)) || ((LA329_2497 >= GROUP_SYMBOL) && (LA329_2497 <= HAVING_SYMBOL)) || LA329_2497 == HEX_NUMBER || LA329_2497 == IDENTIFIER || LA329_2497 == INNER_SYMBOL || LA329_2497 == INTO_SYMBOL || LA329_2497 == IN_SYMBOL || LA329_2497 == IS_SYMBOL || ((LA329_2497 >= JOIN_SYMBOL) && (LA329_2497 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2497 >= LEFT_SYMBOL) && (LA329_2497 <= LESS_THAN_OPERATOR)) || ((LA329_2497 >= LIKE_SYMBOL) && (LA329_2497 <= LIMIT_SYMBOL)) || LA329_2497 == LOCK_SYMBOL || LA329_2497 == LOGICAL_AND_OPERATOR || LA329_2497 == LOGICAL_OR_OPERATOR || LA329_2497 == MINUS_OPERATOR || ((LA329_2497 >= MOD_OPERATOR) && (LA329_2497 <= MOD_SYMBOL)) || ((LA329_2497 >= MULT_OPERATOR) && (LA329_2497 <= NATURAL_SYMBOL)) || ((LA329_2497 >= NOT_EQUAL2_OPERATOR) && (LA329_2497 <= NOT_SYMBOL)) || LA329_2497 == NULL_SAFE_EQUAL_OPERATOR || LA329_2497 == ON_SYMBOL || LA329_2497 == OPEN_PAR_SYMBOL || ((LA329_2497 >= ORDER_SYMBOL) && (LA329_2497 <= OR_SYMBOL)) || LA329_2497 == PLUS_OPERATOR || LA329_2497 == PROCEDURE_SYMBOL || LA329_2497 == REGEXP_SYMBOL || LA329_2497 == RIGHT_SYMBOL || LA329_2497 == SEMICOLON_SYMBOL || LA329_2497 == SET_SYMBOL || ((LA329_2497 >= SHIFT_LEFT_OPERATOR) && (LA329_2497 <= SHIFT_RIGHT_OPERATOR)) || LA329_2497 == SINGLE_QUOTED_TEXT || LA329_2497 == STRAIGHT_JOIN_SYMBOL || LA329_2497 == UNION_SYMBOL || LA329_2497 == USING_SYMBOL || LA329_2497 == WHERE_SYMBOL || LA329_2497 == WITH_SYMBOL || LA329_2497 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2497;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1188 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2498 = LA(4);
                                        if ( (LA329_2498 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8135 = LA(5);
                                                if ( (LA329_8135 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8135 >= ACCOUNT_SYMBOL) && (LA329_8135 <= YEAR_SYMBOL)) || LA329_8135 == BACK_TICK_QUOTED_ID || LA329_8135 == DOUBLE_QUOTED_TEXT || LA329_8135 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8135;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2498 == EOF || ((LA329_2498 >= ACCOUNT_SYMBOL) && (LA329_2498 <= YEAR_SYMBOL)) || LA329_2498 == AND_SYMBOL || LA329_2498 == AS_SYMBOL || LA329_2498 == BACK_TICK_QUOTED_ID || LA329_2498 == BETWEEN_SYMBOL || LA329_2498 == BIN_NUMBER || LA329_2498 == BITWISE_AND_OPERATOR || ((LA329_2498 >= BITWISE_OR_OPERATOR) && (LA329_2498 <= BITWISE_XOR_OPERATOR)) || ((LA329_2498 >= CLOSE_CURLY_SYMBOL) && (LA329_2498 <= COLLATE_SYMBOL)) || LA329_2498 == COMMA_SYMBOL || LA329_2498 == CONCAT_PIPES_SYMBOL || LA329_2498 == CROSS_SYMBOL || ((LA329_2498 >= DIV_OPERATOR) && (LA329_2498 <= DIV_SYMBOL)) || LA329_2498 == DOUBLE_QUOTED_TEXT || LA329_2498 == EQUAL_OPERATOR || LA329_2498 == FOR_SYMBOL || LA329_2498 == FROM_SYMBOL || ((LA329_2498 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2498 <= GREATER_THAN_OPERATOR)) || ((LA329_2498 >= GROUP_SYMBOL) && (LA329_2498 <= HAVING_SYMBOL)) || LA329_2498 == HEX_NUMBER || LA329_2498 == IDENTIFIER || LA329_2498 == INNER_SYMBOL || LA329_2498 == INTO_SYMBOL || LA329_2498 == IN_SYMBOL || LA329_2498 == IS_SYMBOL || ((LA329_2498 >= JOIN_SYMBOL) && (LA329_2498 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2498 >= LEFT_SYMBOL) && (LA329_2498 <= LESS_THAN_OPERATOR)) || ((LA329_2498 >= LIKE_SYMBOL) && (LA329_2498 <= LIMIT_SYMBOL)) || LA329_2498 == LOCK_SYMBOL || LA329_2498 == LOGICAL_AND_OPERATOR || LA329_2498 == LOGICAL_OR_OPERATOR || LA329_2498 == MINUS_OPERATOR || ((LA329_2498 >= MOD_OPERATOR) && (LA329_2498 <= MOD_SYMBOL)) || ((LA329_2498 >= MULT_OPERATOR) && (LA329_2498 <= NATURAL_SYMBOL)) || ((LA329_2498 >= NOT_EQUAL2_OPERATOR) && (LA329_2498 <= NOT_SYMBOL)) || LA329_2498 == NULL_SAFE_EQUAL_OPERATOR || LA329_2498 == ON_SYMBOL || LA329_2498 == OPEN_PAR_SYMBOL || ((LA329_2498 >= ORDER_SYMBOL) && (LA329_2498 <= OR_SYMBOL)) || LA329_2498 == PLUS_OPERATOR || LA329_2498 == PROCEDURE_SYMBOL || LA329_2498 == REGEXP_SYMBOL || LA329_2498 == RIGHT_SYMBOL || LA329_2498 == SEMICOLON_SYMBOL || LA329_2498 == SET_SYMBOL || ((LA329_2498 >= SHIFT_LEFT_OPERATOR) && (LA329_2498 <= SHIFT_RIGHT_OPERATOR)) || LA329_2498 == SINGLE_QUOTED_TEXT || LA329_2498 == STRAIGHT_JOIN_SYMBOL || LA329_2498 == UNION_SYMBOL || LA329_2498 == USING_SYMBOL || LA329_2498 == WHERE_SYMBOL || LA329_2498 == WITH_SYMBOL || LA329_2498 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2498;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1188 >= ACTION_SYMBOL) && (LA329_1188 <= SHARE_SYMBOL)) || ((LA329_1188 >= SLOW_SYMBOL) && (LA329_1188 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2499 = LA(4);
                                        if ( (LA329_2499 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8189 = LA(5);
                                                if ( (LA329_8189 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8189 >= ACCOUNT_SYMBOL) && (LA329_8189 <= YEAR_SYMBOL)) || LA329_8189 == BACK_TICK_QUOTED_ID || LA329_8189 == DOUBLE_QUOTED_TEXT || LA329_8189 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8189;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2499 == EOF || ((LA329_2499 >= ACCOUNT_SYMBOL) && (LA329_2499 <= YEAR_SYMBOL)) || LA329_2499 == AND_SYMBOL || LA329_2499 == AS_SYMBOL || LA329_2499 == BACK_TICK_QUOTED_ID || LA329_2499 == BETWEEN_SYMBOL || LA329_2499 == BIN_NUMBER || LA329_2499 == BITWISE_AND_OPERATOR || ((LA329_2499 >= BITWISE_OR_OPERATOR) && (LA329_2499 <= BITWISE_XOR_OPERATOR)) || ((LA329_2499 >= CLOSE_CURLY_SYMBOL) && (LA329_2499 <= COLLATE_SYMBOL)) || LA329_2499 == COMMA_SYMBOL || LA329_2499 == CONCAT_PIPES_SYMBOL || LA329_2499 == CROSS_SYMBOL || ((LA329_2499 >= DIV_OPERATOR) && (LA329_2499 <= DIV_SYMBOL)) || LA329_2499 == DOUBLE_QUOTED_TEXT || LA329_2499 == EQUAL_OPERATOR || LA329_2499 == FOR_SYMBOL || LA329_2499 == FROM_SYMBOL || ((LA329_2499 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2499 <= GREATER_THAN_OPERATOR)) || ((LA329_2499 >= GROUP_SYMBOL) && (LA329_2499 <= HAVING_SYMBOL)) || LA329_2499 == HEX_NUMBER || LA329_2499 == IDENTIFIER || LA329_2499 == INNER_SYMBOL || LA329_2499 == INTO_SYMBOL || LA329_2499 == IN_SYMBOL || LA329_2499 == IS_SYMBOL || ((LA329_2499 >= JOIN_SYMBOL) && (LA329_2499 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2499 >= LEFT_SYMBOL) && (LA329_2499 <= LESS_THAN_OPERATOR)) || ((LA329_2499 >= LIKE_SYMBOL) && (LA329_2499 <= LIMIT_SYMBOL)) || LA329_2499 == LOCK_SYMBOL || LA329_2499 == LOGICAL_AND_OPERATOR || LA329_2499 == LOGICAL_OR_OPERATOR || LA329_2499 == MINUS_OPERATOR || ((LA329_2499 >= MOD_OPERATOR) && (LA329_2499 <= MOD_SYMBOL)) || ((LA329_2499 >= MULT_OPERATOR) && (LA329_2499 <= NATURAL_SYMBOL)) || ((LA329_2499 >= NOT_EQUAL2_OPERATOR) && (LA329_2499 <= NOT_SYMBOL)) || LA329_2499 == NULL_SAFE_EQUAL_OPERATOR || LA329_2499 == ON_SYMBOL || LA329_2499 == OPEN_PAR_SYMBOL || ((LA329_2499 >= ORDER_SYMBOL) && (LA329_2499 <= OR_SYMBOL)) || LA329_2499 == PLUS_OPERATOR || LA329_2499 == PROCEDURE_SYMBOL || LA329_2499 == REGEXP_SYMBOL || LA329_2499 == RIGHT_SYMBOL || LA329_2499 == SEMICOLON_SYMBOL || LA329_2499 == SET_SYMBOL || ((LA329_2499 >= SHIFT_LEFT_OPERATOR) && (LA329_2499 <= SHIFT_RIGHT_OPERATOR)) || LA329_2499 == SINGLE_QUOTED_TEXT || LA329_2499 == STRAIGHT_JOIN_SYMBOL || LA329_2499 == UNION_SYMBOL || LA329_2499 == USING_SYMBOL || LA329_2499 == WHERE_SYMBOL || LA329_2499 == WITH_SYMBOL || LA329_2499 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2499;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1188 >= ACCOUNT_SYMBOL) && (LA329_1188 <= XA_SYMBOL)) || LA329_1188 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2500 = LA(4);
                                        if ( (LA329_2500 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8243 = LA(5);
                                                if ( (LA329_8243 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8243 >= ACCOUNT_SYMBOL) && (LA329_8243 <= YEAR_SYMBOL)) || LA329_8243 == BACK_TICK_QUOTED_ID || LA329_8243 == DOUBLE_QUOTED_TEXT || LA329_8243 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8243;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2500 == EOF || ((LA329_2500 >= ACCOUNT_SYMBOL) && (LA329_2500 <= YEAR_SYMBOL)) || LA329_2500 == AND_SYMBOL || LA329_2500 == AS_SYMBOL || LA329_2500 == BACK_TICK_QUOTED_ID || LA329_2500 == BETWEEN_SYMBOL || LA329_2500 == BIN_NUMBER || LA329_2500 == BITWISE_AND_OPERATOR || ((LA329_2500 >= BITWISE_OR_OPERATOR) && (LA329_2500 <= BITWISE_XOR_OPERATOR)) || ((LA329_2500 >= CLOSE_CURLY_SYMBOL) && (LA329_2500 <= COLLATE_SYMBOL)) || LA329_2500 == COMMA_SYMBOL || LA329_2500 == CONCAT_PIPES_SYMBOL || LA329_2500 == CROSS_SYMBOL || ((LA329_2500 >= DIV_OPERATOR) && (LA329_2500 <= DIV_SYMBOL)) || LA329_2500 == DOUBLE_QUOTED_TEXT || LA329_2500 == EQUAL_OPERATOR || LA329_2500 == FOR_SYMBOL || LA329_2500 == FROM_SYMBOL || ((LA329_2500 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2500 <= GREATER_THAN_OPERATOR)) || ((LA329_2500 >= GROUP_SYMBOL) && (LA329_2500 <= HAVING_SYMBOL)) || LA329_2500 == HEX_NUMBER || LA329_2500 == IDENTIFIER || LA329_2500 == INNER_SYMBOL || LA329_2500 == INTO_SYMBOL || LA329_2500 == IN_SYMBOL || LA329_2500 == IS_SYMBOL || ((LA329_2500 >= JOIN_SYMBOL) && (LA329_2500 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2500 >= LEFT_SYMBOL) && (LA329_2500 <= LESS_THAN_OPERATOR)) || ((LA329_2500 >= LIKE_SYMBOL) && (LA329_2500 <= LIMIT_SYMBOL)) || LA329_2500 == LOCK_SYMBOL || LA329_2500 == LOGICAL_AND_OPERATOR || LA329_2500 == LOGICAL_OR_OPERATOR || LA329_2500 == MINUS_OPERATOR || ((LA329_2500 >= MOD_OPERATOR) && (LA329_2500 <= MOD_SYMBOL)) || ((LA329_2500 >= MULT_OPERATOR) && (LA329_2500 <= NATURAL_SYMBOL)) || ((LA329_2500 >= NOT_EQUAL2_OPERATOR) && (LA329_2500 <= NOT_SYMBOL)) || LA329_2500 == NULL_SAFE_EQUAL_OPERATOR || LA329_2500 == ON_SYMBOL || LA329_2500 == OPEN_PAR_SYMBOL || ((LA329_2500 >= ORDER_SYMBOL) && (LA329_2500 <= OR_SYMBOL)) || LA329_2500 == PLUS_OPERATOR || LA329_2500 == PROCEDURE_SYMBOL || LA329_2500 == REGEXP_SYMBOL || LA329_2500 == RIGHT_SYMBOL || LA329_2500 == SEMICOLON_SYMBOL || LA329_2500 == SET_SYMBOL || ((LA329_2500 >= SHIFT_LEFT_OPERATOR) && (LA329_2500 <= SHIFT_RIGHT_OPERATOR)) || LA329_2500 == SINGLE_QUOTED_TEXT || LA329_2500 == STRAIGHT_JOIN_SYMBOL || LA329_2500 == UNION_SYMBOL || LA329_2500 == USING_SYMBOL || LA329_2500 == WHERE_SYMBOL || LA329_2500 == WITH_SYMBOL || LA329_2500 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2500;


                                            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  = 329;
                                    EXCEPTION->state        = 1188;


                                    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  = 329;
                            EXCEPTION->state        = 51;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == MICROSECOND_SYMBOL))
                {
                    {
                        int LA329_52 = LA(2);
                        if ( (LA329_52 == EOF || ((LA329_52 >= ACCOUNT_SYMBOL) && (LA329_52 <= YEAR_SYMBOL)) || LA329_52 == AND_SYMBOL || LA329_52 == AS_SYMBOL || LA329_52 == BACK_TICK_QUOTED_ID || LA329_52 == BETWEEN_SYMBOL || LA329_52 == BIN_NUMBER || LA329_52 == BITWISE_AND_OPERATOR || ((LA329_52 >= BITWISE_OR_OPERATOR) && (LA329_52 <= BITWISE_XOR_OPERATOR)) || ((LA329_52 >= CLOSE_CURLY_SYMBOL) && (LA329_52 <= COLLATE_SYMBOL)) || LA329_52 == COMMA_SYMBOL || LA329_52 == CONCAT_PIPES_SYMBOL || LA329_52 == CROSS_SYMBOL || ((LA329_52 >= DIV_OPERATOR) && (LA329_52 <= DIV_SYMBOL)) || LA329_52 == DOUBLE_QUOTED_TEXT || LA329_52 == EQUAL_OPERATOR || LA329_52 == FOR_SYMBOL || LA329_52 == FROM_SYMBOL || ((LA329_52 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_52 <= GREATER_THAN_OPERATOR)) || ((LA329_52 >= GROUP_SYMBOL) && (LA329_52 <= HAVING_SYMBOL)) || LA329_52 == HEX_NUMBER || LA329_52 == IDENTIFIER || LA329_52 == INNER_SYMBOL || LA329_52 == INTO_SYMBOL || LA329_52 == IN_SYMBOL || LA329_52 == IS_SYMBOL || ((LA329_52 >= JOIN_SYMBOL) && (LA329_52 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_52 >= LEFT_SYMBOL) && (LA329_52 <= LESS_THAN_OPERATOR)) || ((LA329_52 >= LIKE_SYMBOL) && (LA329_52 <= LIMIT_SYMBOL)) || LA329_52 == LOCK_SYMBOL || LA329_52 == LOGICAL_AND_OPERATOR || LA329_52 == LOGICAL_OR_OPERATOR || LA329_52 == MINUS_OPERATOR || ((LA329_52 >= MOD_OPERATOR) && (LA329_52 <= MOD_SYMBOL)) || ((LA329_52 >= MULT_OPERATOR) && (LA329_52 <= NATURAL_SYMBOL)) || ((LA329_52 >= NOT_EQUAL2_OPERATOR) && (LA329_52 <= NOT_SYMBOL)) || LA329_52 == NULL_SAFE_EQUAL_OPERATOR || LA329_52 == ON_SYMBOL || LA329_52 == OPEN_PAR_SYMBOL || ((LA329_52 >= ORDER_SYMBOL) && (LA329_52 <= OR_SYMBOL)) || LA329_52 == PLUS_OPERATOR || LA329_52 == PROCEDURE_SYMBOL || LA329_52 == REGEXP_SYMBOL || LA329_52 == RIGHT_SYMBOL || LA329_52 == SEMICOLON_SYMBOL || LA329_52 == SET_SYMBOL || ((LA329_52 >= SHIFT_LEFT_OPERATOR) && (LA329_52 <= SHIFT_RIGHT_OPERATOR)) || LA329_52 == SINGLE_QUOTED_TEXT || LA329_52 == STRAIGHT_JOIN_SYMBOL || LA329_52 == UNION_SYMBOL || LA329_52 == USING_SYMBOL || LA329_52 == WHERE_SYMBOL || LA329_52 == WITH_SYMBOL || LA329_52 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_52 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1242 = LA(3);
                                if ( (LA329_1242 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1242 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2502 = LA(4);
                                        if ( (LA329_2502 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8297 = LA(5);
                                                if ( (LA329_8297 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8297 >= ACCOUNT_SYMBOL) && (LA329_8297 <= YEAR_SYMBOL)) || LA329_8297 == BACK_TICK_QUOTED_ID || LA329_8297 == DOUBLE_QUOTED_TEXT || LA329_8297 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8297;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2502 == EOF || ((LA329_2502 >= ACCOUNT_SYMBOL) && (LA329_2502 <= YEAR_SYMBOL)) || LA329_2502 == AND_SYMBOL || LA329_2502 == AS_SYMBOL || LA329_2502 == BACK_TICK_QUOTED_ID || LA329_2502 == BETWEEN_SYMBOL || LA329_2502 == BIN_NUMBER || LA329_2502 == BITWISE_AND_OPERATOR || ((LA329_2502 >= BITWISE_OR_OPERATOR) && (LA329_2502 <= BITWISE_XOR_OPERATOR)) || ((LA329_2502 >= CLOSE_CURLY_SYMBOL) && (LA329_2502 <= COLLATE_SYMBOL)) || LA329_2502 == COMMA_SYMBOL || LA329_2502 == CONCAT_PIPES_SYMBOL || LA329_2502 == CROSS_SYMBOL || ((LA329_2502 >= DIV_OPERATOR) && (LA329_2502 <= DIV_SYMBOL)) || LA329_2502 == DOUBLE_QUOTED_TEXT || LA329_2502 == EQUAL_OPERATOR || LA329_2502 == FOR_SYMBOL || LA329_2502 == FROM_SYMBOL || ((LA329_2502 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2502 <= GREATER_THAN_OPERATOR)) || ((LA329_2502 >= GROUP_SYMBOL) && (LA329_2502 <= HAVING_SYMBOL)) || LA329_2502 == HEX_NUMBER || LA329_2502 == IDENTIFIER || LA329_2502 == INNER_SYMBOL || LA329_2502 == INTO_SYMBOL || LA329_2502 == IN_SYMBOL || LA329_2502 == IS_SYMBOL || ((LA329_2502 >= JOIN_SYMBOL) && (LA329_2502 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2502 >= LEFT_SYMBOL) && (LA329_2502 <= LESS_THAN_OPERATOR)) || ((LA329_2502 >= LIKE_SYMBOL) && (LA329_2502 <= LIMIT_SYMBOL)) || LA329_2502 == LOCK_SYMBOL || LA329_2502 == LOGICAL_AND_OPERATOR || LA329_2502 == LOGICAL_OR_OPERATOR || LA329_2502 == MINUS_OPERATOR || ((LA329_2502 >= MOD_OPERATOR) && (LA329_2502 <= MOD_SYMBOL)) || ((LA329_2502 >= MULT_OPERATOR) && (LA329_2502 <= NATURAL_SYMBOL)) || ((LA329_2502 >= NOT_EQUAL2_OPERATOR) && (LA329_2502 <= NOT_SYMBOL)) || LA329_2502 == NULL_SAFE_EQUAL_OPERATOR || LA329_2502 == ON_SYMBOL || LA329_2502 == OPEN_PAR_SYMBOL || ((LA329_2502 >= ORDER_SYMBOL) && (LA329_2502 <= OR_SYMBOL)) || LA329_2502 == PLUS_OPERATOR || LA329_2502 == PROCEDURE_SYMBOL || LA329_2502 == REGEXP_SYMBOL || LA329_2502 == RIGHT_SYMBOL || LA329_2502 == SEMICOLON_SYMBOL || LA329_2502 == SET_SYMBOL || ((LA329_2502 >= SHIFT_LEFT_OPERATOR) && (LA329_2502 <= SHIFT_RIGHT_OPERATOR)) || LA329_2502 == SINGLE_QUOTED_TEXT || LA329_2502 == STRAIGHT_JOIN_SYMBOL || LA329_2502 == UNION_SYMBOL || LA329_2502 == USING_SYMBOL || LA329_2502 == WHERE_SYMBOL || LA329_2502 == WITH_SYMBOL || LA329_2502 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2502;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1242 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2503 = LA(4);
                                        if ( (LA329_2503 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8351 = LA(5);
                                                if ( (LA329_8351 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8351 >= ACCOUNT_SYMBOL) && (LA329_8351 <= YEAR_SYMBOL)) || LA329_8351 == BACK_TICK_QUOTED_ID || LA329_8351 == DOUBLE_QUOTED_TEXT || LA329_8351 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8351;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2503 == EOF || ((LA329_2503 >= ACCOUNT_SYMBOL) && (LA329_2503 <= YEAR_SYMBOL)) || LA329_2503 == AND_SYMBOL || LA329_2503 == AS_SYMBOL || LA329_2503 == BACK_TICK_QUOTED_ID || LA329_2503 == BETWEEN_SYMBOL || LA329_2503 == BIN_NUMBER || LA329_2503 == BITWISE_AND_OPERATOR || ((LA329_2503 >= BITWISE_OR_OPERATOR) && (LA329_2503 <= BITWISE_XOR_OPERATOR)) || ((LA329_2503 >= CLOSE_CURLY_SYMBOL) && (LA329_2503 <= COLLATE_SYMBOL)) || LA329_2503 == COMMA_SYMBOL || LA329_2503 == CONCAT_PIPES_SYMBOL || LA329_2503 == CROSS_SYMBOL || ((LA329_2503 >= DIV_OPERATOR) && (LA329_2503 <= DIV_SYMBOL)) || LA329_2503 == DOUBLE_QUOTED_TEXT || LA329_2503 == EQUAL_OPERATOR || LA329_2503 == FOR_SYMBOL || LA329_2503 == FROM_SYMBOL || ((LA329_2503 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2503 <= GREATER_THAN_OPERATOR)) || ((LA329_2503 >= GROUP_SYMBOL) && (LA329_2503 <= HAVING_SYMBOL)) || LA329_2503 == HEX_NUMBER || LA329_2503 == IDENTIFIER || LA329_2503 == INNER_SYMBOL || LA329_2503 == INTO_SYMBOL || LA329_2503 == IN_SYMBOL || LA329_2503 == IS_SYMBOL || ((LA329_2503 >= JOIN_SYMBOL) && (LA329_2503 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2503 >= LEFT_SYMBOL) && (LA329_2503 <= LESS_THAN_OPERATOR)) || ((LA329_2503 >= LIKE_SYMBOL) && (LA329_2503 <= LIMIT_SYMBOL)) || LA329_2503 == LOCK_SYMBOL || LA329_2503 == LOGICAL_AND_OPERATOR || LA329_2503 == LOGICAL_OR_OPERATOR || LA329_2503 == MINUS_OPERATOR || ((LA329_2503 >= MOD_OPERATOR) && (LA329_2503 <= MOD_SYMBOL)) || ((LA329_2503 >= MULT_OPERATOR) && (LA329_2503 <= NATURAL_SYMBOL)) || ((LA329_2503 >= NOT_EQUAL2_OPERATOR) && (LA329_2503 <= NOT_SYMBOL)) || LA329_2503 == NULL_SAFE_EQUAL_OPERATOR || LA329_2503 == ON_SYMBOL || LA329_2503 == OPEN_PAR_SYMBOL || ((LA329_2503 >= ORDER_SYMBOL) && (LA329_2503 <= OR_SYMBOL)) || LA329_2503 == PLUS_OPERATOR || LA329_2503 == PROCEDURE_SYMBOL || LA329_2503 == REGEXP_SYMBOL || LA329_2503 == RIGHT_SYMBOL || LA329_2503 == SEMICOLON_SYMBOL || LA329_2503 == SET_SYMBOL || ((LA329_2503 >= SHIFT_LEFT_OPERATOR) && (LA329_2503 <= SHIFT_RIGHT_OPERATOR)) || LA329_2503 == SINGLE_QUOTED_TEXT || LA329_2503 == STRAIGHT_JOIN_SYMBOL || LA329_2503 == UNION_SYMBOL || LA329_2503 == USING_SYMBOL || LA329_2503 == WHERE_SYMBOL || LA329_2503 == WITH_SYMBOL || LA329_2503 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2503;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1242 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2504 = LA(4);
                                        if ( (LA329_2504 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8405 = LA(5);
                                                if ( (LA329_8405 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8405 >= ACCOUNT_SYMBOL) && (LA329_8405 <= YEAR_SYMBOL)) || LA329_8405 == BACK_TICK_QUOTED_ID || LA329_8405 == DOUBLE_QUOTED_TEXT || LA329_8405 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8405;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2504 == EOF || ((LA329_2504 >= ACCOUNT_SYMBOL) && (LA329_2504 <= YEAR_SYMBOL)) || LA329_2504 == AND_SYMBOL || LA329_2504 == AS_SYMBOL || LA329_2504 == BACK_TICK_QUOTED_ID || LA329_2504 == BETWEEN_SYMBOL || LA329_2504 == BIN_NUMBER || LA329_2504 == BITWISE_AND_OPERATOR || ((LA329_2504 >= BITWISE_OR_OPERATOR) && (LA329_2504 <= BITWISE_XOR_OPERATOR)) || ((LA329_2504 >= CLOSE_CURLY_SYMBOL) && (LA329_2504 <= COLLATE_SYMBOL)) || LA329_2504 == COMMA_SYMBOL || LA329_2504 == CONCAT_PIPES_SYMBOL || LA329_2504 == CROSS_SYMBOL || ((LA329_2504 >= DIV_OPERATOR) && (LA329_2504 <= DIV_SYMBOL)) || LA329_2504 == DOUBLE_QUOTED_TEXT || LA329_2504 == EQUAL_OPERATOR || LA329_2504 == FOR_SYMBOL || LA329_2504 == FROM_SYMBOL || ((LA329_2504 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2504 <= GREATER_THAN_OPERATOR)) || ((LA329_2504 >= GROUP_SYMBOL) && (LA329_2504 <= HAVING_SYMBOL)) || LA329_2504 == HEX_NUMBER || LA329_2504 == IDENTIFIER || LA329_2504 == INNER_SYMBOL || LA329_2504 == INTO_SYMBOL || LA329_2504 == IN_SYMBOL || LA329_2504 == IS_SYMBOL || ((LA329_2504 >= JOIN_SYMBOL) && (LA329_2504 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2504 >= LEFT_SYMBOL) && (LA329_2504 <= LESS_THAN_OPERATOR)) || ((LA329_2504 >= LIKE_SYMBOL) && (LA329_2504 <= LIMIT_SYMBOL)) || LA329_2504 == LOCK_SYMBOL || LA329_2504 == LOGICAL_AND_OPERATOR || LA329_2504 == LOGICAL_OR_OPERATOR || LA329_2504 == MINUS_OPERATOR || ((LA329_2504 >= MOD_OPERATOR) && (LA329_2504 <= MOD_SYMBOL)) || ((LA329_2504 >= MULT_OPERATOR) && (LA329_2504 <= NATURAL_SYMBOL)) || ((LA329_2504 >= NOT_EQUAL2_OPERATOR) && (LA329_2504 <= NOT_SYMBOL)) || LA329_2504 == NULL_SAFE_EQUAL_OPERATOR || LA329_2504 == ON_SYMBOL || LA329_2504 == OPEN_PAR_SYMBOL || ((LA329_2504 >= ORDER_SYMBOL) && (LA329_2504 <= OR_SYMBOL)) || LA329_2504 == PLUS_OPERATOR || LA329_2504 == PROCEDURE_SYMBOL || LA329_2504 == REGEXP_SYMBOL || LA329_2504 == RIGHT_SYMBOL || LA329_2504 == SEMICOLON_SYMBOL || LA329_2504 == SET_SYMBOL || ((LA329_2504 >= SHIFT_LEFT_OPERATOR) && (LA329_2504 <= SHIFT_RIGHT_OPERATOR)) || LA329_2504 == SINGLE_QUOTED_TEXT || LA329_2504 == STRAIGHT_JOIN_SYMBOL || LA329_2504 == UNION_SYMBOL || LA329_2504 == USING_SYMBOL || LA329_2504 == WHERE_SYMBOL || LA329_2504 == WITH_SYMBOL || LA329_2504 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2504;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1242 >= ACTION_SYMBOL) && (LA329_1242 <= SHARE_SYMBOL)) || ((LA329_1242 >= SLOW_SYMBOL) && (LA329_1242 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2505 = LA(4);
                                        if ( (LA329_2505 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8459 = LA(5);
                                                if ( (LA329_8459 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8459 >= ACCOUNT_SYMBOL) && (LA329_8459 <= YEAR_SYMBOL)) || LA329_8459 == BACK_TICK_QUOTED_ID || LA329_8459 == DOUBLE_QUOTED_TEXT || LA329_8459 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8459;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2505 == EOF || ((LA329_2505 >= ACCOUNT_SYMBOL) && (LA329_2505 <= YEAR_SYMBOL)) || LA329_2505 == AND_SYMBOL || LA329_2505 == AS_SYMBOL || LA329_2505 == BACK_TICK_QUOTED_ID || LA329_2505 == BETWEEN_SYMBOL || LA329_2505 == BIN_NUMBER || LA329_2505 == BITWISE_AND_OPERATOR || ((LA329_2505 >= BITWISE_OR_OPERATOR) && (LA329_2505 <= BITWISE_XOR_OPERATOR)) || ((LA329_2505 >= CLOSE_CURLY_SYMBOL) && (LA329_2505 <= COLLATE_SYMBOL)) || LA329_2505 == COMMA_SYMBOL || LA329_2505 == CONCAT_PIPES_SYMBOL || LA329_2505 == CROSS_SYMBOL || ((LA329_2505 >= DIV_OPERATOR) && (LA329_2505 <= DIV_SYMBOL)) || LA329_2505 == DOUBLE_QUOTED_TEXT || LA329_2505 == EQUAL_OPERATOR || LA329_2505 == FOR_SYMBOL || LA329_2505 == FROM_SYMBOL || ((LA329_2505 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2505 <= GREATER_THAN_OPERATOR)) || ((LA329_2505 >= GROUP_SYMBOL) && (LA329_2505 <= HAVING_SYMBOL)) || LA329_2505 == HEX_NUMBER || LA329_2505 == IDENTIFIER || LA329_2505 == INNER_SYMBOL || LA329_2505 == INTO_SYMBOL || LA329_2505 == IN_SYMBOL || LA329_2505 == IS_SYMBOL || ((LA329_2505 >= JOIN_SYMBOL) && (LA329_2505 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2505 >= LEFT_SYMBOL) && (LA329_2505 <= LESS_THAN_OPERATOR)) || ((LA329_2505 >= LIKE_SYMBOL) && (LA329_2505 <= LIMIT_SYMBOL)) || LA329_2505 == LOCK_SYMBOL || LA329_2505 == LOGICAL_AND_OPERATOR || LA329_2505 == LOGICAL_OR_OPERATOR || LA329_2505 == MINUS_OPERATOR || ((LA329_2505 >= MOD_OPERATOR) && (LA329_2505 <= MOD_SYMBOL)) || ((LA329_2505 >= MULT_OPERATOR) && (LA329_2505 <= NATURAL_SYMBOL)) || ((LA329_2505 >= NOT_EQUAL2_OPERATOR) && (LA329_2505 <= NOT_SYMBOL)) || LA329_2505 == NULL_SAFE_EQUAL_OPERATOR || LA329_2505 == ON_SYMBOL || LA329_2505 == OPEN_PAR_SYMBOL || ((LA329_2505 >= ORDER_SYMBOL) && (LA329_2505 <= OR_SYMBOL)) || LA329_2505 == PLUS_OPERATOR || LA329_2505 == PROCEDURE_SYMBOL || LA329_2505 == REGEXP_SYMBOL || LA329_2505 == RIGHT_SYMBOL || LA329_2505 == SEMICOLON_SYMBOL || LA329_2505 == SET_SYMBOL || ((LA329_2505 >= SHIFT_LEFT_OPERATOR) && (LA329_2505 <= SHIFT_RIGHT_OPERATOR)) || LA329_2505 == SINGLE_QUOTED_TEXT || LA329_2505 == STRAIGHT_JOIN_SYMBOL || LA329_2505 == UNION_SYMBOL || LA329_2505 == USING_SYMBOL || LA329_2505 == WHERE_SYMBOL || LA329_2505 == WITH_SYMBOL || LA329_2505 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2505;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1242 >= ACCOUNT_SYMBOL) && (LA329_1242 <= XA_SYMBOL)) || LA329_1242 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2506 = LA(4);
                                        if ( (LA329_2506 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8513 = LA(5);
                                                if ( (LA329_8513 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8513 >= ACCOUNT_SYMBOL) && (LA329_8513 <= YEAR_SYMBOL)) || LA329_8513 == BACK_TICK_QUOTED_ID || LA329_8513 == DOUBLE_QUOTED_TEXT || LA329_8513 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8513;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2506 == EOF || ((LA329_2506 >= ACCOUNT_SYMBOL) && (LA329_2506 <= YEAR_SYMBOL)) || LA329_2506 == AND_SYMBOL || LA329_2506 == AS_SYMBOL || LA329_2506 == BACK_TICK_QUOTED_ID || LA329_2506 == BETWEEN_SYMBOL || LA329_2506 == BIN_NUMBER || LA329_2506 == BITWISE_AND_OPERATOR || ((LA329_2506 >= BITWISE_OR_OPERATOR) && (LA329_2506 <= BITWISE_XOR_OPERATOR)) || ((LA329_2506 >= CLOSE_CURLY_SYMBOL) && (LA329_2506 <= COLLATE_SYMBOL)) || LA329_2506 == COMMA_SYMBOL || LA329_2506 == CONCAT_PIPES_SYMBOL || LA329_2506 == CROSS_SYMBOL || ((LA329_2506 >= DIV_OPERATOR) && (LA329_2506 <= DIV_SYMBOL)) || LA329_2506 == DOUBLE_QUOTED_TEXT || LA329_2506 == EQUAL_OPERATOR || LA329_2506 == FOR_SYMBOL || LA329_2506 == FROM_SYMBOL || ((LA329_2506 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2506 <= GREATER_THAN_OPERATOR)) || ((LA329_2506 >= GROUP_SYMBOL) && (LA329_2506 <= HAVING_SYMBOL)) || LA329_2506 == HEX_NUMBER || LA329_2506 == IDENTIFIER || LA329_2506 == INNER_SYMBOL || LA329_2506 == INTO_SYMBOL || LA329_2506 == IN_SYMBOL || LA329_2506 == IS_SYMBOL || ((LA329_2506 >= JOIN_SYMBOL) && (LA329_2506 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2506 >= LEFT_SYMBOL) && (LA329_2506 <= LESS_THAN_OPERATOR)) || ((LA329_2506 >= LIKE_SYMBOL) && (LA329_2506 <= LIMIT_SYMBOL)) || LA329_2506 == LOCK_SYMBOL || LA329_2506 == LOGICAL_AND_OPERATOR || LA329_2506 == LOGICAL_OR_OPERATOR || LA329_2506 == MINUS_OPERATOR || ((LA329_2506 >= MOD_OPERATOR) && (LA329_2506 <= MOD_SYMBOL)) || ((LA329_2506 >= MULT_OPERATOR) && (LA329_2506 <= NATURAL_SYMBOL)) || ((LA329_2506 >= NOT_EQUAL2_OPERATOR) && (LA329_2506 <= NOT_SYMBOL)) || LA329_2506 == NULL_SAFE_EQUAL_OPERATOR || LA329_2506 == ON_SYMBOL || LA329_2506 == OPEN_PAR_SYMBOL || ((LA329_2506 >= ORDER_SYMBOL) && (LA329_2506 <= OR_SYMBOL)) || LA329_2506 == PLUS_OPERATOR || LA329_2506 == PROCEDURE_SYMBOL || LA329_2506 == REGEXP_SYMBOL || LA329_2506 == RIGHT_SYMBOL || LA329_2506 == SEMICOLON_SYMBOL || LA329_2506 == SET_SYMBOL || ((LA329_2506 >= SHIFT_LEFT_OPERATOR) && (LA329_2506 <= SHIFT_RIGHT_OPERATOR)) || LA329_2506 == SINGLE_QUOTED_TEXT || LA329_2506 == STRAIGHT_JOIN_SYMBOL || LA329_2506 == UNION_SYMBOL || LA329_2506 == USING_SYMBOL || LA329_2506 == WHERE_SYMBOL || LA329_2506 == WITH_SYMBOL || LA329_2506 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2506;


                                            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  = 329;
                                    EXCEPTION->state        = 1242;


                                    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  = 329;
                            EXCEPTION->state        = 52;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == TRUNCATE_SYMBOL))
                {
                    {
                        int LA329_55 = LA(2);
                        if ( (LA329_55 == EOF || ((LA329_55 >= ACCOUNT_SYMBOL) && (LA329_55 <= YEAR_SYMBOL)) || LA329_55 == AND_SYMBOL || LA329_55 == AS_SYMBOL || LA329_55 == BACK_TICK_QUOTED_ID || LA329_55 == BETWEEN_SYMBOL || LA329_55 == BIN_NUMBER || LA329_55 == BITWISE_AND_OPERATOR || ((LA329_55 >= BITWISE_OR_OPERATOR) && (LA329_55 <= BITWISE_XOR_OPERATOR)) || ((LA329_55 >= CLOSE_CURLY_SYMBOL) && (LA329_55 <= COLLATE_SYMBOL)) || LA329_55 == COMMA_SYMBOL || LA329_55 == CONCAT_PIPES_SYMBOL || LA329_55 == CROSS_SYMBOL || ((LA329_55 >= DIV_OPERATOR) && (LA329_55 <= DIV_SYMBOL)) || LA329_55 == DOUBLE_QUOTED_TEXT || LA329_55 == EQUAL_OPERATOR || LA329_55 == FOR_SYMBOL || LA329_55 == FROM_SYMBOL || ((LA329_55 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_55 <= GREATER_THAN_OPERATOR)) || ((LA329_55 >= GROUP_SYMBOL) && (LA329_55 <= HAVING_SYMBOL)) || LA329_55 == HEX_NUMBER || LA329_55 == IDENTIFIER || LA329_55 == INNER_SYMBOL || LA329_55 == INTO_SYMBOL || LA329_55 == IN_SYMBOL || LA329_55 == IS_SYMBOL || ((LA329_55 >= JOIN_SYMBOL) && (LA329_55 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_55 >= LEFT_SYMBOL) && (LA329_55 <= LESS_THAN_OPERATOR)) || ((LA329_55 >= LIKE_SYMBOL) && (LA329_55 <= LIMIT_SYMBOL)) || LA329_55 == LOCK_SYMBOL || LA329_55 == LOGICAL_AND_OPERATOR || LA329_55 == LOGICAL_OR_OPERATOR || LA329_55 == MINUS_OPERATOR || ((LA329_55 >= MOD_OPERATOR) && (LA329_55 <= MOD_SYMBOL)) || ((LA329_55 >= MULT_OPERATOR) && (LA329_55 <= NATURAL_SYMBOL)) || ((LA329_55 >= NOT_EQUAL2_OPERATOR) && (LA329_55 <= NOT_SYMBOL)) || LA329_55 == NULL_SAFE_EQUAL_OPERATOR || LA329_55 == ON_SYMBOL || LA329_55 == OPEN_PAR_SYMBOL || ((LA329_55 >= ORDER_SYMBOL) && (LA329_55 <= OR_SYMBOL)) || LA329_55 == PLUS_OPERATOR || LA329_55 == PROCEDURE_SYMBOL || LA329_55 == REGEXP_SYMBOL || LA329_55 == RIGHT_SYMBOL || LA329_55 == SEMICOLON_SYMBOL || LA329_55 == SET_SYMBOL || ((LA329_55 >= SHIFT_LEFT_OPERATOR) && (LA329_55 <= SHIFT_RIGHT_OPERATOR)) || LA329_55 == SINGLE_QUOTED_TEXT || LA329_55 == STRAIGHT_JOIN_SYMBOL || LA329_55 == UNION_SYMBOL || LA329_55 == USING_SYMBOL || LA329_55 == WHERE_SYMBOL || LA329_55 == WITH_SYMBOL || LA329_55 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_55 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1296 = LA(3);
                                if ( (LA329_1296 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1296 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2508 = LA(4);
                                        if ( (LA329_2508 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8567 = LA(5);
                                                if ( (LA329_8567 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8567 >= ACCOUNT_SYMBOL) && (LA329_8567 <= YEAR_SYMBOL)) || LA329_8567 == BACK_TICK_QUOTED_ID || LA329_8567 == DOUBLE_QUOTED_TEXT || LA329_8567 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8567;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2508 == EOF || ((LA329_2508 >= ACCOUNT_SYMBOL) && (LA329_2508 <= YEAR_SYMBOL)) || LA329_2508 == AND_SYMBOL || LA329_2508 == AS_SYMBOL || LA329_2508 == BACK_TICK_QUOTED_ID || LA329_2508 == BETWEEN_SYMBOL || LA329_2508 == BIN_NUMBER || LA329_2508 == BITWISE_AND_OPERATOR || ((LA329_2508 >= BITWISE_OR_OPERATOR) && (LA329_2508 <= BITWISE_XOR_OPERATOR)) || ((LA329_2508 >= CLOSE_CURLY_SYMBOL) && (LA329_2508 <= COLLATE_SYMBOL)) || LA329_2508 == COMMA_SYMBOL || LA329_2508 == CONCAT_PIPES_SYMBOL || LA329_2508 == CROSS_SYMBOL || ((LA329_2508 >= DIV_OPERATOR) && (LA329_2508 <= DIV_SYMBOL)) || LA329_2508 == DOUBLE_QUOTED_TEXT || LA329_2508 == EQUAL_OPERATOR || LA329_2508 == FOR_SYMBOL || LA329_2508 == FROM_SYMBOL || ((LA329_2508 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2508 <= GREATER_THAN_OPERATOR)) || ((LA329_2508 >= GROUP_SYMBOL) && (LA329_2508 <= HAVING_SYMBOL)) || LA329_2508 == HEX_NUMBER || LA329_2508 == IDENTIFIER || LA329_2508 == INNER_SYMBOL || LA329_2508 == INTO_SYMBOL || LA329_2508 == IN_SYMBOL || LA329_2508 == IS_SYMBOL || ((LA329_2508 >= JOIN_SYMBOL) && (LA329_2508 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2508 >= LEFT_SYMBOL) && (LA329_2508 <= LESS_THAN_OPERATOR)) || ((LA329_2508 >= LIKE_SYMBOL) && (LA329_2508 <= LIMIT_SYMBOL)) || LA329_2508 == LOCK_SYMBOL || LA329_2508 == LOGICAL_AND_OPERATOR || LA329_2508 == LOGICAL_OR_OPERATOR || LA329_2508 == MINUS_OPERATOR || ((LA329_2508 >= MOD_OPERATOR) && (LA329_2508 <= MOD_SYMBOL)) || ((LA329_2508 >= MULT_OPERATOR) && (LA329_2508 <= NATURAL_SYMBOL)) || ((LA329_2508 >= NOT_EQUAL2_OPERATOR) && (LA329_2508 <= NOT_SYMBOL)) || LA329_2508 == NULL_SAFE_EQUAL_OPERATOR || LA329_2508 == ON_SYMBOL || LA329_2508 == OPEN_PAR_SYMBOL || ((LA329_2508 >= ORDER_SYMBOL) && (LA329_2508 <= OR_SYMBOL)) || LA329_2508 == PLUS_OPERATOR || LA329_2508 == PROCEDURE_SYMBOL || LA329_2508 == REGEXP_SYMBOL || LA329_2508 == RIGHT_SYMBOL || LA329_2508 == SEMICOLON_SYMBOL || LA329_2508 == SET_SYMBOL || ((LA329_2508 >= SHIFT_LEFT_OPERATOR) && (LA329_2508 <= SHIFT_RIGHT_OPERATOR)) || LA329_2508 == SINGLE_QUOTED_TEXT || LA329_2508 == STRAIGHT_JOIN_SYMBOL || LA329_2508 == UNION_SYMBOL || LA329_2508 == USING_SYMBOL || LA329_2508 == WHERE_SYMBOL || LA329_2508 == WITH_SYMBOL || LA329_2508 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2508;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1296 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2509 = LA(4);
                                        if ( (LA329_2509 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8621 = LA(5);
                                                if ( (LA329_8621 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8621 >= ACCOUNT_SYMBOL) && (LA329_8621 <= YEAR_SYMBOL)) || LA329_8621 == BACK_TICK_QUOTED_ID || LA329_8621 == DOUBLE_QUOTED_TEXT || LA329_8621 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8621;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2509 == EOF || ((LA329_2509 >= ACCOUNT_SYMBOL) && (LA329_2509 <= YEAR_SYMBOL)) || LA329_2509 == AND_SYMBOL || LA329_2509 == AS_SYMBOL || LA329_2509 == BACK_TICK_QUOTED_ID || LA329_2509 == BETWEEN_SYMBOL || LA329_2509 == BIN_NUMBER || LA329_2509 == BITWISE_AND_OPERATOR || ((LA329_2509 >= BITWISE_OR_OPERATOR) && (LA329_2509 <= BITWISE_XOR_OPERATOR)) || ((LA329_2509 >= CLOSE_CURLY_SYMBOL) && (LA329_2509 <= COLLATE_SYMBOL)) || LA329_2509 == COMMA_SYMBOL || LA329_2509 == CONCAT_PIPES_SYMBOL || LA329_2509 == CROSS_SYMBOL || ((LA329_2509 >= DIV_OPERATOR) && (LA329_2509 <= DIV_SYMBOL)) || LA329_2509 == DOUBLE_QUOTED_TEXT || LA329_2509 == EQUAL_OPERATOR || LA329_2509 == FOR_SYMBOL || LA329_2509 == FROM_SYMBOL || ((LA329_2509 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2509 <= GREATER_THAN_OPERATOR)) || ((LA329_2509 >= GROUP_SYMBOL) && (LA329_2509 <= HAVING_SYMBOL)) || LA329_2509 == HEX_NUMBER || LA329_2509 == IDENTIFIER || LA329_2509 == INNER_SYMBOL || LA329_2509 == INTO_SYMBOL || LA329_2509 == IN_SYMBOL || LA329_2509 == IS_SYMBOL || ((LA329_2509 >= JOIN_SYMBOL) && (LA329_2509 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2509 >= LEFT_SYMBOL) && (LA329_2509 <= LESS_THAN_OPERATOR)) || ((LA329_2509 >= LIKE_SYMBOL) && (LA329_2509 <= LIMIT_SYMBOL)) || LA329_2509 == LOCK_SYMBOL || LA329_2509 == LOGICAL_AND_OPERATOR || LA329_2509 == LOGICAL_OR_OPERATOR || LA329_2509 == MINUS_OPERATOR || ((LA329_2509 >= MOD_OPERATOR) && (LA329_2509 <= MOD_SYMBOL)) || ((LA329_2509 >= MULT_OPERATOR) && (LA329_2509 <= NATURAL_SYMBOL)) || ((LA329_2509 >= NOT_EQUAL2_OPERATOR) && (LA329_2509 <= NOT_SYMBOL)) || LA329_2509 == NULL_SAFE_EQUAL_OPERATOR || LA329_2509 == ON_SYMBOL || LA329_2509 == OPEN_PAR_SYMBOL || ((LA329_2509 >= ORDER_SYMBOL) && (LA329_2509 <= OR_SYMBOL)) || LA329_2509 == PLUS_OPERATOR || LA329_2509 == PROCEDURE_SYMBOL || LA329_2509 == REGEXP_SYMBOL || LA329_2509 == RIGHT_SYMBOL || LA329_2509 == SEMICOLON_SYMBOL || LA329_2509 == SET_SYMBOL || ((LA329_2509 >= SHIFT_LEFT_OPERATOR) && (LA329_2509 <= SHIFT_RIGHT_OPERATOR)) || LA329_2509 == SINGLE_QUOTED_TEXT || LA329_2509 == STRAIGHT_JOIN_SYMBOL || LA329_2509 == UNION_SYMBOL || LA329_2509 == USING_SYMBOL || LA329_2509 == WHERE_SYMBOL || LA329_2509 == WITH_SYMBOL || LA329_2509 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2509;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1296 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2510 = LA(4);
                                        if ( (LA329_2510 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8675 = LA(5);
                                                if ( (LA329_8675 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8675 >= ACCOUNT_SYMBOL) && (LA329_8675 <= YEAR_SYMBOL)) || LA329_8675 == BACK_TICK_QUOTED_ID || LA329_8675 == DOUBLE_QUOTED_TEXT || LA329_8675 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8675;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2510 == EOF || ((LA329_2510 >= ACCOUNT_SYMBOL) && (LA329_2510 <= YEAR_SYMBOL)) || LA329_2510 == AND_SYMBOL || LA329_2510 == AS_SYMBOL || LA329_2510 == BACK_TICK_QUOTED_ID || LA329_2510 == BETWEEN_SYMBOL || LA329_2510 == BIN_NUMBER || LA329_2510 == BITWISE_AND_OPERATOR || ((LA329_2510 >= BITWISE_OR_OPERATOR) && (LA329_2510 <= BITWISE_XOR_OPERATOR)) || ((LA329_2510 >= CLOSE_CURLY_SYMBOL) && (LA329_2510 <= COLLATE_SYMBOL)) || LA329_2510 == COMMA_SYMBOL || LA329_2510 == CONCAT_PIPES_SYMBOL || LA329_2510 == CROSS_SYMBOL || ((LA329_2510 >= DIV_OPERATOR) && (LA329_2510 <= DIV_SYMBOL)) || LA329_2510 == DOUBLE_QUOTED_TEXT || LA329_2510 == EQUAL_OPERATOR || LA329_2510 == FOR_SYMBOL || LA329_2510 == FROM_SYMBOL || ((LA329_2510 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2510 <= GREATER_THAN_OPERATOR)) || ((LA329_2510 >= GROUP_SYMBOL) && (LA329_2510 <= HAVING_SYMBOL)) || LA329_2510 == HEX_NUMBER || LA329_2510 == IDENTIFIER || LA329_2510 == INNER_SYMBOL || LA329_2510 == INTO_SYMBOL || LA329_2510 == IN_SYMBOL || LA329_2510 == IS_SYMBOL || ((LA329_2510 >= JOIN_SYMBOL) && (LA329_2510 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2510 >= LEFT_SYMBOL) && (LA329_2510 <= LESS_THAN_OPERATOR)) || ((LA329_2510 >= LIKE_SYMBOL) && (LA329_2510 <= LIMIT_SYMBOL)) || LA329_2510 == LOCK_SYMBOL || LA329_2510 == LOGICAL_AND_OPERATOR || LA329_2510 == LOGICAL_OR_OPERATOR || LA329_2510 == MINUS_OPERATOR || ((LA329_2510 >= MOD_OPERATOR) && (LA329_2510 <= MOD_SYMBOL)) || ((LA329_2510 >= MULT_OPERATOR) && (LA329_2510 <= NATURAL_SYMBOL)) || ((LA329_2510 >= NOT_EQUAL2_OPERATOR) && (LA329_2510 <= NOT_SYMBOL)) || LA329_2510 == NULL_SAFE_EQUAL_OPERATOR || LA329_2510 == ON_SYMBOL || LA329_2510 == OPEN_PAR_SYMBOL || ((LA329_2510 >= ORDER_SYMBOL) && (LA329_2510 <= OR_SYMBOL)) || LA329_2510 == PLUS_OPERATOR || LA329_2510 == PROCEDURE_SYMBOL || LA329_2510 == REGEXP_SYMBOL || LA329_2510 == RIGHT_SYMBOL || LA329_2510 == SEMICOLON_SYMBOL || LA329_2510 == SET_SYMBOL || ((LA329_2510 >= SHIFT_LEFT_OPERATOR) && (LA329_2510 <= SHIFT_RIGHT_OPERATOR)) || LA329_2510 == SINGLE_QUOTED_TEXT || LA329_2510 == STRAIGHT_JOIN_SYMBOL || LA329_2510 == UNION_SYMBOL || LA329_2510 == USING_SYMBOL || LA329_2510 == WHERE_SYMBOL || LA329_2510 == WITH_SYMBOL || LA329_2510 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2510;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1296 >= ACTION_SYMBOL) && (LA329_1296 <= SHARE_SYMBOL)) || ((LA329_1296 >= SLOW_SYMBOL) && (LA329_1296 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2511 = LA(4);
                                        if ( (LA329_2511 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8729 = LA(5);
                                                if ( (LA329_8729 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8729 >= ACCOUNT_SYMBOL) && (LA329_8729 <= YEAR_SYMBOL)) || LA329_8729 == BACK_TICK_QUOTED_ID || LA329_8729 == DOUBLE_QUOTED_TEXT || LA329_8729 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8729;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2511 == EOF || ((LA329_2511 >= ACCOUNT_SYMBOL) && (LA329_2511 <= YEAR_SYMBOL)) || LA329_2511 == AND_SYMBOL || LA329_2511 == AS_SYMBOL || LA329_2511 == BACK_TICK_QUOTED_ID || LA329_2511 == BETWEEN_SYMBOL || LA329_2511 == BIN_NUMBER || LA329_2511 == BITWISE_AND_OPERATOR || ((LA329_2511 >= BITWISE_OR_OPERATOR) && (LA329_2511 <= BITWISE_XOR_OPERATOR)) || ((LA329_2511 >= CLOSE_CURLY_SYMBOL) && (LA329_2511 <= COLLATE_SYMBOL)) || LA329_2511 == COMMA_SYMBOL || LA329_2511 == CONCAT_PIPES_SYMBOL || LA329_2511 == CROSS_SYMBOL || ((LA329_2511 >= DIV_OPERATOR) && (LA329_2511 <= DIV_SYMBOL)) || LA329_2511 == DOUBLE_QUOTED_TEXT || LA329_2511 == EQUAL_OPERATOR || LA329_2511 == FOR_SYMBOL || LA329_2511 == FROM_SYMBOL || ((LA329_2511 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2511 <= GREATER_THAN_OPERATOR)) || ((LA329_2511 >= GROUP_SYMBOL) && (LA329_2511 <= HAVING_SYMBOL)) || LA329_2511 == HEX_NUMBER || LA329_2511 == IDENTIFIER || LA329_2511 == INNER_SYMBOL || LA329_2511 == INTO_SYMBOL || LA329_2511 == IN_SYMBOL || LA329_2511 == IS_SYMBOL || ((LA329_2511 >= JOIN_SYMBOL) && (LA329_2511 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2511 >= LEFT_SYMBOL) && (LA329_2511 <= LESS_THAN_OPERATOR)) || ((LA329_2511 >= LIKE_SYMBOL) && (LA329_2511 <= LIMIT_SYMBOL)) || LA329_2511 == LOCK_SYMBOL || LA329_2511 == LOGICAL_AND_OPERATOR || LA329_2511 == LOGICAL_OR_OPERATOR || LA329_2511 == MINUS_OPERATOR || ((LA329_2511 >= MOD_OPERATOR) && (LA329_2511 <= MOD_SYMBOL)) || ((LA329_2511 >= MULT_OPERATOR) && (LA329_2511 <= NATURAL_SYMBOL)) || ((LA329_2511 >= NOT_EQUAL2_OPERATOR) && (LA329_2511 <= NOT_SYMBOL)) || LA329_2511 == NULL_SAFE_EQUAL_OPERATOR || LA329_2511 == ON_SYMBOL || LA329_2511 == OPEN_PAR_SYMBOL || ((LA329_2511 >= ORDER_SYMBOL) && (LA329_2511 <= OR_SYMBOL)) || LA329_2511 == PLUS_OPERATOR || LA329_2511 == PROCEDURE_SYMBOL || LA329_2511 == REGEXP_SYMBOL || LA329_2511 == RIGHT_SYMBOL || LA329_2511 == SEMICOLON_SYMBOL || LA329_2511 == SET_SYMBOL || ((LA329_2511 >= SHIFT_LEFT_OPERATOR) && (LA329_2511 <= SHIFT_RIGHT_OPERATOR)) || LA329_2511 == SINGLE_QUOTED_TEXT || LA329_2511 == STRAIGHT_JOIN_SYMBOL || LA329_2511 == UNION_SYMBOL || LA329_2511 == USING_SYMBOL || LA329_2511 == WHERE_SYMBOL || LA329_2511 == WITH_SYMBOL || LA329_2511 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2511;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1296 >= ACCOUNT_SYMBOL) && (LA329_1296 <= XA_SYMBOL)) || LA329_1296 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2512 = LA(4);
                                        if ( (LA329_2512 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8783 = LA(5);
                                                if ( (LA329_8783 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8783 >= ACCOUNT_SYMBOL) && (LA329_8783 <= YEAR_SYMBOL)) || LA329_8783 == BACK_TICK_QUOTED_ID || LA329_8783 == DOUBLE_QUOTED_TEXT || LA329_8783 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8783;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2512 == EOF || ((LA329_2512 >= ACCOUNT_SYMBOL) && (LA329_2512 <= YEAR_SYMBOL)) || LA329_2512 == AND_SYMBOL || LA329_2512 == AS_SYMBOL || LA329_2512 == BACK_TICK_QUOTED_ID || LA329_2512 == BETWEEN_SYMBOL || LA329_2512 == BIN_NUMBER || LA329_2512 == BITWISE_AND_OPERATOR || ((LA329_2512 >= BITWISE_OR_OPERATOR) && (LA329_2512 <= BITWISE_XOR_OPERATOR)) || ((LA329_2512 >= CLOSE_CURLY_SYMBOL) && (LA329_2512 <= COLLATE_SYMBOL)) || LA329_2512 == COMMA_SYMBOL || LA329_2512 == CONCAT_PIPES_SYMBOL || LA329_2512 == CROSS_SYMBOL || ((LA329_2512 >= DIV_OPERATOR) && (LA329_2512 <= DIV_SYMBOL)) || LA329_2512 == DOUBLE_QUOTED_TEXT || LA329_2512 == EQUAL_OPERATOR || LA329_2512 == FOR_SYMBOL || LA329_2512 == FROM_SYMBOL || ((LA329_2512 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2512 <= GREATER_THAN_OPERATOR)) || ((LA329_2512 >= GROUP_SYMBOL) && (LA329_2512 <= HAVING_SYMBOL)) || LA329_2512 == HEX_NUMBER || LA329_2512 == IDENTIFIER || LA329_2512 == INNER_SYMBOL || LA329_2512 == INTO_SYMBOL || LA329_2512 == IN_SYMBOL || LA329_2512 == IS_SYMBOL || ((LA329_2512 >= JOIN_SYMBOL) && (LA329_2512 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2512 >= LEFT_SYMBOL) && (LA329_2512 <= LESS_THAN_OPERATOR)) || ((LA329_2512 >= LIKE_SYMBOL) && (LA329_2512 <= LIMIT_SYMBOL)) || LA329_2512 == LOCK_SYMBOL || LA329_2512 == LOGICAL_AND_OPERATOR || LA329_2512 == LOGICAL_OR_OPERATOR || LA329_2512 == MINUS_OPERATOR || ((LA329_2512 >= MOD_OPERATOR) && (LA329_2512 <= MOD_SYMBOL)) || ((LA329_2512 >= MULT_OPERATOR) && (LA329_2512 <= NATURAL_SYMBOL)) || ((LA329_2512 >= NOT_EQUAL2_OPERATOR) && (LA329_2512 <= NOT_SYMBOL)) || LA329_2512 == NULL_SAFE_EQUAL_OPERATOR || LA329_2512 == ON_SYMBOL || LA329_2512 == OPEN_PAR_SYMBOL || ((LA329_2512 >= ORDER_SYMBOL) && (LA329_2512 <= OR_SYMBOL)) || LA329_2512 == PLUS_OPERATOR || LA329_2512 == PROCEDURE_SYMBOL || LA329_2512 == REGEXP_SYMBOL || LA329_2512 == RIGHT_SYMBOL || LA329_2512 == SEMICOLON_SYMBOL || LA329_2512 == SET_SYMBOL || ((LA329_2512 >= SHIFT_LEFT_OPERATOR) && (LA329_2512 <= SHIFT_RIGHT_OPERATOR)) || LA329_2512 == SINGLE_QUOTED_TEXT || LA329_2512 == STRAIGHT_JOIN_SYMBOL || LA329_2512 == UNION_SYMBOL || LA329_2512 == USING_SYMBOL || LA329_2512 == WHERE_SYMBOL || LA329_2512 == WITH_SYMBOL || LA329_2512 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2512;


                                            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  = 329;
                                    EXCEPTION->state        = 1296;


                                    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  = 329;
                            EXCEPTION->state        = 55;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == OLD_PASSWORD_SYMBOL))
                {
                    {
                        int LA329_56 = LA(2);
                        if ( (LA329_56 == EOF || ((LA329_56 >= ACCOUNT_SYMBOL) && (LA329_56 <= YEAR_SYMBOL)) || LA329_56 == AND_SYMBOL || LA329_56 == AS_SYMBOL || LA329_56 == BACK_TICK_QUOTED_ID || LA329_56 == BETWEEN_SYMBOL || LA329_56 == BIN_NUMBER || LA329_56 == BITWISE_AND_OPERATOR || ((LA329_56 >= BITWISE_OR_OPERATOR) && (LA329_56 <= BITWISE_XOR_OPERATOR)) || ((LA329_56 >= CLOSE_CURLY_SYMBOL) && (LA329_56 <= COLLATE_SYMBOL)) || LA329_56 == COMMA_SYMBOL || LA329_56 == CONCAT_PIPES_SYMBOL || LA329_56 == CROSS_SYMBOL || ((LA329_56 >= DIV_OPERATOR) && (LA329_56 <= DIV_SYMBOL)) || LA329_56 == DOUBLE_QUOTED_TEXT || LA329_56 == EQUAL_OPERATOR || LA329_56 == FOR_SYMBOL || LA329_56 == FROM_SYMBOL || ((LA329_56 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_56 <= GREATER_THAN_OPERATOR)) || ((LA329_56 >= GROUP_SYMBOL) && (LA329_56 <= HAVING_SYMBOL)) || LA329_56 == HEX_NUMBER || LA329_56 == IDENTIFIER || LA329_56 == INNER_SYMBOL || LA329_56 == INTO_SYMBOL || LA329_56 == IN_SYMBOL || LA329_56 == IS_SYMBOL || ((LA329_56 >= JOIN_SYMBOL) && (LA329_56 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_56 >= LEFT_SYMBOL) && (LA329_56 <= LESS_THAN_OPERATOR)) || ((LA329_56 >= LIKE_SYMBOL) && (LA329_56 <= LIMIT_SYMBOL)) || LA329_56 == LOCK_SYMBOL || LA329_56 == LOGICAL_AND_OPERATOR || LA329_56 == LOGICAL_OR_OPERATOR || LA329_56 == MINUS_OPERATOR || ((LA329_56 >= MOD_OPERATOR) && (LA329_56 <= MOD_SYMBOL)) || ((LA329_56 >= MULT_OPERATOR) && (LA329_56 <= NATURAL_SYMBOL)) || ((LA329_56 >= NOT_EQUAL2_OPERATOR) && (LA329_56 <= NOT_SYMBOL)) || LA329_56 == NULL_SAFE_EQUAL_OPERATOR || LA329_56 == ON_SYMBOL || LA329_56 == OPEN_PAR_SYMBOL || ((LA329_56 >= ORDER_SYMBOL) && (LA329_56 <= OR_SYMBOL)) || LA329_56 == PLUS_OPERATOR || LA329_56 == PROCEDURE_SYMBOL || LA329_56 == REGEXP_SYMBOL || LA329_56 == RIGHT_SYMBOL || LA329_56 == SEMICOLON_SYMBOL || LA329_56 == SET_SYMBOL || ((LA329_56 >= SHIFT_LEFT_OPERATOR) && (LA329_56 <= SHIFT_RIGHT_OPERATOR)) || LA329_56 == SINGLE_QUOTED_TEXT || LA329_56 == STRAIGHT_JOIN_SYMBOL || LA329_56 == UNION_SYMBOL || LA329_56 == USING_SYMBOL || LA329_56 == WHERE_SYMBOL || LA329_56 == WITH_SYMBOL || LA329_56 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_56 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1350 = LA(3);
                                if ( (LA329_1350 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1350 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2514 = LA(4);
                                        if ( (LA329_2514 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8837 = LA(5);
                                                if ( (LA329_8837 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8837 >= ACCOUNT_SYMBOL) && (LA329_8837 <= YEAR_SYMBOL)) || LA329_8837 == BACK_TICK_QUOTED_ID || LA329_8837 == DOUBLE_QUOTED_TEXT || LA329_8837 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8837;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2514 == EOF || ((LA329_2514 >= ACCOUNT_SYMBOL) && (LA329_2514 <= YEAR_SYMBOL)) || LA329_2514 == AND_SYMBOL || LA329_2514 == AS_SYMBOL || LA329_2514 == BACK_TICK_QUOTED_ID || LA329_2514 == BETWEEN_SYMBOL || LA329_2514 == BIN_NUMBER || LA329_2514 == BITWISE_AND_OPERATOR || ((LA329_2514 >= BITWISE_OR_OPERATOR) && (LA329_2514 <= BITWISE_XOR_OPERATOR)) || ((LA329_2514 >= CLOSE_CURLY_SYMBOL) && (LA329_2514 <= COLLATE_SYMBOL)) || LA329_2514 == COMMA_SYMBOL || LA329_2514 == CONCAT_PIPES_SYMBOL || LA329_2514 == CROSS_SYMBOL || ((LA329_2514 >= DIV_OPERATOR) && (LA329_2514 <= DIV_SYMBOL)) || LA329_2514 == DOUBLE_QUOTED_TEXT || LA329_2514 == EQUAL_OPERATOR || LA329_2514 == FOR_SYMBOL || LA329_2514 == FROM_SYMBOL || ((LA329_2514 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2514 <= GREATER_THAN_OPERATOR)) || ((LA329_2514 >= GROUP_SYMBOL) && (LA329_2514 <= HAVING_SYMBOL)) || LA329_2514 == HEX_NUMBER || LA329_2514 == IDENTIFIER || LA329_2514 == INNER_SYMBOL || LA329_2514 == INTO_SYMBOL || LA329_2514 == IN_SYMBOL || LA329_2514 == IS_SYMBOL || ((LA329_2514 >= JOIN_SYMBOL) && (LA329_2514 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2514 >= LEFT_SYMBOL) && (LA329_2514 <= LESS_THAN_OPERATOR)) || ((LA329_2514 >= LIKE_SYMBOL) && (LA329_2514 <= LIMIT_SYMBOL)) || LA329_2514 == LOCK_SYMBOL || LA329_2514 == LOGICAL_AND_OPERATOR || LA329_2514 == LOGICAL_OR_OPERATOR || LA329_2514 == MINUS_OPERATOR || ((LA329_2514 >= MOD_OPERATOR) && (LA329_2514 <= MOD_SYMBOL)) || ((LA329_2514 >= MULT_OPERATOR) && (LA329_2514 <= NATURAL_SYMBOL)) || ((LA329_2514 >= NOT_EQUAL2_OPERATOR) && (LA329_2514 <= NOT_SYMBOL)) || LA329_2514 == NULL_SAFE_EQUAL_OPERATOR || LA329_2514 == ON_SYMBOL || LA329_2514 == OPEN_PAR_SYMBOL || ((LA329_2514 >= ORDER_SYMBOL) && (LA329_2514 <= OR_SYMBOL)) || LA329_2514 == PLUS_OPERATOR || LA329_2514 == PROCEDURE_SYMBOL || LA329_2514 == REGEXP_SYMBOL || LA329_2514 == RIGHT_SYMBOL || LA329_2514 == SEMICOLON_SYMBOL || LA329_2514 == SET_SYMBOL || ((LA329_2514 >= SHIFT_LEFT_OPERATOR) && (LA329_2514 <= SHIFT_RIGHT_OPERATOR)) || LA329_2514 == SINGLE_QUOTED_TEXT || LA329_2514 == STRAIGHT_JOIN_SYMBOL || LA329_2514 == UNION_SYMBOL || LA329_2514 == USING_SYMBOL || LA329_2514 == WHERE_SYMBOL || LA329_2514 == WITH_SYMBOL || LA329_2514 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2514;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1350 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2515 = LA(4);
                                        if ( (LA329_2515 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8891 = LA(5);
                                                if ( (LA329_8891 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8891 >= ACCOUNT_SYMBOL) && (LA329_8891 <= YEAR_SYMBOL)) || LA329_8891 == BACK_TICK_QUOTED_ID || LA329_8891 == DOUBLE_QUOTED_TEXT || LA329_8891 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8891;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2515 == EOF || ((LA329_2515 >= ACCOUNT_SYMBOL) && (LA329_2515 <= YEAR_SYMBOL)) || LA329_2515 == AND_SYMBOL || LA329_2515 == AS_SYMBOL || LA329_2515 == BACK_TICK_QUOTED_ID || LA329_2515 == BETWEEN_SYMBOL || LA329_2515 == BIN_NUMBER || LA329_2515 == BITWISE_AND_OPERATOR || ((LA329_2515 >= BITWISE_OR_OPERATOR) && (LA329_2515 <= BITWISE_XOR_OPERATOR)) || ((LA329_2515 >= CLOSE_CURLY_SYMBOL) && (LA329_2515 <= COLLATE_SYMBOL)) || LA329_2515 == COMMA_SYMBOL || LA329_2515 == CONCAT_PIPES_SYMBOL || LA329_2515 == CROSS_SYMBOL || ((LA329_2515 >= DIV_OPERATOR) && (LA329_2515 <= DIV_SYMBOL)) || LA329_2515 == DOUBLE_QUOTED_TEXT || LA329_2515 == EQUAL_OPERATOR || LA329_2515 == FOR_SYMBOL || LA329_2515 == FROM_SYMBOL || ((LA329_2515 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2515 <= GREATER_THAN_OPERATOR)) || ((LA329_2515 >= GROUP_SYMBOL) && (LA329_2515 <= HAVING_SYMBOL)) || LA329_2515 == HEX_NUMBER || LA329_2515 == IDENTIFIER || LA329_2515 == INNER_SYMBOL || LA329_2515 == INTO_SYMBOL || LA329_2515 == IN_SYMBOL || LA329_2515 == IS_SYMBOL || ((LA329_2515 >= JOIN_SYMBOL) && (LA329_2515 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2515 >= LEFT_SYMBOL) && (LA329_2515 <= LESS_THAN_OPERATOR)) || ((LA329_2515 >= LIKE_SYMBOL) && (LA329_2515 <= LIMIT_SYMBOL)) || LA329_2515 == LOCK_SYMBOL || LA329_2515 == LOGICAL_AND_OPERATOR || LA329_2515 == LOGICAL_OR_OPERATOR || LA329_2515 == MINUS_OPERATOR || ((LA329_2515 >= MOD_OPERATOR) && (LA329_2515 <= MOD_SYMBOL)) || ((LA329_2515 >= MULT_OPERATOR) && (LA329_2515 <= NATURAL_SYMBOL)) || ((LA329_2515 >= NOT_EQUAL2_OPERATOR) && (LA329_2515 <= NOT_SYMBOL)) || LA329_2515 == NULL_SAFE_EQUAL_OPERATOR || LA329_2515 == ON_SYMBOL || LA329_2515 == OPEN_PAR_SYMBOL || ((LA329_2515 >= ORDER_SYMBOL) && (LA329_2515 <= OR_SYMBOL)) || LA329_2515 == PLUS_OPERATOR || LA329_2515 == PROCEDURE_SYMBOL || LA329_2515 == REGEXP_SYMBOL || LA329_2515 == RIGHT_SYMBOL || LA329_2515 == SEMICOLON_SYMBOL || LA329_2515 == SET_SYMBOL || ((LA329_2515 >= SHIFT_LEFT_OPERATOR) && (LA329_2515 <= SHIFT_RIGHT_OPERATOR)) || LA329_2515 == SINGLE_QUOTED_TEXT || LA329_2515 == STRAIGHT_JOIN_SYMBOL || LA329_2515 == UNION_SYMBOL || LA329_2515 == USING_SYMBOL || LA329_2515 == WHERE_SYMBOL || LA329_2515 == WITH_SYMBOL || LA329_2515 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2515;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1350 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2516 = LA(4);
                                        if ( (LA329_2516 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8945 = LA(5);
                                                if ( (LA329_8945 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8945 >= ACCOUNT_SYMBOL) && (LA329_8945 <= YEAR_SYMBOL)) || LA329_8945 == BACK_TICK_QUOTED_ID || LA329_8945 == DOUBLE_QUOTED_TEXT || LA329_8945 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8945;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2516 == EOF || ((LA329_2516 >= ACCOUNT_SYMBOL) && (LA329_2516 <= YEAR_SYMBOL)) || LA329_2516 == AND_SYMBOL || LA329_2516 == AS_SYMBOL || LA329_2516 == BACK_TICK_QUOTED_ID || LA329_2516 == BETWEEN_SYMBOL || LA329_2516 == BIN_NUMBER || LA329_2516 == BITWISE_AND_OPERATOR || ((LA329_2516 >= BITWISE_OR_OPERATOR) && (LA329_2516 <= BITWISE_XOR_OPERATOR)) || ((LA329_2516 >= CLOSE_CURLY_SYMBOL) && (LA329_2516 <= COLLATE_SYMBOL)) || LA329_2516 == COMMA_SYMBOL || LA329_2516 == CONCAT_PIPES_SYMBOL || LA329_2516 == CROSS_SYMBOL || ((LA329_2516 >= DIV_OPERATOR) && (LA329_2516 <= DIV_SYMBOL)) || LA329_2516 == DOUBLE_QUOTED_TEXT || LA329_2516 == EQUAL_OPERATOR || LA329_2516 == FOR_SYMBOL || LA329_2516 == FROM_SYMBOL || ((LA329_2516 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2516 <= GREATER_THAN_OPERATOR)) || ((LA329_2516 >= GROUP_SYMBOL) && (LA329_2516 <= HAVING_SYMBOL)) || LA329_2516 == HEX_NUMBER || LA329_2516 == IDENTIFIER || LA329_2516 == INNER_SYMBOL || LA329_2516 == INTO_SYMBOL || LA329_2516 == IN_SYMBOL || LA329_2516 == IS_SYMBOL || ((LA329_2516 >= JOIN_SYMBOL) && (LA329_2516 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2516 >= LEFT_SYMBOL) && (LA329_2516 <= LESS_THAN_OPERATOR)) || ((LA329_2516 >= LIKE_SYMBOL) && (LA329_2516 <= LIMIT_SYMBOL)) || LA329_2516 == LOCK_SYMBOL || LA329_2516 == LOGICAL_AND_OPERATOR || LA329_2516 == LOGICAL_OR_OPERATOR || LA329_2516 == MINUS_OPERATOR || ((LA329_2516 >= MOD_OPERATOR) && (LA329_2516 <= MOD_SYMBOL)) || ((LA329_2516 >= MULT_OPERATOR) && (LA329_2516 <= NATURAL_SYMBOL)) || ((LA329_2516 >= NOT_EQUAL2_OPERATOR) && (LA329_2516 <= NOT_SYMBOL)) || LA329_2516 == NULL_SAFE_EQUAL_OPERATOR || LA329_2516 == ON_SYMBOL || LA329_2516 == OPEN_PAR_SYMBOL || ((LA329_2516 >= ORDER_SYMBOL) && (LA329_2516 <= OR_SYMBOL)) || LA329_2516 == PLUS_OPERATOR || LA329_2516 == PROCEDURE_SYMBOL || LA329_2516 == REGEXP_SYMBOL || LA329_2516 == RIGHT_SYMBOL || LA329_2516 == SEMICOLON_SYMBOL || LA329_2516 == SET_SYMBOL || ((LA329_2516 >= SHIFT_LEFT_OPERATOR) && (LA329_2516 <= SHIFT_RIGHT_OPERATOR)) || LA329_2516 == SINGLE_QUOTED_TEXT || LA329_2516 == STRAIGHT_JOIN_SYMBOL || LA329_2516 == UNION_SYMBOL || LA329_2516 == USING_SYMBOL || LA329_2516 == WHERE_SYMBOL || LA329_2516 == WITH_SYMBOL || LA329_2516 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2516;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1350 >= ACTION_SYMBOL) && (LA329_1350 <= SHARE_SYMBOL)) || ((LA329_1350 >= SLOW_SYMBOL) && (LA329_1350 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2517 = LA(4);
                                        if ( (LA329_2517 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_8999 = LA(5);
                                                if ( (LA329_8999 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_8999 >= ACCOUNT_SYMBOL) && (LA329_8999 <= YEAR_SYMBOL)) || LA329_8999 == BACK_TICK_QUOTED_ID || LA329_8999 == DOUBLE_QUOTED_TEXT || LA329_8999 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 8999;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2517 == EOF || ((LA329_2517 >= ACCOUNT_SYMBOL) && (LA329_2517 <= YEAR_SYMBOL)) || LA329_2517 == AND_SYMBOL || LA329_2517 == AS_SYMBOL || LA329_2517 == BACK_TICK_QUOTED_ID || LA329_2517 == BETWEEN_SYMBOL || LA329_2517 == BIN_NUMBER || LA329_2517 == BITWISE_AND_OPERATOR || ((LA329_2517 >= BITWISE_OR_OPERATOR) && (LA329_2517 <= BITWISE_XOR_OPERATOR)) || ((LA329_2517 >= CLOSE_CURLY_SYMBOL) && (LA329_2517 <= COLLATE_SYMBOL)) || LA329_2517 == COMMA_SYMBOL || LA329_2517 == CONCAT_PIPES_SYMBOL || LA329_2517 == CROSS_SYMBOL || ((LA329_2517 >= DIV_OPERATOR) && (LA329_2517 <= DIV_SYMBOL)) || LA329_2517 == DOUBLE_QUOTED_TEXT || LA329_2517 == EQUAL_OPERATOR || LA329_2517 == FOR_SYMBOL || LA329_2517 == FROM_SYMBOL || ((LA329_2517 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2517 <= GREATER_THAN_OPERATOR)) || ((LA329_2517 >= GROUP_SYMBOL) && (LA329_2517 <= HAVING_SYMBOL)) || LA329_2517 == HEX_NUMBER || LA329_2517 == IDENTIFIER || LA329_2517 == INNER_SYMBOL || LA329_2517 == INTO_SYMBOL || LA329_2517 == IN_SYMBOL || LA329_2517 == IS_SYMBOL || ((LA329_2517 >= JOIN_SYMBOL) && (LA329_2517 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2517 >= LEFT_SYMBOL) && (LA329_2517 <= LESS_THAN_OPERATOR)) || ((LA329_2517 >= LIKE_SYMBOL) && (LA329_2517 <= LIMIT_SYMBOL)) || LA329_2517 == LOCK_SYMBOL || LA329_2517 == LOGICAL_AND_OPERATOR || LA329_2517 == LOGICAL_OR_OPERATOR || LA329_2517 == MINUS_OPERATOR || ((LA329_2517 >= MOD_OPERATOR) && (LA329_2517 <= MOD_SYMBOL)) || ((LA329_2517 >= MULT_OPERATOR) && (LA329_2517 <= NATURAL_SYMBOL)) || ((LA329_2517 >= NOT_EQUAL2_OPERATOR) && (LA329_2517 <= NOT_SYMBOL)) || LA329_2517 == NULL_SAFE_EQUAL_OPERATOR || LA329_2517 == ON_SYMBOL || LA329_2517 == OPEN_PAR_SYMBOL || ((LA329_2517 >= ORDER_SYMBOL) && (LA329_2517 <= OR_SYMBOL)) || LA329_2517 == PLUS_OPERATOR || LA329_2517 == PROCEDURE_SYMBOL || LA329_2517 == REGEXP_SYMBOL || LA329_2517 == RIGHT_SYMBOL || LA329_2517 == SEMICOLON_SYMBOL || LA329_2517 == SET_SYMBOL || ((LA329_2517 >= SHIFT_LEFT_OPERATOR) && (LA329_2517 <= SHIFT_RIGHT_OPERATOR)) || LA329_2517 == SINGLE_QUOTED_TEXT || LA329_2517 == STRAIGHT_JOIN_SYMBOL || LA329_2517 == UNION_SYMBOL || LA329_2517 == USING_SYMBOL || LA329_2517 == WHERE_SYMBOL || LA329_2517 == WITH_SYMBOL || LA329_2517 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2517;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1350 >= ACCOUNT_SYMBOL) && (LA329_1350 <= XA_SYMBOL)) || LA329_1350 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2518 = LA(4);
                                        if ( (LA329_2518 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9053 = LA(5);
                                                if ( (LA329_9053 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9053 >= ACCOUNT_SYMBOL) && (LA329_9053 <= YEAR_SYMBOL)) || LA329_9053 == BACK_TICK_QUOTED_ID || LA329_9053 == DOUBLE_QUOTED_TEXT || LA329_9053 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9053;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2518 == EOF || ((LA329_2518 >= ACCOUNT_SYMBOL) && (LA329_2518 <= YEAR_SYMBOL)) || LA329_2518 == AND_SYMBOL || LA329_2518 == AS_SYMBOL || LA329_2518 == BACK_TICK_QUOTED_ID || LA329_2518 == BETWEEN_SYMBOL || LA329_2518 == BIN_NUMBER || LA329_2518 == BITWISE_AND_OPERATOR || ((LA329_2518 >= BITWISE_OR_OPERATOR) && (LA329_2518 <= BITWISE_XOR_OPERATOR)) || ((LA329_2518 >= CLOSE_CURLY_SYMBOL) && (LA329_2518 <= COLLATE_SYMBOL)) || LA329_2518 == COMMA_SYMBOL || LA329_2518 == CONCAT_PIPES_SYMBOL || LA329_2518 == CROSS_SYMBOL || ((LA329_2518 >= DIV_OPERATOR) && (LA329_2518 <= DIV_SYMBOL)) || LA329_2518 == DOUBLE_QUOTED_TEXT || LA329_2518 == EQUAL_OPERATOR || LA329_2518 == FOR_SYMBOL || LA329_2518 == FROM_SYMBOL || ((LA329_2518 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2518 <= GREATER_THAN_OPERATOR)) || ((LA329_2518 >= GROUP_SYMBOL) && (LA329_2518 <= HAVING_SYMBOL)) || LA329_2518 == HEX_NUMBER || LA329_2518 == IDENTIFIER || LA329_2518 == INNER_SYMBOL || LA329_2518 == INTO_SYMBOL || LA329_2518 == IN_SYMBOL || LA329_2518 == IS_SYMBOL || ((LA329_2518 >= JOIN_SYMBOL) && (LA329_2518 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2518 >= LEFT_SYMBOL) && (LA329_2518 <= LESS_THAN_OPERATOR)) || ((LA329_2518 >= LIKE_SYMBOL) && (LA329_2518 <= LIMIT_SYMBOL)) || LA329_2518 == LOCK_SYMBOL || LA329_2518 == LOGICAL_AND_OPERATOR || LA329_2518 == LOGICAL_OR_OPERATOR || LA329_2518 == MINUS_OPERATOR || ((LA329_2518 >= MOD_OPERATOR) && (LA329_2518 <= MOD_SYMBOL)) || ((LA329_2518 >= MULT_OPERATOR) && (LA329_2518 <= NATURAL_SYMBOL)) || ((LA329_2518 >= NOT_EQUAL2_OPERATOR) && (LA329_2518 <= NOT_SYMBOL)) || LA329_2518 == NULL_SAFE_EQUAL_OPERATOR || LA329_2518 == ON_SYMBOL || LA329_2518 == OPEN_PAR_SYMBOL || ((LA329_2518 >= ORDER_SYMBOL) && (LA329_2518 <= OR_SYMBOL)) || LA329_2518 == PLUS_OPERATOR || LA329_2518 == PROCEDURE_SYMBOL || LA329_2518 == REGEXP_SYMBOL || LA329_2518 == RIGHT_SYMBOL || LA329_2518 == SEMICOLON_SYMBOL || LA329_2518 == SET_SYMBOL || ((LA329_2518 >= SHIFT_LEFT_OPERATOR) && (LA329_2518 <= SHIFT_RIGHT_OPERATOR)) || LA329_2518 == SINGLE_QUOTED_TEXT || LA329_2518 == STRAIGHT_JOIN_SYMBOL || LA329_2518 == UNION_SYMBOL || LA329_2518 == USING_SYMBOL || LA329_2518 == WHERE_SYMBOL || LA329_2518 == WITH_SYMBOL || LA329_2518 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2518;


                                            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  = 329;
                                    EXCEPTION->state        = 1350;


                                    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  = 329;
                            EXCEPTION->state        = 56;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == PASSWORD_SYMBOL))
                {
                    {
                        int LA329_58 = LA(2);
                        if ( (LA329_58 == EOF || ((LA329_58 >= ACCOUNT_SYMBOL) && (LA329_58 <= YEAR_SYMBOL)) || LA329_58 == AND_SYMBOL || LA329_58 == AS_SYMBOL || LA329_58 == BACK_TICK_QUOTED_ID || LA329_58 == BETWEEN_SYMBOL || LA329_58 == BIN_NUMBER || LA329_58 == BITWISE_AND_OPERATOR || ((LA329_58 >= BITWISE_OR_OPERATOR) && (LA329_58 <= BITWISE_XOR_OPERATOR)) || ((LA329_58 >= CLOSE_CURLY_SYMBOL) && (LA329_58 <= COLLATE_SYMBOL)) || LA329_58 == COMMA_SYMBOL || LA329_58 == CONCAT_PIPES_SYMBOL || LA329_58 == CROSS_SYMBOL || ((LA329_58 >= DIV_OPERATOR) && (LA329_58 <= DIV_SYMBOL)) || LA329_58 == DOUBLE_QUOTED_TEXT || LA329_58 == EQUAL_OPERATOR || LA329_58 == FOR_SYMBOL || LA329_58 == FROM_SYMBOL || ((LA329_58 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_58 <= GREATER_THAN_OPERATOR)) || ((LA329_58 >= GROUP_SYMBOL) && (LA329_58 <= HAVING_SYMBOL)) || LA329_58 == HEX_NUMBER || LA329_58 == IDENTIFIER || LA329_58 == INNER_SYMBOL || LA329_58 == INTO_SYMBOL || LA329_58 == IN_SYMBOL || LA329_58 == IS_SYMBOL || ((LA329_58 >= JOIN_SYMBOL) && (LA329_58 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_58 >= LEFT_SYMBOL) && (LA329_58 <= LESS_THAN_OPERATOR)) || ((LA329_58 >= LIKE_SYMBOL) && (LA329_58 <= LIMIT_SYMBOL)) || LA329_58 == LOCK_SYMBOL || LA329_58 == LOGICAL_AND_OPERATOR || LA329_58 == LOGICAL_OR_OPERATOR || LA329_58 == MINUS_OPERATOR || ((LA329_58 >= MOD_OPERATOR) && (LA329_58 <= MOD_SYMBOL)) || ((LA329_58 >= MULT_OPERATOR) && (LA329_58 <= NATURAL_SYMBOL)) || ((LA329_58 >= NOT_EQUAL2_OPERATOR) && (LA329_58 <= NOT_SYMBOL)) || LA329_58 == NULL_SAFE_EQUAL_OPERATOR || LA329_58 == ON_SYMBOL || LA329_58 == OPEN_PAR_SYMBOL || ((LA329_58 >= ORDER_SYMBOL) && (LA329_58 <= OR_SYMBOL)) || LA329_58 == PLUS_OPERATOR || LA329_58 == PROCEDURE_SYMBOL || LA329_58 == REGEXP_SYMBOL || LA329_58 == RIGHT_SYMBOL || LA329_58 == SEMICOLON_SYMBOL || LA329_58 == SET_SYMBOL || ((LA329_58 >= SHIFT_LEFT_OPERATOR) && (LA329_58 <= SHIFT_RIGHT_OPERATOR)) || LA329_58 == SINGLE_QUOTED_TEXT || LA329_58 == STRAIGHT_JOIN_SYMBOL || LA329_58 == UNION_SYMBOL || LA329_58 == USING_SYMBOL || LA329_58 == WHERE_SYMBOL || LA329_58 == WITH_SYMBOL || LA329_58 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_58 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1404 = LA(3);
                                if ( (LA329_1404 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1404 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2520 = LA(4);
                                        if ( (LA329_2520 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9107 = LA(5);
                                                if ( (LA329_9107 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9107 >= ACCOUNT_SYMBOL) && (LA329_9107 <= YEAR_SYMBOL)) || LA329_9107 == BACK_TICK_QUOTED_ID || LA329_9107 == DOUBLE_QUOTED_TEXT || LA329_9107 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9107;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2520 == EOF || ((LA329_2520 >= ACCOUNT_SYMBOL) && (LA329_2520 <= YEAR_SYMBOL)) || LA329_2520 == AND_SYMBOL || LA329_2520 == AS_SYMBOL || LA329_2520 == BACK_TICK_QUOTED_ID || LA329_2520 == BETWEEN_SYMBOL || LA329_2520 == BIN_NUMBER || LA329_2520 == BITWISE_AND_OPERATOR || ((LA329_2520 >= BITWISE_OR_OPERATOR) && (LA329_2520 <= BITWISE_XOR_OPERATOR)) || ((LA329_2520 >= CLOSE_CURLY_SYMBOL) && (LA329_2520 <= COLLATE_SYMBOL)) || LA329_2520 == COMMA_SYMBOL || LA329_2520 == CONCAT_PIPES_SYMBOL || LA329_2520 == CROSS_SYMBOL || ((LA329_2520 >= DIV_OPERATOR) && (LA329_2520 <= DIV_SYMBOL)) || LA329_2520 == DOUBLE_QUOTED_TEXT || LA329_2520 == EQUAL_OPERATOR || LA329_2520 == FOR_SYMBOL || LA329_2520 == FROM_SYMBOL || ((LA329_2520 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2520 <= GREATER_THAN_OPERATOR)) || ((LA329_2520 >= GROUP_SYMBOL) && (LA329_2520 <= HAVING_SYMBOL)) || LA329_2520 == HEX_NUMBER || LA329_2520 == IDENTIFIER || LA329_2520 == INNER_SYMBOL || LA329_2520 == INTO_SYMBOL || LA329_2520 == IN_SYMBOL || LA329_2520 == IS_SYMBOL || ((LA329_2520 >= JOIN_SYMBOL) && (LA329_2520 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2520 >= LEFT_SYMBOL) && (LA329_2520 <= LESS_THAN_OPERATOR)) || ((LA329_2520 >= LIKE_SYMBOL) && (LA329_2520 <= LIMIT_SYMBOL)) || LA329_2520 == LOCK_SYMBOL || LA329_2520 == LOGICAL_AND_OPERATOR || LA329_2520 == LOGICAL_OR_OPERATOR || LA329_2520 == MINUS_OPERATOR || ((LA329_2520 >= MOD_OPERATOR) && (LA329_2520 <= MOD_SYMBOL)) || ((LA329_2520 >= MULT_OPERATOR) && (LA329_2520 <= NATURAL_SYMBOL)) || ((LA329_2520 >= NOT_EQUAL2_OPERATOR) && (LA329_2520 <= NOT_SYMBOL)) || LA329_2520 == NULL_SAFE_EQUAL_OPERATOR || LA329_2520 == ON_SYMBOL || LA329_2520 == OPEN_PAR_SYMBOL || ((LA329_2520 >= ORDER_SYMBOL) && (LA329_2520 <= OR_SYMBOL)) || LA329_2520 == PLUS_OPERATOR || LA329_2520 == PROCEDURE_SYMBOL || LA329_2520 == REGEXP_SYMBOL || LA329_2520 == RIGHT_SYMBOL || LA329_2520 == SEMICOLON_SYMBOL || LA329_2520 == SET_SYMBOL || ((LA329_2520 >= SHIFT_LEFT_OPERATOR) && (LA329_2520 <= SHIFT_RIGHT_OPERATOR)) || LA329_2520 == SINGLE_QUOTED_TEXT || LA329_2520 == STRAIGHT_JOIN_SYMBOL || LA329_2520 == UNION_SYMBOL || LA329_2520 == USING_SYMBOL || LA329_2520 == WHERE_SYMBOL || LA329_2520 == WITH_SYMBOL || LA329_2520 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2520;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1404 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2521 = LA(4);
                                        if ( (LA329_2521 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9161 = LA(5);
                                                if ( (LA329_9161 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9161 >= ACCOUNT_SYMBOL) && (LA329_9161 <= YEAR_SYMBOL)) || LA329_9161 == BACK_TICK_QUOTED_ID || LA329_9161 == DOUBLE_QUOTED_TEXT || LA329_9161 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9161;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2521 == EOF || ((LA329_2521 >= ACCOUNT_SYMBOL) && (LA329_2521 <= YEAR_SYMBOL)) || LA329_2521 == AND_SYMBOL || LA329_2521 == AS_SYMBOL || LA329_2521 == BACK_TICK_QUOTED_ID || LA329_2521 == BETWEEN_SYMBOL || LA329_2521 == BIN_NUMBER || LA329_2521 == BITWISE_AND_OPERATOR || ((LA329_2521 >= BITWISE_OR_OPERATOR) && (LA329_2521 <= BITWISE_XOR_OPERATOR)) || ((LA329_2521 >= CLOSE_CURLY_SYMBOL) && (LA329_2521 <= COLLATE_SYMBOL)) || LA329_2521 == COMMA_SYMBOL || LA329_2521 == CONCAT_PIPES_SYMBOL || LA329_2521 == CROSS_SYMBOL || ((LA329_2521 >= DIV_OPERATOR) && (LA329_2521 <= DIV_SYMBOL)) || LA329_2521 == DOUBLE_QUOTED_TEXT || LA329_2521 == EQUAL_OPERATOR || LA329_2521 == FOR_SYMBOL || LA329_2521 == FROM_SYMBOL || ((LA329_2521 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2521 <= GREATER_THAN_OPERATOR)) || ((LA329_2521 >= GROUP_SYMBOL) && (LA329_2521 <= HAVING_SYMBOL)) || LA329_2521 == HEX_NUMBER || LA329_2521 == IDENTIFIER || LA329_2521 == INNER_SYMBOL || LA329_2521 == INTO_SYMBOL || LA329_2521 == IN_SYMBOL || LA329_2521 == IS_SYMBOL || ((LA329_2521 >= JOIN_SYMBOL) && (LA329_2521 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2521 >= LEFT_SYMBOL) && (LA329_2521 <= LESS_THAN_OPERATOR)) || ((LA329_2521 >= LIKE_SYMBOL) && (LA329_2521 <= LIMIT_SYMBOL)) || LA329_2521 == LOCK_SYMBOL || LA329_2521 == LOGICAL_AND_OPERATOR || LA329_2521 == LOGICAL_OR_OPERATOR || LA329_2521 == MINUS_OPERATOR || ((LA329_2521 >= MOD_OPERATOR) && (LA329_2521 <= MOD_SYMBOL)) || ((LA329_2521 >= MULT_OPERATOR) && (LA329_2521 <= NATURAL_SYMBOL)) || ((LA329_2521 >= NOT_EQUAL2_OPERATOR) && (LA329_2521 <= NOT_SYMBOL)) || LA329_2521 == NULL_SAFE_EQUAL_OPERATOR || LA329_2521 == ON_SYMBOL || LA329_2521 == OPEN_PAR_SYMBOL || ((LA329_2521 >= ORDER_SYMBOL) && (LA329_2521 <= OR_SYMBOL)) || LA329_2521 == PLUS_OPERATOR || LA329_2521 == PROCEDURE_SYMBOL || LA329_2521 == REGEXP_SYMBOL || LA329_2521 == RIGHT_SYMBOL || LA329_2521 == SEMICOLON_SYMBOL || LA329_2521 == SET_SYMBOL || ((LA329_2521 >= SHIFT_LEFT_OPERATOR) && (LA329_2521 <= SHIFT_RIGHT_OPERATOR)) || LA329_2521 == SINGLE_QUOTED_TEXT || LA329_2521 == STRAIGHT_JOIN_SYMBOL || LA329_2521 == UNION_SYMBOL || LA329_2521 == USING_SYMBOL || LA329_2521 == WHERE_SYMBOL || LA329_2521 == WITH_SYMBOL || LA329_2521 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2521;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1404 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2522 = LA(4);
                                        if ( (LA329_2522 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9215 = LA(5);
                                                if ( (LA329_9215 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9215 >= ACCOUNT_SYMBOL) && (LA329_9215 <= YEAR_SYMBOL)) || LA329_9215 == BACK_TICK_QUOTED_ID || LA329_9215 == DOUBLE_QUOTED_TEXT || LA329_9215 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9215;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2522 == EOF || ((LA329_2522 >= ACCOUNT_SYMBOL) && (LA329_2522 <= YEAR_SYMBOL)) || LA329_2522 == AND_SYMBOL || LA329_2522 == AS_SYMBOL || LA329_2522 == BACK_TICK_QUOTED_ID || LA329_2522 == BETWEEN_SYMBOL || LA329_2522 == BIN_NUMBER || LA329_2522 == BITWISE_AND_OPERATOR || ((LA329_2522 >= BITWISE_OR_OPERATOR) && (LA329_2522 <= BITWISE_XOR_OPERATOR)) || ((LA329_2522 >= CLOSE_CURLY_SYMBOL) && (LA329_2522 <= COLLATE_SYMBOL)) || LA329_2522 == COMMA_SYMBOL || LA329_2522 == CONCAT_PIPES_SYMBOL || LA329_2522 == CROSS_SYMBOL || ((LA329_2522 >= DIV_OPERATOR) && (LA329_2522 <= DIV_SYMBOL)) || LA329_2522 == DOUBLE_QUOTED_TEXT || LA329_2522 == EQUAL_OPERATOR || LA329_2522 == FOR_SYMBOL || LA329_2522 == FROM_SYMBOL || ((LA329_2522 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2522 <= GREATER_THAN_OPERATOR)) || ((LA329_2522 >= GROUP_SYMBOL) && (LA329_2522 <= HAVING_SYMBOL)) || LA329_2522 == HEX_NUMBER || LA329_2522 == IDENTIFIER || LA329_2522 == INNER_SYMBOL || LA329_2522 == INTO_SYMBOL || LA329_2522 == IN_SYMBOL || LA329_2522 == IS_SYMBOL || ((LA329_2522 >= JOIN_SYMBOL) && (LA329_2522 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2522 >= LEFT_SYMBOL) && (LA329_2522 <= LESS_THAN_OPERATOR)) || ((LA329_2522 >= LIKE_SYMBOL) && (LA329_2522 <= LIMIT_SYMBOL)) || LA329_2522 == LOCK_SYMBOL || LA329_2522 == LOGICAL_AND_OPERATOR || LA329_2522 == LOGICAL_OR_OPERATOR || LA329_2522 == MINUS_OPERATOR || ((LA329_2522 >= MOD_OPERATOR) && (LA329_2522 <= MOD_SYMBOL)) || ((LA329_2522 >= MULT_OPERATOR) && (LA329_2522 <= NATURAL_SYMBOL)) || ((LA329_2522 >= NOT_EQUAL2_OPERATOR) && (LA329_2522 <= NOT_SYMBOL)) || LA329_2522 == NULL_SAFE_EQUAL_OPERATOR || LA329_2522 == ON_SYMBOL || LA329_2522 == OPEN_PAR_SYMBOL || ((LA329_2522 >= ORDER_SYMBOL) && (LA329_2522 <= OR_SYMBOL)) || LA329_2522 == PLUS_OPERATOR || LA329_2522 == PROCEDURE_SYMBOL || LA329_2522 == REGEXP_SYMBOL || LA329_2522 == RIGHT_SYMBOL || LA329_2522 == SEMICOLON_SYMBOL || LA329_2522 == SET_SYMBOL || ((LA329_2522 >= SHIFT_LEFT_OPERATOR) && (LA329_2522 <= SHIFT_RIGHT_OPERATOR)) || LA329_2522 == SINGLE_QUOTED_TEXT || LA329_2522 == STRAIGHT_JOIN_SYMBOL || LA329_2522 == UNION_SYMBOL || LA329_2522 == USING_SYMBOL || LA329_2522 == WHERE_SYMBOL || LA329_2522 == WITH_SYMBOL || LA329_2522 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2522;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1404 >= ACTION_SYMBOL) && (LA329_1404 <= SHARE_SYMBOL)) || ((LA329_1404 >= SLOW_SYMBOL) && (LA329_1404 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2523 = LA(4);
                                        if ( (LA329_2523 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9269 = LA(5);
                                                if ( (LA329_9269 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9269 >= ACCOUNT_SYMBOL) && (LA329_9269 <= YEAR_SYMBOL)) || LA329_9269 == BACK_TICK_QUOTED_ID || LA329_9269 == DOUBLE_QUOTED_TEXT || LA329_9269 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9269;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2523 == EOF || ((LA329_2523 >= ACCOUNT_SYMBOL) && (LA329_2523 <= YEAR_SYMBOL)) || LA329_2523 == AND_SYMBOL || LA329_2523 == AS_SYMBOL || LA329_2523 == BACK_TICK_QUOTED_ID || LA329_2523 == BETWEEN_SYMBOL || LA329_2523 == BIN_NUMBER || LA329_2523 == BITWISE_AND_OPERATOR || ((LA329_2523 >= BITWISE_OR_OPERATOR) && (LA329_2523 <= BITWISE_XOR_OPERATOR)) || ((LA329_2523 >= CLOSE_CURLY_SYMBOL) && (LA329_2523 <= COLLATE_SYMBOL)) || LA329_2523 == COMMA_SYMBOL || LA329_2523 == CONCAT_PIPES_SYMBOL || LA329_2523 == CROSS_SYMBOL || ((LA329_2523 >= DIV_OPERATOR) && (LA329_2523 <= DIV_SYMBOL)) || LA329_2523 == DOUBLE_QUOTED_TEXT || LA329_2523 == EQUAL_OPERATOR || LA329_2523 == FOR_SYMBOL || LA329_2523 == FROM_SYMBOL || ((LA329_2523 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2523 <= GREATER_THAN_OPERATOR)) || ((LA329_2523 >= GROUP_SYMBOL) && (LA329_2523 <= HAVING_SYMBOL)) || LA329_2523 == HEX_NUMBER || LA329_2523 == IDENTIFIER || LA329_2523 == INNER_SYMBOL || LA329_2523 == INTO_SYMBOL || LA329_2523 == IN_SYMBOL || LA329_2523 == IS_SYMBOL || ((LA329_2523 >= JOIN_SYMBOL) && (LA329_2523 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2523 >= LEFT_SYMBOL) && (LA329_2523 <= LESS_THAN_OPERATOR)) || ((LA329_2523 >= LIKE_SYMBOL) && (LA329_2523 <= LIMIT_SYMBOL)) || LA329_2523 == LOCK_SYMBOL || LA329_2523 == LOGICAL_AND_OPERATOR || LA329_2523 == LOGICAL_OR_OPERATOR || LA329_2523 == MINUS_OPERATOR || ((LA329_2523 >= MOD_OPERATOR) && (LA329_2523 <= MOD_SYMBOL)) || ((LA329_2523 >= MULT_OPERATOR) && (LA329_2523 <= NATURAL_SYMBOL)) || ((LA329_2523 >= NOT_EQUAL2_OPERATOR) && (LA329_2523 <= NOT_SYMBOL)) || LA329_2523 == NULL_SAFE_EQUAL_OPERATOR || LA329_2523 == ON_SYMBOL || LA329_2523 == OPEN_PAR_SYMBOL || ((LA329_2523 >= ORDER_SYMBOL) && (LA329_2523 <= OR_SYMBOL)) || LA329_2523 == PLUS_OPERATOR || LA329_2523 == PROCEDURE_SYMBOL || LA329_2523 == REGEXP_SYMBOL || LA329_2523 == RIGHT_SYMBOL || LA329_2523 == SEMICOLON_SYMBOL || LA329_2523 == SET_SYMBOL || ((LA329_2523 >= SHIFT_LEFT_OPERATOR) && (LA329_2523 <= SHIFT_RIGHT_OPERATOR)) || LA329_2523 == SINGLE_QUOTED_TEXT || LA329_2523 == STRAIGHT_JOIN_SYMBOL || LA329_2523 == UNION_SYMBOL || LA329_2523 == USING_SYMBOL || LA329_2523 == WHERE_SYMBOL || LA329_2523 == WITH_SYMBOL || LA329_2523 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2523;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1404 >= ACCOUNT_SYMBOL) && (LA329_1404 <= XA_SYMBOL)) || LA329_1404 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2524 = LA(4);
                                        if ( (LA329_2524 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9323 = LA(5);
                                                if ( (LA329_9323 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9323 >= ACCOUNT_SYMBOL) && (LA329_9323 <= YEAR_SYMBOL)) || LA329_9323 == BACK_TICK_QUOTED_ID || LA329_9323 == DOUBLE_QUOTED_TEXT || LA329_9323 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9323;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2524 == EOF || ((LA329_2524 >= ACCOUNT_SYMBOL) && (LA329_2524 <= YEAR_SYMBOL)) || LA329_2524 == AND_SYMBOL || LA329_2524 == AS_SYMBOL || LA329_2524 == BACK_TICK_QUOTED_ID || LA329_2524 == BETWEEN_SYMBOL || LA329_2524 == BIN_NUMBER || LA329_2524 == BITWISE_AND_OPERATOR || ((LA329_2524 >= BITWISE_OR_OPERATOR) && (LA329_2524 <= BITWISE_XOR_OPERATOR)) || ((LA329_2524 >= CLOSE_CURLY_SYMBOL) && (LA329_2524 <= COLLATE_SYMBOL)) || LA329_2524 == COMMA_SYMBOL || LA329_2524 == CONCAT_PIPES_SYMBOL || LA329_2524 == CROSS_SYMBOL || ((LA329_2524 >= DIV_OPERATOR) && (LA329_2524 <= DIV_SYMBOL)) || LA329_2524 == DOUBLE_QUOTED_TEXT || LA329_2524 == EQUAL_OPERATOR || LA329_2524 == FOR_SYMBOL || LA329_2524 == FROM_SYMBOL || ((LA329_2524 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2524 <= GREATER_THAN_OPERATOR)) || ((LA329_2524 >= GROUP_SYMBOL) && (LA329_2524 <= HAVING_SYMBOL)) || LA329_2524 == HEX_NUMBER || LA329_2524 == IDENTIFIER || LA329_2524 == INNER_SYMBOL || LA329_2524 == INTO_SYMBOL || LA329_2524 == IN_SYMBOL || LA329_2524 == IS_SYMBOL || ((LA329_2524 >= JOIN_SYMBOL) && (LA329_2524 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2524 >= LEFT_SYMBOL) && (LA329_2524 <= LESS_THAN_OPERATOR)) || ((LA329_2524 >= LIKE_SYMBOL) && (LA329_2524 <= LIMIT_SYMBOL)) || LA329_2524 == LOCK_SYMBOL || LA329_2524 == LOGICAL_AND_OPERATOR || LA329_2524 == LOGICAL_OR_OPERATOR || LA329_2524 == MINUS_OPERATOR || ((LA329_2524 >= MOD_OPERATOR) && (LA329_2524 <= MOD_SYMBOL)) || ((LA329_2524 >= MULT_OPERATOR) && (LA329_2524 <= NATURAL_SYMBOL)) || ((LA329_2524 >= NOT_EQUAL2_OPERATOR) && (LA329_2524 <= NOT_SYMBOL)) || LA329_2524 == NULL_SAFE_EQUAL_OPERATOR || LA329_2524 == ON_SYMBOL || LA329_2524 == OPEN_PAR_SYMBOL || ((LA329_2524 >= ORDER_SYMBOL) && (LA329_2524 <= OR_SYMBOL)) || LA329_2524 == PLUS_OPERATOR || LA329_2524 == PROCEDURE_SYMBOL || LA329_2524 == REGEXP_SYMBOL || LA329_2524 == RIGHT_SYMBOL || LA329_2524 == SEMICOLON_SYMBOL || LA329_2524 == SET_SYMBOL || ((LA329_2524 >= SHIFT_LEFT_OPERATOR) && (LA329_2524 <= SHIFT_RIGHT_OPERATOR)) || LA329_2524 == SINGLE_QUOTED_TEXT || LA329_2524 == STRAIGHT_JOIN_SYMBOL || LA329_2524 == UNION_SYMBOL || LA329_2524 == USING_SYMBOL || LA329_2524 == WHERE_SYMBOL || LA329_2524 == WITH_SYMBOL || LA329_2524 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2524;


                                            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  = 329;
                                    EXCEPTION->state        = 1404;


                                    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  = 329;
                            EXCEPTION->state        = 58;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == QUARTER_SYMBOL))
                {
                    {
                        int LA329_59 = LA(2);
                        if ( (LA329_59 == EOF || ((LA329_59 >= ACCOUNT_SYMBOL) && (LA329_59 <= YEAR_SYMBOL)) || LA329_59 == AND_SYMBOL || LA329_59 == AS_SYMBOL || LA329_59 == BACK_TICK_QUOTED_ID || LA329_59 == BETWEEN_SYMBOL || LA329_59 == BIN_NUMBER || LA329_59 == BITWISE_AND_OPERATOR || ((LA329_59 >= BITWISE_OR_OPERATOR) && (LA329_59 <= BITWISE_XOR_OPERATOR)) || ((LA329_59 >= CLOSE_CURLY_SYMBOL) && (LA329_59 <= COLLATE_SYMBOL)) || LA329_59 == COMMA_SYMBOL || LA329_59 == CONCAT_PIPES_SYMBOL || LA329_59 == CROSS_SYMBOL || ((LA329_59 >= DIV_OPERATOR) && (LA329_59 <= DIV_SYMBOL)) || LA329_59 == DOUBLE_QUOTED_TEXT || LA329_59 == EQUAL_OPERATOR || LA329_59 == FOR_SYMBOL || LA329_59 == FROM_SYMBOL || ((LA329_59 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_59 <= GREATER_THAN_OPERATOR)) || ((LA329_59 >= GROUP_SYMBOL) && (LA329_59 <= HAVING_SYMBOL)) || LA329_59 == HEX_NUMBER || LA329_59 == IDENTIFIER || LA329_59 == INNER_SYMBOL || LA329_59 == INTO_SYMBOL || LA329_59 == IN_SYMBOL || LA329_59 == IS_SYMBOL || ((LA329_59 >= JOIN_SYMBOL) && (LA329_59 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_59 >= LEFT_SYMBOL) && (LA329_59 <= LESS_THAN_OPERATOR)) || ((LA329_59 >= LIKE_SYMBOL) && (LA329_59 <= LIMIT_SYMBOL)) || LA329_59 == LOCK_SYMBOL || LA329_59 == LOGICAL_AND_OPERATOR || LA329_59 == LOGICAL_OR_OPERATOR || LA329_59 == MINUS_OPERATOR || ((LA329_59 >= MOD_OPERATOR) && (LA329_59 <= MOD_SYMBOL)) || ((LA329_59 >= MULT_OPERATOR) && (LA329_59 <= NATURAL_SYMBOL)) || ((LA329_59 >= NOT_EQUAL2_OPERATOR) && (LA329_59 <= NOT_SYMBOL)) || LA329_59 == NULL_SAFE_EQUAL_OPERATOR || LA329_59 == ON_SYMBOL || LA329_59 == OPEN_PAR_SYMBOL || ((LA329_59 >= ORDER_SYMBOL) && (LA329_59 <= OR_SYMBOL)) || LA329_59 == PLUS_OPERATOR || LA329_59 == PROCEDURE_SYMBOL || LA329_59 == REGEXP_SYMBOL || LA329_59 == RIGHT_SYMBOL || LA329_59 == SEMICOLON_SYMBOL || LA329_59 == SET_SYMBOL || ((LA329_59 >= SHIFT_LEFT_OPERATOR) && (LA329_59 <= SHIFT_RIGHT_OPERATOR)) || LA329_59 == SINGLE_QUOTED_TEXT || LA329_59 == STRAIGHT_JOIN_SYMBOL || LA329_59 == UNION_SYMBOL || LA329_59 == USING_SYMBOL || LA329_59 == WHERE_SYMBOL || LA329_59 == WITH_SYMBOL || LA329_59 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_59 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1458 = LA(3);
                                if ( (LA329_1458 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1458 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2526 = LA(4);
                                        if ( (LA329_2526 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9377 = LA(5);
                                                if ( (LA329_9377 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9377 >= ACCOUNT_SYMBOL) && (LA329_9377 <= YEAR_SYMBOL)) || LA329_9377 == BACK_TICK_QUOTED_ID || LA329_9377 == DOUBLE_QUOTED_TEXT || LA329_9377 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9377;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2526 == EOF || ((LA329_2526 >= ACCOUNT_SYMBOL) && (LA329_2526 <= YEAR_SYMBOL)) || LA329_2526 == AND_SYMBOL || LA329_2526 == AS_SYMBOL || LA329_2526 == BACK_TICK_QUOTED_ID || LA329_2526 == BETWEEN_SYMBOL || LA329_2526 == BIN_NUMBER || LA329_2526 == BITWISE_AND_OPERATOR || ((LA329_2526 >= BITWISE_OR_OPERATOR) && (LA329_2526 <= BITWISE_XOR_OPERATOR)) || ((LA329_2526 >= CLOSE_CURLY_SYMBOL) && (LA329_2526 <= COLLATE_SYMBOL)) || LA329_2526 == COMMA_SYMBOL || LA329_2526 == CONCAT_PIPES_SYMBOL || LA329_2526 == CROSS_SYMBOL || ((LA329_2526 >= DIV_OPERATOR) && (LA329_2526 <= DIV_SYMBOL)) || LA329_2526 == DOUBLE_QUOTED_TEXT || LA329_2526 == EQUAL_OPERATOR || LA329_2526 == FOR_SYMBOL || LA329_2526 == FROM_SYMBOL || ((LA329_2526 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2526 <= GREATER_THAN_OPERATOR)) || ((LA329_2526 >= GROUP_SYMBOL) && (LA329_2526 <= HAVING_SYMBOL)) || LA329_2526 == HEX_NUMBER || LA329_2526 == IDENTIFIER || LA329_2526 == INNER_SYMBOL || LA329_2526 == INTO_SYMBOL || LA329_2526 == IN_SYMBOL || LA329_2526 == IS_SYMBOL || ((LA329_2526 >= JOIN_SYMBOL) && (LA329_2526 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2526 >= LEFT_SYMBOL) && (LA329_2526 <= LESS_THAN_OPERATOR)) || ((LA329_2526 >= LIKE_SYMBOL) && (LA329_2526 <= LIMIT_SYMBOL)) || LA329_2526 == LOCK_SYMBOL || LA329_2526 == LOGICAL_AND_OPERATOR || LA329_2526 == LOGICAL_OR_OPERATOR || LA329_2526 == MINUS_OPERATOR || ((LA329_2526 >= MOD_OPERATOR) && (LA329_2526 <= MOD_SYMBOL)) || ((LA329_2526 >= MULT_OPERATOR) && (LA329_2526 <= NATURAL_SYMBOL)) || ((LA329_2526 >= NOT_EQUAL2_OPERATOR) && (LA329_2526 <= NOT_SYMBOL)) || LA329_2526 == NULL_SAFE_EQUAL_OPERATOR || LA329_2526 == ON_SYMBOL || LA329_2526 == OPEN_PAR_SYMBOL || ((LA329_2526 >= ORDER_SYMBOL) && (LA329_2526 <= OR_SYMBOL)) || LA329_2526 == PLUS_OPERATOR || LA329_2526 == PROCEDURE_SYMBOL || LA329_2526 == REGEXP_SYMBOL || LA329_2526 == RIGHT_SYMBOL || LA329_2526 == SEMICOLON_SYMBOL || LA329_2526 == SET_SYMBOL || ((LA329_2526 >= SHIFT_LEFT_OPERATOR) && (LA329_2526 <= SHIFT_RIGHT_OPERATOR)) || LA329_2526 == SINGLE_QUOTED_TEXT || LA329_2526 == STRAIGHT_JOIN_SYMBOL || LA329_2526 == UNION_SYMBOL || LA329_2526 == USING_SYMBOL || LA329_2526 == WHERE_SYMBOL || LA329_2526 == WITH_SYMBOL || LA329_2526 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2526;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1458 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2527 = LA(4);
                                        if ( (LA329_2527 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9431 = LA(5);
                                                if ( (LA329_9431 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9431 >= ACCOUNT_SYMBOL) && (LA329_9431 <= YEAR_SYMBOL)) || LA329_9431 == BACK_TICK_QUOTED_ID || LA329_9431 == DOUBLE_QUOTED_TEXT || LA329_9431 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9431;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2527 == EOF || ((LA329_2527 >= ACCOUNT_SYMBOL) && (LA329_2527 <= YEAR_SYMBOL)) || LA329_2527 == AND_SYMBOL || LA329_2527 == AS_SYMBOL || LA329_2527 == BACK_TICK_QUOTED_ID || LA329_2527 == BETWEEN_SYMBOL || LA329_2527 == BIN_NUMBER || LA329_2527 == BITWISE_AND_OPERATOR || ((LA329_2527 >= BITWISE_OR_OPERATOR) && (LA329_2527 <= BITWISE_XOR_OPERATOR)) || ((LA329_2527 >= CLOSE_CURLY_SYMBOL) && (LA329_2527 <= COLLATE_SYMBOL)) || LA329_2527 == COMMA_SYMBOL || LA329_2527 == CONCAT_PIPES_SYMBOL || LA329_2527 == CROSS_SYMBOL || ((LA329_2527 >= DIV_OPERATOR) && (LA329_2527 <= DIV_SYMBOL)) || LA329_2527 == DOUBLE_QUOTED_TEXT || LA329_2527 == EQUAL_OPERATOR || LA329_2527 == FOR_SYMBOL || LA329_2527 == FROM_SYMBOL || ((LA329_2527 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2527 <= GREATER_THAN_OPERATOR)) || ((LA329_2527 >= GROUP_SYMBOL) && (LA329_2527 <= HAVING_SYMBOL)) || LA329_2527 == HEX_NUMBER || LA329_2527 == IDENTIFIER || LA329_2527 == INNER_SYMBOL || LA329_2527 == INTO_SYMBOL || LA329_2527 == IN_SYMBOL || LA329_2527 == IS_SYMBOL || ((LA329_2527 >= JOIN_SYMBOL) && (LA329_2527 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2527 >= LEFT_SYMBOL) && (LA329_2527 <= LESS_THAN_OPERATOR)) || ((LA329_2527 >= LIKE_SYMBOL) && (LA329_2527 <= LIMIT_SYMBOL)) || LA329_2527 == LOCK_SYMBOL || LA329_2527 == LOGICAL_AND_OPERATOR || LA329_2527 == LOGICAL_OR_OPERATOR || LA329_2527 == MINUS_OPERATOR || ((LA329_2527 >= MOD_OPERATOR) && (LA329_2527 <= MOD_SYMBOL)) || ((LA329_2527 >= MULT_OPERATOR) && (LA329_2527 <= NATURAL_SYMBOL)) || ((LA329_2527 >= NOT_EQUAL2_OPERATOR) && (LA329_2527 <= NOT_SYMBOL)) || LA329_2527 == NULL_SAFE_EQUAL_OPERATOR || LA329_2527 == ON_SYMBOL || LA329_2527 == OPEN_PAR_SYMBOL || ((LA329_2527 >= ORDER_SYMBOL) && (LA329_2527 <= OR_SYMBOL)) || LA329_2527 == PLUS_OPERATOR || LA329_2527 == PROCEDURE_SYMBOL || LA329_2527 == REGEXP_SYMBOL || LA329_2527 == RIGHT_SYMBOL || LA329_2527 == SEMICOLON_SYMBOL || LA329_2527 == SET_SYMBOL || ((LA329_2527 >= SHIFT_LEFT_OPERATOR) && (LA329_2527 <= SHIFT_RIGHT_OPERATOR)) || LA329_2527 == SINGLE_QUOTED_TEXT || LA329_2527 == STRAIGHT_JOIN_SYMBOL || LA329_2527 == UNION_SYMBOL || LA329_2527 == USING_SYMBOL || LA329_2527 == WHERE_SYMBOL || LA329_2527 == WITH_SYMBOL || LA329_2527 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2527;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1458 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2528 = LA(4);
                                        if ( (LA329_2528 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9485 = LA(5);
                                                if ( (LA329_9485 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9485 >= ACCOUNT_SYMBOL) && (LA329_9485 <= YEAR_SYMBOL)) || LA329_9485 == BACK_TICK_QUOTED_ID || LA329_9485 == DOUBLE_QUOTED_TEXT || LA329_9485 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9485;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2528 == EOF || ((LA329_2528 >= ACCOUNT_SYMBOL) && (LA329_2528 <= YEAR_SYMBOL)) || LA329_2528 == AND_SYMBOL || LA329_2528 == AS_SYMBOL || LA329_2528 == BACK_TICK_QUOTED_ID || LA329_2528 == BETWEEN_SYMBOL || LA329_2528 == BIN_NUMBER || LA329_2528 == BITWISE_AND_OPERATOR || ((LA329_2528 >= BITWISE_OR_OPERATOR) && (LA329_2528 <= BITWISE_XOR_OPERATOR)) || ((LA329_2528 >= CLOSE_CURLY_SYMBOL) && (LA329_2528 <= COLLATE_SYMBOL)) || LA329_2528 == COMMA_SYMBOL || LA329_2528 == CONCAT_PIPES_SYMBOL || LA329_2528 == CROSS_SYMBOL || ((LA329_2528 >= DIV_OPERATOR) && (LA329_2528 <= DIV_SYMBOL)) || LA329_2528 == DOUBLE_QUOTED_TEXT || LA329_2528 == EQUAL_OPERATOR || LA329_2528 == FOR_SYMBOL || LA329_2528 == FROM_SYMBOL || ((LA329_2528 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2528 <= GREATER_THAN_OPERATOR)) || ((LA329_2528 >= GROUP_SYMBOL) && (LA329_2528 <= HAVING_SYMBOL)) || LA329_2528 == HEX_NUMBER || LA329_2528 == IDENTIFIER || LA329_2528 == INNER_SYMBOL || LA329_2528 == INTO_SYMBOL || LA329_2528 == IN_SYMBOL || LA329_2528 == IS_SYMBOL || ((LA329_2528 >= JOIN_SYMBOL) && (LA329_2528 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2528 >= LEFT_SYMBOL) && (LA329_2528 <= LESS_THAN_OPERATOR)) || ((LA329_2528 >= LIKE_SYMBOL) && (LA329_2528 <= LIMIT_SYMBOL)) || LA329_2528 == LOCK_SYMBOL || LA329_2528 == LOGICAL_AND_OPERATOR || LA329_2528 == LOGICAL_OR_OPERATOR || LA329_2528 == MINUS_OPERATOR || ((LA329_2528 >= MOD_OPERATOR) && (LA329_2528 <= MOD_SYMBOL)) || ((LA329_2528 >= MULT_OPERATOR) && (LA329_2528 <= NATURAL_SYMBOL)) || ((LA329_2528 >= NOT_EQUAL2_OPERATOR) && (LA329_2528 <= NOT_SYMBOL)) || LA329_2528 == NULL_SAFE_EQUAL_OPERATOR || LA329_2528 == ON_SYMBOL || LA329_2528 == OPEN_PAR_SYMBOL || ((LA329_2528 >= ORDER_SYMBOL) && (LA329_2528 <= OR_SYMBOL)) || LA329_2528 == PLUS_OPERATOR || LA329_2528 == PROCEDURE_SYMBOL || LA329_2528 == REGEXP_SYMBOL || LA329_2528 == RIGHT_SYMBOL || LA329_2528 == SEMICOLON_SYMBOL || LA329_2528 == SET_SYMBOL || ((LA329_2528 >= SHIFT_LEFT_OPERATOR) && (LA329_2528 <= SHIFT_RIGHT_OPERATOR)) || LA329_2528 == SINGLE_QUOTED_TEXT || LA329_2528 == STRAIGHT_JOIN_SYMBOL || LA329_2528 == UNION_SYMBOL || LA329_2528 == USING_SYMBOL || LA329_2528 == WHERE_SYMBOL || LA329_2528 == WITH_SYMBOL || LA329_2528 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2528;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1458 >= ACTION_SYMBOL) && (LA329_1458 <= SHARE_SYMBOL)) || ((LA329_1458 >= SLOW_SYMBOL) && (LA329_1458 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2529 = LA(4);
                                        if ( (LA329_2529 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9539 = LA(5);
                                                if ( (LA329_9539 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9539 >= ACCOUNT_SYMBOL) && (LA329_9539 <= YEAR_SYMBOL)) || LA329_9539 == BACK_TICK_QUOTED_ID || LA329_9539 == DOUBLE_QUOTED_TEXT || LA329_9539 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9539;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2529 == EOF || ((LA329_2529 >= ACCOUNT_SYMBOL) && (LA329_2529 <= YEAR_SYMBOL)) || LA329_2529 == AND_SYMBOL || LA329_2529 == AS_SYMBOL || LA329_2529 == BACK_TICK_QUOTED_ID || LA329_2529 == BETWEEN_SYMBOL || LA329_2529 == BIN_NUMBER || LA329_2529 == BITWISE_AND_OPERATOR || ((LA329_2529 >= BITWISE_OR_OPERATOR) && (LA329_2529 <= BITWISE_XOR_OPERATOR)) || ((LA329_2529 >= CLOSE_CURLY_SYMBOL) && (LA329_2529 <= COLLATE_SYMBOL)) || LA329_2529 == COMMA_SYMBOL || LA329_2529 == CONCAT_PIPES_SYMBOL || LA329_2529 == CROSS_SYMBOL || ((LA329_2529 >= DIV_OPERATOR) && (LA329_2529 <= DIV_SYMBOL)) || LA329_2529 == DOUBLE_QUOTED_TEXT || LA329_2529 == EQUAL_OPERATOR || LA329_2529 == FOR_SYMBOL || LA329_2529 == FROM_SYMBOL || ((LA329_2529 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2529 <= GREATER_THAN_OPERATOR)) || ((LA329_2529 >= GROUP_SYMBOL) && (LA329_2529 <= HAVING_SYMBOL)) || LA329_2529 == HEX_NUMBER || LA329_2529 == IDENTIFIER || LA329_2529 == INNER_SYMBOL || LA329_2529 == INTO_SYMBOL || LA329_2529 == IN_SYMBOL || LA329_2529 == IS_SYMBOL || ((LA329_2529 >= JOIN_SYMBOL) && (LA329_2529 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2529 >= LEFT_SYMBOL) && (LA329_2529 <= LESS_THAN_OPERATOR)) || ((LA329_2529 >= LIKE_SYMBOL) && (LA329_2529 <= LIMIT_SYMBOL)) || LA329_2529 == LOCK_SYMBOL || LA329_2529 == LOGICAL_AND_OPERATOR || LA329_2529 == LOGICAL_OR_OPERATOR || LA329_2529 == MINUS_OPERATOR || ((LA329_2529 >= MOD_OPERATOR) && (LA329_2529 <= MOD_SYMBOL)) || ((LA329_2529 >= MULT_OPERATOR) && (LA329_2529 <= NATURAL_SYMBOL)) || ((LA329_2529 >= NOT_EQUAL2_OPERATOR) && (LA329_2529 <= NOT_SYMBOL)) || LA329_2529 == NULL_SAFE_EQUAL_OPERATOR || LA329_2529 == ON_SYMBOL || LA329_2529 == OPEN_PAR_SYMBOL || ((LA329_2529 >= ORDER_SYMBOL) && (LA329_2529 <= OR_SYMBOL)) || LA329_2529 == PLUS_OPERATOR || LA329_2529 == PROCEDURE_SYMBOL || LA329_2529 == REGEXP_SYMBOL || LA329_2529 == RIGHT_SYMBOL || LA329_2529 == SEMICOLON_SYMBOL || LA329_2529 == SET_SYMBOL || ((LA329_2529 >= SHIFT_LEFT_OPERATOR) && (LA329_2529 <= SHIFT_RIGHT_OPERATOR)) || LA329_2529 == SINGLE_QUOTED_TEXT || LA329_2529 == STRAIGHT_JOIN_SYMBOL || LA329_2529 == UNION_SYMBOL || LA329_2529 == USING_SYMBOL || LA329_2529 == WHERE_SYMBOL || LA329_2529 == WITH_SYMBOL || LA329_2529 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2529;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1458 >= ACCOUNT_SYMBOL) && (LA329_1458 <= XA_SYMBOL)) || LA329_1458 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2530 = LA(4);
                                        if ( (LA329_2530 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9593 = LA(5);
                                                if ( (LA329_9593 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9593 >= ACCOUNT_SYMBOL) && (LA329_9593 <= YEAR_SYMBOL)) || LA329_9593 == BACK_TICK_QUOTED_ID || LA329_9593 == DOUBLE_QUOTED_TEXT || LA329_9593 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9593;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2530 == EOF || ((LA329_2530 >= ACCOUNT_SYMBOL) && (LA329_2530 <= YEAR_SYMBOL)) || LA329_2530 == AND_SYMBOL || LA329_2530 == AS_SYMBOL || LA329_2530 == BACK_TICK_QUOTED_ID || LA329_2530 == BETWEEN_SYMBOL || LA329_2530 == BIN_NUMBER || LA329_2530 == BITWISE_AND_OPERATOR || ((LA329_2530 >= BITWISE_OR_OPERATOR) && (LA329_2530 <= BITWISE_XOR_OPERATOR)) || ((LA329_2530 >= CLOSE_CURLY_SYMBOL) && (LA329_2530 <= COLLATE_SYMBOL)) || LA329_2530 == COMMA_SYMBOL || LA329_2530 == CONCAT_PIPES_SYMBOL || LA329_2530 == CROSS_SYMBOL || ((LA329_2530 >= DIV_OPERATOR) && (LA329_2530 <= DIV_SYMBOL)) || LA329_2530 == DOUBLE_QUOTED_TEXT || LA329_2530 == EQUAL_OPERATOR || LA329_2530 == FOR_SYMBOL || LA329_2530 == FROM_SYMBOL || ((LA329_2530 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2530 <= GREATER_THAN_OPERATOR)) || ((LA329_2530 >= GROUP_SYMBOL) && (LA329_2530 <= HAVING_SYMBOL)) || LA329_2530 == HEX_NUMBER || LA329_2530 == IDENTIFIER || LA329_2530 == INNER_SYMBOL || LA329_2530 == INTO_SYMBOL || LA329_2530 == IN_SYMBOL || LA329_2530 == IS_SYMBOL || ((LA329_2530 >= JOIN_SYMBOL) && (LA329_2530 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2530 >= LEFT_SYMBOL) && (LA329_2530 <= LESS_THAN_OPERATOR)) || ((LA329_2530 >= LIKE_SYMBOL) && (LA329_2530 <= LIMIT_SYMBOL)) || LA329_2530 == LOCK_SYMBOL || LA329_2530 == LOGICAL_AND_OPERATOR || LA329_2530 == LOGICAL_OR_OPERATOR || LA329_2530 == MINUS_OPERATOR || ((LA329_2530 >= MOD_OPERATOR) && (LA329_2530 <= MOD_SYMBOL)) || ((LA329_2530 >= MULT_OPERATOR) && (LA329_2530 <= NATURAL_SYMBOL)) || ((LA329_2530 >= NOT_EQUAL2_OPERATOR) && (LA329_2530 <= NOT_SYMBOL)) || LA329_2530 == NULL_SAFE_EQUAL_OPERATOR || LA329_2530 == ON_SYMBOL || LA329_2530 == OPEN_PAR_SYMBOL || ((LA329_2530 >= ORDER_SYMBOL) && (LA329_2530 <= OR_SYMBOL)) || LA329_2530 == PLUS_OPERATOR || LA329_2530 == PROCEDURE_SYMBOL || LA329_2530 == REGEXP_SYMBOL || LA329_2530 == RIGHT_SYMBOL || LA329_2530 == SEMICOLON_SYMBOL || LA329_2530 == SET_SYMBOL || ((LA329_2530 >= SHIFT_LEFT_OPERATOR) && (LA329_2530 <= SHIFT_RIGHT_OPERATOR)) || LA329_2530 == SINGLE_QUOTED_TEXT || LA329_2530 == STRAIGHT_JOIN_SYMBOL || LA329_2530 == UNION_SYMBOL || LA329_2530 == USING_SYMBOL || LA329_2530 == WHERE_SYMBOL || LA329_2530 == WITH_SYMBOL || LA329_2530 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2530;


                                            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  = 329;
                                    EXCEPTION->state        = 1458;


                                    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  = 329;
                            EXCEPTION->state        = 59;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == REVERSE_SYMBOL))
                {
                    {
                        int LA329_60 = LA(2);
                        if ( (LA329_60 == EOF || ((LA329_60 >= ACCOUNT_SYMBOL) && (LA329_60 <= YEAR_SYMBOL)) || LA329_60 == AND_SYMBOL || LA329_60 == AS_SYMBOL || LA329_60 == BACK_TICK_QUOTED_ID || LA329_60 == BETWEEN_SYMBOL || LA329_60 == BIN_NUMBER || LA329_60 == BITWISE_AND_OPERATOR || ((LA329_60 >= BITWISE_OR_OPERATOR) && (LA329_60 <= BITWISE_XOR_OPERATOR)) || ((LA329_60 >= CLOSE_CURLY_SYMBOL) && (LA329_60 <= COLLATE_SYMBOL)) || LA329_60 == COMMA_SYMBOL || LA329_60 == CONCAT_PIPES_SYMBOL || LA329_60 == CROSS_SYMBOL || ((LA329_60 >= DIV_OPERATOR) && (LA329_60 <= DIV_SYMBOL)) || LA329_60 == DOUBLE_QUOTED_TEXT || LA329_60 == EQUAL_OPERATOR || LA329_60 == FOR_SYMBOL || LA329_60 == FROM_SYMBOL || ((LA329_60 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_60 <= GREATER_THAN_OPERATOR)) || ((LA329_60 >= GROUP_SYMBOL) && (LA329_60 <= HAVING_SYMBOL)) || LA329_60 == HEX_NUMBER || LA329_60 == IDENTIFIER || LA329_60 == INNER_SYMBOL || LA329_60 == INTO_SYMBOL || LA329_60 == IN_SYMBOL || LA329_60 == IS_SYMBOL || ((LA329_60 >= JOIN_SYMBOL) && (LA329_60 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_60 >= LEFT_SYMBOL) && (LA329_60 <= LESS_THAN_OPERATOR)) || ((LA329_60 >= LIKE_SYMBOL) && (LA329_60 <= LIMIT_SYMBOL)) || LA329_60 == LOCK_SYMBOL || LA329_60 == LOGICAL_AND_OPERATOR || LA329_60 == LOGICAL_OR_OPERATOR || LA329_60 == MINUS_OPERATOR || ((LA329_60 >= MOD_OPERATOR) && (LA329_60 <= MOD_SYMBOL)) || ((LA329_60 >= MULT_OPERATOR) && (LA329_60 <= NATURAL_SYMBOL)) || ((LA329_60 >= NOT_EQUAL2_OPERATOR) && (LA329_60 <= NOT_SYMBOL)) || LA329_60 == NULL_SAFE_EQUAL_OPERATOR || LA329_60 == ON_SYMBOL || LA329_60 == OPEN_PAR_SYMBOL || ((LA329_60 >= ORDER_SYMBOL) && (LA329_60 <= OR_SYMBOL)) || LA329_60 == PLUS_OPERATOR || LA329_60 == PROCEDURE_SYMBOL || LA329_60 == REGEXP_SYMBOL || LA329_60 == RIGHT_SYMBOL || LA329_60 == SEMICOLON_SYMBOL || LA329_60 == SET_SYMBOL || ((LA329_60 >= SHIFT_LEFT_OPERATOR) && (LA329_60 <= SHIFT_RIGHT_OPERATOR)) || LA329_60 == SINGLE_QUOTED_TEXT || LA329_60 == STRAIGHT_JOIN_SYMBOL || LA329_60 == UNION_SYMBOL || LA329_60 == USING_SYMBOL || LA329_60 == WHERE_SYMBOL || LA329_60 == WITH_SYMBOL || LA329_60 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_60 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1512 = LA(3);
                                if ( (LA329_1512 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1512 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2532 = LA(4);
                                        if ( (LA329_2532 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9647 = LA(5);
                                                if ( (LA329_9647 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9647 >= ACCOUNT_SYMBOL) && (LA329_9647 <= YEAR_SYMBOL)) || LA329_9647 == BACK_TICK_QUOTED_ID || LA329_9647 == DOUBLE_QUOTED_TEXT || LA329_9647 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9647;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2532 == EOF || ((LA329_2532 >= ACCOUNT_SYMBOL) && (LA329_2532 <= YEAR_SYMBOL)) || LA329_2532 == AND_SYMBOL || LA329_2532 == AS_SYMBOL || LA329_2532 == BACK_TICK_QUOTED_ID || LA329_2532 == BETWEEN_SYMBOL || LA329_2532 == BIN_NUMBER || LA329_2532 == BITWISE_AND_OPERATOR || ((LA329_2532 >= BITWISE_OR_OPERATOR) && (LA329_2532 <= BITWISE_XOR_OPERATOR)) || ((LA329_2532 >= CLOSE_CURLY_SYMBOL) && (LA329_2532 <= COLLATE_SYMBOL)) || LA329_2532 == COMMA_SYMBOL || LA329_2532 == CONCAT_PIPES_SYMBOL || LA329_2532 == CROSS_SYMBOL || ((LA329_2532 >= DIV_OPERATOR) && (LA329_2532 <= DIV_SYMBOL)) || LA329_2532 == DOUBLE_QUOTED_TEXT || LA329_2532 == EQUAL_OPERATOR || LA329_2532 == FOR_SYMBOL || LA329_2532 == FROM_SYMBOL || ((LA329_2532 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2532 <= GREATER_THAN_OPERATOR)) || ((LA329_2532 >= GROUP_SYMBOL) && (LA329_2532 <= HAVING_SYMBOL)) || LA329_2532 == HEX_NUMBER || LA329_2532 == IDENTIFIER || LA329_2532 == INNER_SYMBOL || LA329_2532 == INTO_SYMBOL || LA329_2532 == IN_SYMBOL || LA329_2532 == IS_SYMBOL || ((LA329_2532 >= JOIN_SYMBOL) && (LA329_2532 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2532 >= LEFT_SYMBOL) && (LA329_2532 <= LESS_THAN_OPERATOR)) || ((LA329_2532 >= LIKE_SYMBOL) && (LA329_2532 <= LIMIT_SYMBOL)) || LA329_2532 == LOCK_SYMBOL || LA329_2532 == LOGICAL_AND_OPERATOR || LA329_2532 == LOGICAL_OR_OPERATOR || LA329_2532 == MINUS_OPERATOR || ((LA329_2532 >= MOD_OPERATOR) && (LA329_2532 <= MOD_SYMBOL)) || ((LA329_2532 >= MULT_OPERATOR) && (LA329_2532 <= NATURAL_SYMBOL)) || ((LA329_2532 >= NOT_EQUAL2_OPERATOR) && (LA329_2532 <= NOT_SYMBOL)) || LA329_2532 == NULL_SAFE_EQUAL_OPERATOR || LA329_2532 == ON_SYMBOL || LA329_2532 == OPEN_PAR_SYMBOL || ((LA329_2532 >= ORDER_SYMBOL) && (LA329_2532 <= OR_SYMBOL)) || LA329_2532 == PLUS_OPERATOR || LA329_2532 == PROCEDURE_SYMBOL || LA329_2532 == REGEXP_SYMBOL || LA329_2532 == RIGHT_SYMBOL || LA329_2532 == SEMICOLON_SYMBOL || LA329_2532 == SET_SYMBOL || ((LA329_2532 >= SHIFT_LEFT_OPERATOR) && (LA329_2532 <= SHIFT_RIGHT_OPERATOR)) || LA329_2532 == SINGLE_QUOTED_TEXT || LA329_2532 == STRAIGHT_JOIN_SYMBOL || LA329_2532 == UNION_SYMBOL || LA329_2532 == USING_SYMBOL || LA329_2532 == WHERE_SYMBOL || LA329_2532 == WITH_SYMBOL || LA329_2532 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2532;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1512 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2533 = LA(4);
                                        if ( (LA329_2533 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9701 = LA(5);
                                                if ( (LA329_9701 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9701 >= ACCOUNT_SYMBOL) && (LA329_9701 <= YEAR_SYMBOL)) || LA329_9701 == BACK_TICK_QUOTED_ID || LA329_9701 == DOUBLE_QUOTED_TEXT || LA329_9701 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9701;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2533 == EOF || ((LA329_2533 >= ACCOUNT_SYMBOL) && (LA329_2533 <= YEAR_SYMBOL)) || LA329_2533 == AND_SYMBOL || LA329_2533 == AS_SYMBOL || LA329_2533 == BACK_TICK_QUOTED_ID || LA329_2533 == BETWEEN_SYMBOL || LA329_2533 == BIN_NUMBER || LA329_2533 == BITWISE_AND_OPERATOR || ((LA329_2533 >= BITWISE_OR_OPERATOR) && (LA329_2533 <= BITWISE_XOR_OPERATOR)) || ((LA329_2533 >= CLOSE_CURLY_SYMBOL) && (LA329_2533 <= COLLATE_SYMBOL)) || LA329_2533 == COMMA_SYMBOL || LA329_2533 == CONCAT_PIPES_SYMBOL || LA329_2533 == CROSS_SYMBOL || ((LA329_2533 >= DIV_OPERATOR) && (LA329_2533 <= DIV_SYMBOL)) || LA329_2533 == DOUBLE_QUOTED_TEXT || LA329_2533 == EQUAL_OPERATOR || LA329_2533 == FOR_SYMBOL || LA329_2533 == FROM_SYMBOL || ((LA329_2533 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2533 <= GREATER_THAN_OPERATOR)) || ((LA329_2533 >= GROUP_SYMBOL) && (LA329_2533 <= HAVING_SYMBOL)) || LA329_2533 == HEX_NUMBER || LA329_2533 == IDENTIFIER || LA329_2533 == INNER_SYMBOL || LA329_2533 == INTO_SYMBOL || LA329_2533 == IN_SYMBOL || LA329_2533 == IS_SYMBOL || ((LA329_2533 >= JOIN_SYMBOL) && (LA329_2533 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2533 >= LEFT_SYMBOL) && (LA329_2533 <= LESS_THAN_OPERATOR)) || ((LA329_2533 >= LIKE_SYMBOL) && (LA329_2533 <= LIMIT_SYMBOL)) || LA329_2533 == LOCK_SYMBOL || LA329_2533 == LOGICAL_AND_OPERATOR || LA329_2533 == LOGICAL_OR_OPERATOR || LA329_2533 == MINUS_OPERATOR || ((LA329_2533 >= MOD_OPERATOR) && (LA329_2533 <= MOD_SYMBOL)) || ((LA329_2533 >= MULT_OPERATOR) && (LA329_2533 <= NATURAL_SYMBOL)) || ((LA329_2533 >= NOT_EQUAL2_OPERATOR) && (LA329_2533 <= NOT_SYMBOL)) || LA329_2533 == NULL_SAFE_EQUAL_OPERATOR || LA329_2533 == ON_SYMBOL || LA329_2533 == OPEN_PAR_SYMBOL || ((LA329_2533 >= ORDER_SYMBOL) && (LA329_2533 <= OR_SYMBOL)) || LA329_2533 == PLUS_OPERATOR || LA329_2533 == PROCEDURE_SYMBOL || LA329_2533 == REGEXP_SYMBOL || LA329_2533 == RIGHT_SYMBOL || LA329_2533 == SEMICOLON_SYMBOL || LA329_2533 == SET_SYMBOL || ((LA329_2533 >= SHIFT_LEFT_OPERATOR) && (LA329_2533 <= SHIFT_RIGHT_OPERATOR)) || LA329_2533 == SINGLE_QUOTED_TEXT || LA329_2533 == STRAIGHT_JOIN_SYMBOL || LA329_2533 == UNION_SYMBOL || LA329_2533 == USING_SYMBOL || LA329_2533 == WHERE_SYMBOL || LA329_2533 == WITH_SYMBOL || LA329_2533 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2533;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1512 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2534 = LA(4);
                                        if ( (LA329_2534 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9755 = LA(5);
                                                if ( (LA329_9755 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9755 >= ACCOUNT_SYMBOL) && (LA329_9755 <= YEAR_SYMBOL)) || LA329_9755 == BACK_TICK_QUOTED_ID || LA329_9755 == DOUBLE_QUOTED_TEXT || LA329_9755 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9755;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2534 == EOF || ((LA329_2534 >= ACCOUNT_SYMBOL) && (LA329_2534 <= YEAR_SYMBOL)) || LA329_2534 == AND_SYMBOL || LA329_2534 == AS_SYMBOL || LA329_2534 == BACK_TICK_QUOTED_ID || LA329_2534 == BETWEEN_SYMBOL || LA329_2534 == BIN_NUMBER || LA329_2534 == BITWISE_AND_OPERATOR || ((LA329_2534 >= BITWISE_OR_OPERATOR) && (LA329_2534 <= BITWISE_XOR_OPERATOR)) || ((LA329_2534 >= CLOSE_CURLY_SYMBOL) && (LA329_2534 <= COLLATE_SYMBOL)) || LA329_2534 == COMMA_SYMBOL || LA329_2534 == CONCAT_PIPES_SYMBOL || LA329_2534 == CROSS_SYMBOL || ((LA329_2534 >= DIV_OPERATOR) && (LA329_2534 <= DIV_SYMBOL)) || LA329_2534 == DOUBLE_QUOTED_TEXT || LA329_2534 == EQUAL_OPERATOR || LA329_2534 == FOR_SYMBOL || LA329_2534 == FROM_SYMBOL || ((LA329_2534 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2534 <= GREATER_THAN_OPERATOR)) || ((LA329_2534 >= GROUP_SYMBOL) && (LA329_2534 <= HAVING_SYMBOL)) || LA329_2534 == HEX_NUMBER || LA329_2534 == IDENTIFIER || LA329_2534 == INNER_SYMBOL || LA329_2534 == INTO_SYMBOL || LA329_2534 == IN_SYMBOL || LA329_2534 == IS_SYMBOL || ((LA329_2534 >= JOIN_SYMBOL) && (LA329_2534 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2534 >= LEFT_SYMBOL) && (LA329_2534 <= LESS_THAN_OPERATOR)) || ((LA329_2534 >= LIKE_SYMBOL) && (LA329_2534 <= LIMIT_SYMBOL)) || LA329_2534 == LOCK_SYMBOL || LA329_2534 == LOGICAL_AND_OPERATOR || LA329_2534 == LOGICAL_OR_OPERATOR || LA329_2534 == MINUS_OPERATOR || ((LA329_2534 >= MOD_OPERATOR) && (LA329_2534 <= MOD_SYMBOL)) || ((LA329_2534 >= MULT_OPERATOR) && (LA329_2534 <= NATURAL_SYMBOL)) || ((LA329_2534 >= NOT_EQUAL2_OPERATOR) && (LA329_2534 <= NOT_SYMBOL)) || LA329_2534 == NULL_SAFE_EQUAL_OPERATOR || LA329_2534 == ON_SYMBOL || LA329_2534 == OPEN_PAR_SYMBOL || ((LA329_2534 >= ORDER_SYMBOL) && (LA329_2534 <= OR_SYMBOL)) || LA329_2534 == PLUS_OPERATOR || LA329_2534 == PROCEDURE_SYMBOL || LA329_2534 == REGEXP_SYMBOL || LA329_2534 == RIGHT_SYMBOL || LA329_2534 == SEMICOLON_SYMBOL || LA329_2534 == SET_SYMBOL || ((LA329_2534 >= SHIFT_LEFT_OPERATOR) && (LA329_2534 <= SHIFT_RIGHT_OPERATOR)) || LA329_2534 == SINGLE_QUOTED_TEXT || LA329_2534 == STRAIGHT_JOIN_SYMBOL || LA329_2534 == UNION_SYMBOL || LA329_2534 == USING_SYMBOL || LA329_2534 == WHERE_SYMBOL || LA329_2534 == WITH_SYMBOL || LA329_2534 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2534;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1512 >= ACTION_SYMBOL) && (LA329_1512 <= SHARE_SYMBOL)) || ((LA329_1512 >= SLOW_SYMBOL) && (LA329_1512 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2535 = LA(4);
                                        if ( (LA329_2535 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9809 = LA(5);
                                                if ( (LA329_9809 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9809 >= ACCOUNT_SYMBOL) && (LA329_9809 <= YEAR_SYMBOL)) || LA329_9809 == BACK_TICK_QUOTED_ID || LA329_9809 == DOUBLE_QUOTED_TEXT || LA329_9809 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9809;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2535 == EOF || ((LA329_2535 >= ACCOUNT_SYMBOL) && (LA329_2535 <= YEAR_SYMBOL)) || LA329_2535 == AND_SYMBOL || LA329_2535 == AS_SYMBOL || LA329_2535 == BACK_TICK_QUOTED_ID || LA329_2535 == BETWEEN_SYMBOL || LA329_2535 == BIN_NUMBER || LA329_2535 == BITWISE_AND_OPERATOR || ((LA329_2535 >= BITWISE_OR_OPERATOR) && (LA329_2535 <= BITWISE_XOR_OPERATOR)) || ((LA329_2535 >= CLOSE_CURLY_SYMBOL) && (LA329_2535 <= COLLATE_SYMBOL)) || LA329_2535 == COMMA_SYMBOL || LA329_2535 == CONCAT_PIPES_SYMBOL || LA329_2535 == CROSS_SYMBOL || ((LA329_2535 >= DIV_OPERATOR) && (LA329_2535 <= DIV_SYMBOL)) || LA329_2535 == DOUBLE_QUOTED_TEXT || LA329_2535 == EQUAL_OPERATOR || LA329_2535 == FOR_SYMBOL || LA329_2535 == FROM_SYMBOL || ((LA329_2535 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2535 <= GREATER_THAN_OPERATOR)) || ((LA329_2535 >= GROUP_SYMBOL) && (LA329_2535 <= HAVING_SYMBOL)) || LA329_2535 == HEX_NUMBER || LA329_2535 == IDENTIFIER || LA329_2535 == INNER_SYMBOL || LA329_2535 == INTO_SYMBOL || LA329_2535 == IN_SYMBOL || LA329_2535 == IS_SYMBOL || ((LA329_2535 >= JOIN_SYMBOL) && (LA329_2535 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2535 >= LEFT_SYMBOL) && (LA329_2535 <= LESS_THAN_OPERATOR)) || ((LA329_2535 >= LIKE_SYMBOL) && (LA329_2535 <= LIMIT_SYMBOL)) || LA329_2535 == LOCK_SYMBOL || LA329_2535 == LOGICAL_AND_OPERATOR || LA329_2535 == LOGICAL_OR_OPERATOR || LA329_2535 == MINUS_OPERATOR || ((LA329_2535 >= MOD_OPERATOR) && (LA329_2535 <= MOD_SYMBOL)) || ((LA329_2535 >= MULT_OPERATOR) && (LA329_2535 <= NATURAL_SYMBOL)) || ((LA329_2535 >= NOT_EQUAL2_OPERATOR) && (LA329_2535 <= NOT_SYMBOL)) || LA329_2535 == NULL_SAFE_EQUAL_OPERATOR || LA329_2535 == ON_SYMBOL || LA329_2535 == OPEN_PAR_SYMBOL || ((LA329_2535 >= ORDER_SYMBOL) && (LA329_2535 <= OR_SYMBOL)) || LA329_2535 == PLUS_OPERATOR || LA329_2535 == PROCEDURE_SYMBOL || LA329_2535 == REGEXP_SYMBOL || LA329_2535 == RIGHT_SYMBOL || LA329_2535 == SEMICOLON_SYMBOL || LA329_2535 == SET_SYMBOL || ((LA329_2535 >= SHIFT_LEFT_OPERATOR) && (LA329_2535 <= SHIFT_RIGHT_OPERATOR)) || LA329_2535 == SINGLE_QUOTED_TEXT || LA329_2535 == STRAIGHT_JOIN_SYMBOL || LA329_2535 == UNION_SYMBOL || LA329_2535 == USING_SYMBOL || LA329_2535 == WHERE_SYMBOL || LA329_2535 == WITH_SYMBOL || LA329_2535 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2535;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1512 >= ACCOUNT_SYMBOL) && (LA329_1512 <= XA_SYMBOL)) || LA329_1512 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2536 = LA(4);
                                        if ( (LA329_2536 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9863 = LA(5);
                                                if ( (LA329_9863 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9863 >= ACCOUNT_SYMBOL) && (LA329_9863 <= YEAR_SYMBOL)) || LA329_9863 == BACK_TICK_QUOTED_ID || LA329_9863 == DOUBLE_QUOTED_TEXT || LA329_9863 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9863;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2536 == EOF || ((LA329_2536 >= ACCOUNT_SYMBOL) && (LA329_2536 <= YEAR_SYMBOL)) || LA329_2536 == AND_SYMBOL || LA329_2536 == AS_SYMBOL || LA329_2536 == BACK_TICK_QUOTED_ID || LA329_2536 == BETWEEN_SYMBOL || LA329_2536 == BIN_NUMBER || LA329_2536 == BITWISE_AND_OPERATOR || ((LA329_2536 >= BITWISE_OR_OPERATOR) && (LA329_2536 <= BITWISE_XOR_OPERATOR)) || ((LA329_2536 >= CLOSE_CURLY_SYMBOL) && (LA329_2536 <= COLLATE_SYMBOL)) || LA329_2536 == COMMA_SYMBOL || LA329_2536 == CONCAT_PIPES_SYMBOL || LA329_2536 == CROSS_SYMBOL || ((LA329_2536 >= DIV_OPERATOR) && (LA329_2536 <= DIV_SYMBOL)) || LA329_2536 == DOUBLE_QUOTED_TEXT || LA329_2536 == EQUAL_OPERATOR || LA329_2536 == FOR_SYMBOL || LA329_2536 == FROM_SYMBOL || ((LA329_2536 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2536 <= GREATER_THAN_OPERATOR)) || ((LA329_2536 >= GROUP_SYMBOL) && (LA329_2536 <= HAVING_SYMBOL)) || LA329_2536 == HEX_NUMBER || LA329_2536 == IDENTIFIER || LA329_2536 == INNER_SYMBOL || LA329_2536 == INTO_SYMBOL || LA329_2536 == IN_SYMBOL || LA329_2536 == IS_SYMBOL || ((LA329_2536 >= JOIN_SYMBOL) && (LA329_2536 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2536 >= LEFT_SYMBOL) && (LA329_2536 <= LESS_THAN_OPERATOR)) || ((LA329_2536 >= LIKE_SYMBOL) && (LA329_2536 <= LIMIT_SYMBOL)) || LA329_2536 == LOCK_SYMBOL || LA329_2536 == LOGICAL_AND_OPERATOR || LA329_2536 == LOGICAL_OR_OPERATOR || LA329_2536 == MINUS_OPERATOR || ((LA329_2536 >= MOD_OPERATOR) && (LA329_2536 <= MOD_SYMBOL)) || ((LA329_2536 >= MULT_OPERATOR) && (LA329_2536 <= NATURAL_SYMBOL)) || ((LA329_2536 >= NOT_EQUAL2_OPERATOR) && (LA329_2536 <= NOT_SYMBOL)) || LA329_2536 == NULL_SAFE_EQUAL_OPERATOR || LA329_2536 == ON_SYMBOL || LA329_2536 == OPEN_PAR_SYMBOL || ((LA329_2536 >= ORDER_SYMBOL) && (LA329_2536 <= OR_SYMBOL)) || LA329_2536 == PLUS_OPERATOR || LA329_2536 == PROCEDURE_SYMBOL || LA329_2536 == REGEXP_SYMBOL || LA329_2536 == RIGHT_SYMBOL || LA329_2536 == SEMICOLON_SYMBOL || LA329_2536 == SET_SYMBOL || ((LA329_2536 >= SHIFT_LEFT_OPERATOR) && (LA329_2536 <= SHIFT_RIGHT_OPERATOR)) || LA329_2536 == SINGLE_QUOTED_TEXT || LA329_2536 == STRAIGHT_JOIN_SYMBOL || LA329_2536 == UNION_SYMBOL || LA329_2536 == USING_SYMBOL || LA329_2536 == WHERE_SYMBOL || LA329_2536 == WITH_SYMBOL || LA329_2536 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2536;


                                            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  = 329;
                                    EXCEPTION->state        = 1512;


                                    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  = 329;
                            EXCEPTION->state        = 60;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == ROW_COUNT_SYMBOL))
                {
                    {
                        int LA329_63 = LA(2);
                        if ( (LA329_63 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1565 = LA(3);
                                if ( (LA329_1565 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1565 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2538 = LA(4);
                                        if ( (LA329_2538 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9917 = LA(5);
                                                if ( (LA329_9917 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9917 >= ACCOUNT_SYMBOL) && (LA329_9917 <= YEAR_SYMBOL)) || LA329_9917 == BACK_TICK_QUOTED_ID || LA329_9917 == DOUBLE_QUOTED_TEXT || LA329_9917 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9917;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2538 == EOF || ((LA329_2538 >= ACCOUNT_SYMBOL) && (LA329_2538 <= YEAR_SYMBOL)) || LA329_2538 == AND_SYMBOL || LA329_2538 == AS_SYMBOL || LA329_2538 == BACK_TICK_QUOTED_ID || LA329_2538 == BETWEEN_SYMBOL || LA329_2538 == BIN_NUMBER || LA329_2538 == BITWISE_AND_OPERATOR || ((LA329_2538 >= BITWISE_OR_OPERATOR) && (LA329_2538 <= BITWISE_XOR_OPERATOR)) || ((LA329_2538 >= CLOSE_CURLY_SYMBOL) && (LA329_2538 <= COLLATE_SYMBOL)) || LA329_2538 == COMMA_SYMBOL || LA329_2538 == CONCAT_PIPES_SYMBOL || LA329_2538 == CROSS_SYMBOL || ((LA329_2538 >= DIV_OPERATOR) && (LA329_2538 <= DIV_SYMBOL)) || LA329_2538 == DOUBLE_QUOTED_TEXT || LA329_2538 == EQUAL_OPERATOR || LA329_2538 == FOR_SYMBOL || LA329_2538 == FROM_SYMBOL || ((LA329_2538 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2538 <= GREATER_THAN_OPERATOR)) || ((LA329_2538 >= GROUP_SYMBOL) && (LA329_2538 <= HAVING_SYMBOL)) || LA329_2538 == HEX_NUMBER || LA329_2538 == IDENTIFIER || LA329_2538 == INNER_SYMBOL || LA329_2538 == INTO_SYMBOL || LA329_2538 == IN_SYMBOL || LA329_2538 == IS_SYMBOL || ((LA329_2538 >= JOIN_SYMBOL) && (LA329_2538 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2538 >= LEFT_SYMBOL) && (LA329_2538 <= LESS_THAN_OPERATOR)) || ((LA329_2538 >= LIKE_SYMBOL) && (LA329_2538 <= LIMIT_SYMBOL)) || LA329_2538 == LOCK_SYMBOL || LA329_2538 == LOGICAL_AND_OPERATOR || LA329_2538 == LOGICAL_OR_OPERATOR || LA329_2538 == MINUS_OPERATOR || ((LA329_2538 >= MOD_OPERATOR) && (LA329_2538 <= MOD_SYMBOL)) || ((LA329_2538 >= MULT_OPERATOR) && (LA329_2538 <= NATURAL_SYMBOL)) || ((LA329_2538 >= NOT_EQUAL2_OPERATOR) && (LA329_2538 <= NOT_SYMBOL)) || LA329_2538 == NULL_SAFE_EQUAL_OPERATOR || LA329_2538 == ON_SYMBOL || LA329_2538 == OPEN_PAR_SYMBOL || ((LA329_2538 >= ORDER_SYMBOL) && (LA329_2538 <= OR_SYMBOL)) || LA329_2538 == PLUS_OPERATOR || LA329_2538 == PROCEDURE_SYMBOL || LA329_2538 == REGEXP_SYMBOL || LA329_2538 == RIGHT_SYMBOL || LA329_2538 == SEMICOLON_SYMBOL || LA329_2538 == SET_SYMBOL || ((LA329_2538 >= SHIFT_LEFT_OPERATOR) && (LA329_2538 <= SHIFT_RIGHT_OPERATOR)) || LA329_2538 == SINGLE_QUOTED_TEXT || LA329_2538 == STRAIGHT_JOIN_SYMBOL || LA329_2538 == UNION_SYMBOL || LA329_2538 == USING_SYMBOL || LA329_2538 == WHERE_SYMBOL || LA329_2538 == WITH_SYMBOL || LA329_2538 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2538;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1565 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2539 = LA(4);
                                        if ( (LA329_2539 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_9971 = LA(5);
                                                if ( (LA329_9971 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_9971 >= ACCOUNT_SYMBOL) && (LA329_9971 <= YEAR_SYMBOL)) || LA329_9971 == BACK_TICK_QUOTED_ID || LA329_9971 == DOUBLE_QUOTED_TEXT || LA329_9971 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 9971;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2539 == EOF || ((LA329_2539 >= ACCOUNT_SYMBOL) && (LA329_2539 <= YEAR_SYMBOL)) || LA329_2539 == AND_SYMBOL || LA329_2539 == AS_SYMBOL || LA329_2539 == BACK_TICK_QUOTED_ID || LA329_2539 == BETWEEN_SYMBOL || LA329_2539 == BIN_NUMBER || LA329_2539 == BITWISE_AND_OPERATOR || ((LA329_2539 >= BITWISE_OR_OPERATOR) && (LA329_2539 <= BITWISE_XOR_OPERATOR)) || ((LA329_2539 >= CLOSE_CURLY_SYMBOL) && (LA329_2539 <= COLLATE_SYMBOL)) || LA329_2539 == COMMA_SYMBOL || LA329_2539 == CONCAT_PIPES_SYMBOL || LA329_2539 == CROSS_SYMBOL || ((LA329_2539 >= DIV_OPERATOR) && (LA329_2539 <= DIV_SYMBOL)) || LA329_2539 == DOUBLE_QUOTED_TEXT || LA329_2539 == EQUAL_OPERATOR || LA329_2539 == FOR_SYMBOL || LA329_2539 == FROM_SYMBOL || ((LA329_2539 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2539 <= GREATER_THAN_OPERATOR)) || ((LA329_2539 >= GROUP_SYMBOL) && (LA329_2539 <= HAVING_SYMBOL)) || LA329_2539 == HEX_NUMBER || LA329_2539 == IDENTIFIER || LA329_2539 == INNER_SYMBOL || LA329_2539 == INTO_SYMBOL || LA329_2539 == IN_SYMBOL || LA329_2539 == IS_SYMBOL || ((LA329_2539 >= JOIN_SYMBOL) && (LA329_2539 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2539 >= LEFT_SYMBOL) && (LA329_2539 <= LESS_THAN_OPERATOR)) || ((LA329_2539 >= LIKE_SYMBOL) && (LA329_2539 <= LIMIT_SYMBOL)) || LA329_2539 == LOCK_SYMBOL || LA329_2539 == LOGICAL_AND_OPERATOR || LA329_2539 == LOGICAL_OR_OPERATOR || LA329_2539 == MINUS_OPERATOR || ((LA329_2539 >= MOD_OPERATOR) && (LA329_2539 <= MOD_SYMBOL)) || ((LA329_2539 >= MULT_OPERATOR) && (LA329_2539 <= NATURAL_SYMBOL)) || ((LA329_2539 >= NOT_EQUAL2_OPERATOR) && (LA329_2539 <= NOT_SYMBOL)) || LA329_2539 == NULL_SAFE_EQUAL_OPERATOR || LA329_2539 == ON_SYMBOL || LA329_2539 == OPEN_PAR_SYMBOL || ((LA329_2539 >= ORDER_SYMBOL) && (LA329_2539 <= OR_SYMBOL)) || LA329_2539 == PLUS_OPERATOR || LA329_2539 == PROCEDURE_SYMBOL || LA329_2539 == REGEXP_SYMBOL || LA329_2539 == RIGHT_SYMBOL || LA329_2539 == SEMICOLON_SYMBOL || LA329_2539 == SET_SYMBOL || ((LA329_2539 >= SHIFT_LEFT_OPERATOR) && (LA329_2539 <= SHIFT_RIGHT_OPERATOR)) || LA329_2539 == SINGLE_QUOTED_TEXT || LA329_2539 == STRAIGHT_JOIN_SYMBOL || LA329_2539 == UNION_SYMBOL || LA329_2539 == USING_SYMBOL || LA329_2539 == WHERE_SYMBOL || LA329_2539 == WITH_SYMBOL || LA329_2539 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2539;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1565 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2540 = LA(4);
                                        if ( (LA329_2540 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10025 = LA(5);
                                                if ( (LA329_10025 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10025 >= ACCOUNT_SYMBOL) && (LA329_10025 <= YEAR_SYMBOL)) || LA329_10025 == BACK_TICK_QUOTED_ID || LA329_10025 == DOUBLE_QUOTED_TEXT || LA329_10025 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10025;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2540 == EOF || ((LA329_2540 >= ACCOUNT_SYMBOL) && (LA329_2540 <= YEAR_SYMBOL)) || LA329_2540 == AND_SYMBOL || LA329_2540 == AS_SYMBOL || LA329_2540 == BACK_TICK_QUOTED_ID || LA329_2540 == BETWEEN_SYMBOL || LA329_2540 == BIN_NUMBER || LA329_2540 == BITWISE_AND_OPERATOR || ((LA329_2540 >= BITWISE_OR_OPERATOR) && (LA329_2540 <= BITWISE_XOR_OPERATOR)) || ((LA329_2540 >= CLOSE_CURLY_SYMBOL) && (LA329_2540 <= COLLATE_SYMBOL)) || LA329_2540 == COMMA_SYMBOL || LA329_2540 == CONCAT_PIPES_SYMBOL || LA329_2540 == CROSS_SYMBOL || ((LA329_2540 >= DIV_OPERATOR) && (LA329_2540 <= DIV_SYMBOL)) || LA329_2540 == DOUBLE_QUOTED_TEXT || LA329_2540 == EQUAL_OPERATOR || LA329_2540 == FOR_SYMBOL || LA329_2540 == FROM_SYMBOL || ((LA329_2540 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2540 <= GREATER_THAN_OPERATOR)) || ((LA329_2540 >= GROUP_SYMBOL) && (LA329_2540 <= HAVING_SYMBOL)) || LA329_2540 == HEX_NUMBER || LA329_2540 == IDENTIFIER || LA329_2540 == INNER_SYMBOL || LA329_2540 == INTO_SYMBOL || LA329_2540 == IN_SYMBOL || LA329_2540 == IS_SYMBOL || ((LA329_2540 >= JOIN_SYMBOL) && (LA329_2540 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2540 >= LEFT_SYMBOL) && (LA329_2540 <= LESS_THAN_OPERATOR)) || ((LA329_2540 >= LIKE_SYMBOL) && (LA329_2540 <= LIMIT_SYMBOL)) || LA329_2540 == LOCK_SYMBOL || LA329_2540 == LOGICAL_AND_OPERATOR || LA329_2540 == LOGICAL_OR_OPERATOR || LA329_2540 == MINUS_OPERATOR || ((LA329_2540 >= MOD_OPERATOR) && (LA329_2540 <= MOD_SYMBOL)) || ((LA329_2540 >= MULT_OPERATOR) && (LA329_2540 <= NATURAL_SYMBOL)) || ((LA329_2540 >= NOT_EQUAL2_OPERATOR) && (LA329_2540 <= NOT_SYMBOL)) || LA329_2540 == NULL_SAFE_EQUAL_OPERATOR || LA329_2540 == ON_SYMBOL || LA329_2540 == OPEN_PAR_SYMBOL || ((LA329_2540 >= ORDER_SYMBOL) && (LA329_2540 <= OR_SYMBOL)) || LA329_2540 == PLUS_OPERATOR || LA329_2540 == PROCEDURE_SYMBOL || LA329_2540 == REGEXP_SYMBOL || LA329_2540 == RIGHT_SYMBOL || LA329_2540 == SEMICOLON_SYMBOL || LA329_2540 == SET_SYMBOL || ((LA329_2540 >= SHIFT_LEFT_OPERATOR) && (LA329_2540 <= SHIFT_RIGHT_OPERATOR)) || LA329_2540 == SINGLE_QUOTED_TEXT || LA329_2540 == STRAIGHT_JOIN_SYMBOL || LA329_2540 == UNION_SYMBOL || LA329_2540 == USING_SYMBOL || LA329_2540 == WHERE_SYMBOL || LA329_2540 == WITH_SYMBOL || LA329_2540 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2540;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1565 >= ACTION_SYMBOL) && (LA329_1565 <= SHARE_SYMBOL)) || ((LA329_1565 >= SLOW_SYMBOL) && (LA329_1565 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2541 = LA(4);
                                        if ( (LA329_2541 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10079 = LA(5);
                                                if ( (LA329_10079 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10079 >= ACCOUNT_SYMBOL) && (LA329_10079 <= YEAR_SYMBOL)) || LA329_10079 == BACK_TICK_QUOTED_ID || LA329_10079 == DOUBLE_QUOTED_TEXT || LA329_10079 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10079;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2541 == EOF || ((LA329_2541 >= ACCOUNT_SYMBOL) && (LA329_2541 <= YEAR_SYMBOL)) || LA329_2541 == AND_SYMBOL || LA329_2541 == AS_SYMBOL || LA329_2541 == BACK_TICK_QUOTED_ID || LA329_2541 == BETWEEN_SYMBOL || LA329_2541 == BIN_NUMBER || LA329_2541 == BITWISE_AND_OPERATOR || ((LA329_2541 >= BITWISE_OR_OPERATOR) && (LA329_2541 <= BITWISE_XOR_OPERATOR)) || ((LA329_2541 >= CLOSE_CURLY_SYMBOL) && (LA329_2541 <= COLLATE_SYMBOL)) || LA329_2541 == COMMA_SYMBOL || LA329_2541 == CONCAT_PIPES_SYMBOL || LA329_2541 == CROSS_SYMBOL || ((LA329_2541 >= DIV_OPERATOR) && (LA329_2541 <= DIV_SYMBOL)) || LA329_2541 == DOUBLE_QUOTED_TEXT || LA329_2541 == EQUAL_OPERATOR || LA329_2541 == FOR_SYMBOL || LA329_2541 == FROM_SYMBOL || ((LA329_2541 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2541 <= GREATER_THAN_OPERATOR)) || ((LA329_2541 >= GROUP_SYMBOL) && (LA329_2541 <= HAVING_SYMBOL)) || LA329_2541 == HEX_NUMBER || LA329_2541 == IDENTIFIER || LA329_2541 == INNER_SYMBOL || LA329_2541 == INTO_SYMBOL || LA329_2541 == IN_SYMBOL || LA329_2541 == IS_SYMBOL || ((LA329_2541 >= JOIN_SYMBOL) && (LA329_2541 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2541 >= LEFT_SYMBOL) && (LA329_2541 <= LESS_THAN_OPERATOR)) || ((LA329_2541 >= LIKE_SYMBOL) && (LA329_2541 <= LIMIT_SYMBOL)) || LA329_2541 == LOCK_SYMBOL || LA329_2541 == LOGICAL_AND_OPERATOR || LA329_2541 == LOGICAL_OR_OPERATOR || LA329_2541 == MINUS_OPERATOR || ((LA329_2541 >= MOD_OPERATOR) && (LA329_2541 <= MOD_SYMBOL)) || ((LA329_2541 >= MULT_OPERATOR) && (LA329_2541 <= NATURAL_SYMBOL)) || ((LA329_2541 >= NOT_EQUAL2_OPERATOR) && (LA329_2541 <= NOT_SYMBOL)) || LA329_2541 == NULL_SAFE_EQUAL_OPERATOR || LA329_2541 == ON_SYMBOL || LA329_2541 == OPEN_PAR_SYMBOL || ((LA329_2541 >= ORDER_SYMBOL) && (LA329_2541 <= OR_SYMBOL)) || LA329_2541 == PLUS_OPERATOR || LA329_2541 == PROCEDURE_SYMBOL || LA329_2541 == REGEXP_SYMBOL || LA329_2541 == RIGHT_SYMBOL || LA329_2541 == SEMICOLON_SYMBOL || LA329_2541 == SET_SYMBOL || ((LA329_2541 >= SHIFT_LEFT_OPERATOR) && (LA329_2541 <= SHIFT_RIGHT_OPERATOR)) || LA329_2541 == SINGLE_QUOTED_TEXT || LA329_2541 == STRAIGHT_JOIN_SYMBOL || LA329_2541 == UNION_SYMBOL || LA329_2541 == USING_SYMBOL || LA329_2541 == WHERE_SYMBOL || LA329_2541 == WITH_SYMBOL || LA329_2541 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2541;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1565 >= ACCOUNT_SYMBOL) && (LA329_1565 <= XA_SYMBOL)) || LA329_1565 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2542 = LA(4);
                                        if ( (LA329_2542 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10133 = LA(5);
                                                if ( (LA329_10133 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10133 >= ACCOUNT_SYMBOL) && (LA329_10133 <= YEAR_SYMBOL)) || LA329_10133 == BACK_TICK_QUOTED_ID || LA329_10133 == DOUBLE_QUOTED_TEXT || LA329_10133 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10133;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2542 == EOF || ((LA329_2542 >= ACCOUNT_SYMBOL) && (LA329_2542 <= YEAR_SYMBOL)) || LA329_2542 == AND_SYMBOL || LA329_2542 == AS_SYMBOL || LA329_2542 == BACK_TICK_QUOTED_ID || LA329_2542 == BETWEEN_SYMBOL || LA329_2542 == BIN_NUMBER || LA329_2542 == BITWISE_AND_OPERATOR || ((LA329_2542 >= BITWISE_OR_OPERATOR) && (LA329_2542 <= BITWISE_XOR_OPERATOR)) || ((LA329_2542 >= CLOSE_CURLY_SYMBOL) && (LA329_2542 <= COLLATE_SYMBOL)) || LA329_2542 == COMMA_SYMBOL || LA329_2542 == CONCAT_PIPES_SYMBOL || LA329_2542 == CROSS_SYMBOL || ((LA329_2542 >= DIV_OPERATOR) && (LA329_2542 <= DIV_SYMBOL)) || LA329_2542 == DOUBLE_QUOTED_TEXT || LA329_2542 == EQUAL_OPERATOR || LA329_2542 == FOR_SYMBOL || LA329_2542 == FROM_SYMBOL || ((LA329_2542 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2542 <= GREATER_THAN_OPERATOR)) || ((LA329_2542 >= GROUP_SYMBOL) && (LA329_2542 <= HAVING_SYMBOL)) || LA329_2542 == HEX_NUMBER || LA329_2542 == IDENTIFIER || LA329_2542 == INNER_SYMBOL || LA329_2542 == INTO_SYMBOL || LA329_2542 == IN_SYMBOL || LA329_2542 == IS_SYMBOL || ((LA329_2542 >= JOIN_SYMBOL) && (LA329_2542 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2542 >= LEFT_SYMBOL) && (LA329_2542 <= LESS_THAN_OPERATOR)) || ((LA329_2542 >= LIKE_SYMBOL) && (LA329_2542 <= LIMIT_SYMBOL)) || LA329_2542 == LOCK_SYMBOL || LA329_2542 == LOGICAL_AND_OPERATOR || LA329_2542 == LOGICAL_OR_OPERATOR || LA329_2542 == MINUS_OPERATOR || ((LA329_2542 >= MOD_OPERATOR) && (LA329_2542 <= MOD_SYMBOL)) || ((LA329_2542 >= MULT_OPERATOR) && (LA329_2542 <= NATURAL_SYMBOL)) || ((LA329_2542 >= NOT_EQUAL2_OPERATOR) && (LA329_2542 <= NOT_SYMBOL)) || LA329_2542 == NULL_SAFE_EQUAL_OPERATOR || LA329_2542 == ON_SYMBOL || LA329_2542 == OPEN_PAR_SYMBOL || ((LA329_2542 >= ORDER_SYMBOL) && (LA329_2542 <= OR_SYMBOL)) || LA329_2542 == PLUS_OPERATOR || LA329_2542 == PROCEDURE_SYMBOL || LA329_2542 == REGEXP_SYMBOL || LA329_2542 == RIGHT_SYMBOL || LA329_2542 == SEMICOLON_SYMBOL || LA329_2542 == SET_SYMBOL || ((LA329_2542 >= SHIFT_LEFT_OPERATOR) && (LA329_2542 <= SHIFT_RIGHT_OPERATOR)) || LA329_2542 == SINGLE_QUOTED_TEXT || LA329_2542 == STRAIGHT_JOIN_SYMBOL || LA329_2542 == UNION_SYMBOL || LA329_2542 == USING_SYMBOL || LA329_2542 == WHERE_SYMBOL || LA329_2542 == WITH_SYMBOL || LA329_2542 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2542;


                                            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  = 329;
                                    EXCEPTION->state        = 1565;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_63 == EOF || ((LA329_63 >= ACCOUNT_SYMBOL) && (LA329_63 <= YEAR_SYMBOL)) || LA329_63 == AND_SYMBOL || LA329_63 == AS_SYMBOL || LA329_63 == BACK_TICK_QUOTED_ID || LA329_63 == BETWEEN_SYMBOL || LA329_63 == BIN_NUMBER || LA329_63 == BITWISE_AND_OPERATOR || ((LA329_63 >= BITWISE_OR_OPERATOR) && (LA329_63 <= BITWISE_XOR_OPERATOR)) || ((LA329_63 >= CLOSE_CURLY_SYMBOL) && (LA329_63 <= COLLATE_SYMBOL)) || LA329_63 == COMMA_SYMBOL || LA329_63 == CONCAT_PIPES_SYMBOL || LA329_63 == CROSS_SYMBOL || ((LA329_63 >= DIV_OPERATOR) && (LA329_63 <= DIV_SYMBOL)) || LA329_63 == DOUBLE_QUOTED_TEXT || LA329_63 == EQUAL_OPERATOR || LA329_63 == FOR_SYMBOL || LA329_63 == FROM_SYMBOL || ((LA329_63 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_63 <= GREATER_THAN_OPERATOR)) || ((LA329_63 >= GROUP_SYMBOL) && (LA329_63 <= HAVING_SYMBOL)) || LA329_63 == HEX_NUMBER || LA329_63 == IDENTIFIER || LA329_63 == INNER_SYMBOL || LA329_63 == INTO_SYMBOL || LA329_63 == IN_SYMBOL || LA329_63 == IS_SYMBOL || ((LA329_63 >= JOIN_SYMBOL) && (LA329_63 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_63 >= LEFT_SYMBOL) && (LA329_63 <= LESS_THAN_OPERATOR)) || ((LA329_63 >= LIKE_SYMBOL) && (LA329_63 <= LIMIT_SYMBOL)) || LA329_63 == LOCK_SYMBOL || LA329_63 == LOGICAL_AND_OPERATOR || LA329_63 == LOGICAL_OR_OPERATOR || LA329_63 == MINUS_OPERATOR || ((LA329_63 >= MOD_OPERATOR) && (LA329_63 <= MOD_SYMBOL)) || ((LA329_63 >= MULT_OPERATOR) && (LA329_63 <= NATURAL_SYMBOL)) || ((LA329_63 >= NOT_EQUAL2_OPERATOR) && (LA329_63 <= NOT_SYMBOL)) || LA329_63 == NULL_SAFE_EQUAL_OPERATOR || LA329_63 == ON_SYMBOL || LA329_63 == OPEN_PAR_SYMBOL || ((LA329_63 >= ORDER_SYMBOL) && (LA329_63 <= OR_SYMBOL)) || LA329_63 == PLUS_OPERATOR || LA329_63 == PROCEDURE_SYMBOL || LA329_63 == REGEXP_SYMBOL || LA329_63 == RIGHT_SYMBOL || LA329_63 == SEMICOLON_SYMBOL || LA329_63 == SET_SYMBOL || ((LA329_63 >= SHIFT_LEFT_OPERATOR) && (LA329_63 <= SHIFT_RIGHT_OPERATOR)) || LA329_63 == SINGLE_QUOTED_TEXT || LA329_63 == STRAIGHT_JOIN_SYMBOL || LA329_63 == UNION_SYMBOL || LA329_63 == USING_SYMBOL || LA329_63 == WHERE_SYMBOL || LA329_63 == WITH_SYMBOL || LA329_63 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 63;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == WEEK_SYMBOL))
                {
                    {
                        int LA329_64 = LA(2);
                        if ( (LA329_64 == EOF || ((LA329_64 >= ACCOUNT_SYMBOL) && (LA329_64 <= YEAR_SYMBOL)) || LA329_64 == AND_SYMBOL || LA329_64 == AS_SYMBOL || LA329_64 == BACK_TICK_QUOTED_ID || LA329_64 == BETWEEN_SYMBOL || LA329_64 == BIN_NUMBER || LA329_64 == BITWISE_AND_OPERATOR || ((LA329_64 >= BITWISE_OR_OPERATOR) && (LA329_64 <= BITWISE_XOR_OPERATOR)) || ((LA329_64 >= CLOSE_CURLY_SYMBOL) && (LA329_64 <= COLLATE_SYMBOL)) || LA329_64 == COMMA_SYMBOL || LA329_64 == CONCAT_PIPES_SYMBOL || LA329_64 == CROSS_SYMBOL || ((LA329_64 >= DIV_OPERATOR) && (LA329_64 <= DIV_SYMBOL)) || LA329_64 == DOUBLE_QUOTED_TEXT || LA329_64 == EQUAL_OPERATOR || LA329_64 == FOR_SYMBOL || LA329_64 == FROM_SYMBOL || ((LA329_64 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_64 <= GREATER_THAN_OPERATOR)) || ((LA329_64 >= GROUP_SYMBOL) && (LA329_64 <= HAVING_SYMBOL)) || LA329_64 == HEX_NUMBER || LA329_64 == IDENTIFIER || LA329_64 == INNER_SYMBOL || LA329_64 == INTO_SYMBOL || LA329_64 == IN_SYMBOL || LA329_64 == IS_SYMBOL || ((LA329_64 >= JOIN_SYMBOL) && (LA329_64 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_64 >= LEFT_SYMBOL) && (LA329_64 <= LESS_THAN_OPERATOR)) || ((LA329_64 >= LIKE_SYMBOL) && (LA329_64 <= LIMIT_SYMBOL)) || LA329_64 == LOCK_SYMBOL || LA329_64 == LOGICAL_AND_OPERATOR || LA329_64 == LOGICAL_OR_OPERATOR || LA329_64 == MINUS_OPERATOR || ((LA329_64 >= MOD_OPERATOR) && (LA329_64 <= MOD_SYMBOL)) || ((LA329_64 >= MULT_OPERATOR) && (LA329_64 <= NATURAL_SYMBOL)) || ((LA329_64 >= NOT_EQUAL2_OPERATOR) && (LA329_64 <= NOT_SYMBOL)) || LA329_64 == NULL_SAFE_EQUAL_OPERATOR || LA329_64 == ON_SYMBOL || LA329_64 == OPEN_PAR_SYMBOL || ((LA329_64 >= ORDER_SYMBOL) && (LA329_64 <= OR_SYMBOL)) || LA329_64 == PLUS_OPERATOR || LA329_64 == PROCEDURE_SYMBOL || LA329_64 == REGEXP_SYMBOL || LA329_64 == RIGHT_SYMBOL || LA329_64 == SEMICOLON_SYMBOL || LA329_64 == SET_SYMBOL || ((LA329_64 >= SHIFT_LEFT_OPERATOR) && (LA329_64 <= SHIFT_RIGHT_OPERATOR)) || LA329_64 == SINGLE_QUOTED_TEXT || LA329_64 == STRAIGHT_JOIN_SYMBOL || LA329_64 == UNION_SYMBOL || LA329_64 == USING_SYMBOL || LA329_64 == WHERE_SYMBOL || LA329_64 == WITH_SYMBOL || LA329_64 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_64 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1620 = LA(3);
                                if ( (LA329_1620 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1620 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2544 = LA(4);
                                        if ( (LA329_2544 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10187 = LA(5);
                                                if ( (LA329_10187 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10187 >= ACCOUNT_SYMBOL) && (LA329_10187 <= YEAR_SYMBOL)) || LA329_10187 == BACK_TICK_QUOTED_ID || LA329_10187 == DOUBLE_QUOTED_TEXT || LA329_10187 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10187;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2544 == EOF || ((LA329_2544 >= ACCOUNT_SYMBOL) && (LA329_2544 <= YEAR_SYMBOL)) || LA329_2544 == AND_SYMBOL || LA329_2544 == AS_SYMBOL || LA329_2544 == BACK_TICK_QUOTED_ID || LA329_2544 == BETWEEN_SYMBOL || LA329_2544 == BIN_NUMBER || LA329_2544 == BITWISE_AND_OPERATOR || ((LA329_2544 >= BITWISE_OR_OPERATOR) && (LA329_2544 <= BITWISE_XOR_OPERATOR)) || ((LA329_2544 >= CLOSE_CURLY_SYMBOL) && (LA329_2544 <= COLLATE_SYMBOL)) || LA329_2544 == COMMA_SYMBOL || LA329_2544 == CONCAT_PIPES_SYMBOL || LA329_2544 == CROSS_SYMBOL || ((LA329_2544 >= DIV_OPERATOR) && (LA329_2544 <= DIV_SYMBOL)) || LA329_2544 == DOUBLE_QUOTED_TEXT || LA329_2544 == EQUAL_OPERATOR || LA329_2544 == FOR_SYMBOL || LA329_2544 == FROM_SYMBOL || ((LA329_2544 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2544 <= GREATER_THAN_OPERATOR)) || ((LA329_2544 >= GROUP_SYMBOL) && (LA329_2544 <= HAVING_SYMBOL)) || LA329_2544 == HEX_NUMBER || LA329_2544 == IDENTIFIER || LA329_2544 == INNER_SYMBOL || LA329_2544 == INTO_SYMBOL || LA329_2544 == IN_SYMBOL || LA329_2544 == IS_SYMBOL || ((LA329_2544 >= JOIN_SYMBOL) && (LA329_2544 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2544 >= LEFT_SYMBOL) && (LA329_2544 <= LESS_THAN_OPERATOR)) || ((LA329_2544 >= LIKE_SYMBOL) && (LA329_2544 <= LIMIT_SYMBOL)) || LA329_2544 == LOCK_SYMBOL || LA329_2544 == LOGICAL_AND_OPERATOR || LA329_2544 == LOGICAL_OR_OPERATOR || LA329_2544 == MINUS_OPERATOR || ((LA329_2544 >= MOD_OPERATOR) && (LA329_2544 <= MOD_SYMBOL)) || ((LA329_2544 >= MULT_OPERATOR) && (LA329_2544 <= NATURAL_SYMBOL)) || ((LA329_2544 >= NOT_EQUAL2_OPERATOR) && (LA329_2544 <= NOT_SYMBOL)) || LA329_2544 == NULL_SAFE_EQUAL_OPERATOR || LA329_2544 == ON_SYMBOL || LA329_2544 == OPEN_PAR_SYMBOL || ((LA329_2544 >= ORDER_SYMBOL) && (LA329_2544 <= OR_SYMBOL)) || LA329_2544 == PLUS_OPERATOR || LA329_2544 == PROCEDURE_SYMBOL || LA329_2544 == REGEXP_SYMBOL || LA329_2544 == RIGHT_SYMBOL || LA329_2544 == SEMICOLON_SYMBOL || LA329_2544 == SET_SYMBOL || ((LA329_2544 >= SHIFT_LEFT_OPERATOR) && (LA329_2544 <= SHIFT_RIGHT_OPERATOR)) || LA329_2544 == SINGLE_QUOTED_TEXT || LA329_2544 == STRAIGHT_JOIN_SYMBOL || LA329_2544 == UNION_SYMBOL || LA329_2544 == USING_SYMBOL || LA329_2544 == WHERE_SYMBOL || LA329_2544 == WITH_SYMBOL || LA329_2544 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2544;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1620 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2545 = LA(4);
                                        if ( (LA329_2545 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10241 = LA(5);
                                                if ( (LA329_10241 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10241 >= ACCOUNT_SYMBOL) && (LA329_10241 <= YEAR_SYMBOL)) || LA329_10241 == BACK_TICK_QUOTED_ID || LA329_10241 == DOUBLE_QUOTED_TEXT || LA329_10241 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10241;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2545 == EOF || ((LA329_2545 >= ACCOUNT_SYMBOL) && (LA329_2545 <= YEAR_SYMBOL)) || LA329_2545 == AND_SYMBOL || LA329_2545 == AS_SYMBOL || LA329_2545 == BACK_TICK_QUOTED_ID || LA329_2545 == BETWEEN_SYMBOL || LA329_2545 == BIN_NUMBER || LA329_2545 == BITWISE_AND_OPERATOR || ((LA329_2545 >= BITWISE_OR_OPERATOR) && (LA329_2545 <= BITWISE_XOR_OPERATOR)) || ((LA329_2545 >= CLOSE_CURLY_SYMBOL) && (LA329_2545 <= COLLATE_SYMBOL)) || LA329_2545 == COMMA_SYMBOL || LA329_2545 == CONCAT_PIPES_SYMBOL || LA329_2545 == CROSS_SYMBOL || ((LA329_2545 >= DIV_OPERATOR) && (LA329_2545 <= DIV_SYMBOL)) || LA329_2545 == DOUBLE_QUOTED_TEXT || LA329_2545 == EQUAL_OPERATOR || LA329_2545 == FOR_SYMBOL || LA329_2545 == FROM_SYMBOL || ((LA329_2545 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2545 <= GREATER_THAN_OPERATOR)) || ((LA329_2545 >= GROUP_SYMBOL) && (LA329_2545 <= HAVING_SYMBOL)) || LA329_2545 == HEX_NUMBER || LA329_2545 == IDENTIFIER || LA329_2545 == INNER_SYMBOL || LA329_2545 == INTO_SYMBOL || LA329_2545 == IN_SYMBOL || LA329_2545 == IS_SYMBOL || ((LA329_2545 >= JOIN_SYMBOL) && (LA329_2545 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2545 >= LEFT_SYMBOL) && (LA329_2545 <= LESS_THAN_OPERATOR)) || ((LA329_2545 >= LIKE_SYMBOL) && (LA329_2545 <= LIMIT_SYMBOL)) || LA329_2545 == LOCK_SYMBOL || LA329_2545 == LOGICAL_AND_OPERATOR || LA329_2545 == LOGICAL_OR_OPERATOR || LA329_2545 == MINUS_OPERATOR || ((LA329_2545 >= MOD_OPERATOR) && (LA329_2545 <= MOD_SYMBOL)) || ((LA329_2545 >= MULT_OPERATOR) && (LA329_2545 <= NATURAL_SYMBOL)) || ((LA329_2545 >= NOT_EQUAL2_OPERATOR) && (LA329_2545 <= NOT_SYMBOL)) || LA329_2545 == NULL_SAFE_EQUAL_OPERATOR || LA329_2545 == ON_SYMBOL || LA329_2545 == OPEN_PAR_SYMBOL || ((LA329_2545 >= ORDER_SYMBOL) && (LA329_2545 <= OR_SYMBOL)) || LA329_2545 == PLUS_OPERATOR || LA329_2545 == PROCEDURE_SYMBOL || LA329_2545 == REGEXP_SYMBOL || LA329_2545 == RIGHT_SYMBOL || LA329_2545 == SEMICOLON_SYMBOL || LA329_2545 == SET_SYMBOL || ((LA329_2545 >= SHIFT_LEFT_OPERATOR) && (LA329_2545 <= SHIFT_RIGHT_OPERATOR)) || LA329_2545 == SINGLE_QUOTED_TEXT || LA329_2545 == STRAIGHT_JOIN_SYMBOL || LA329_2545 == UNION_SYMBOL || LA329_2545 == USING_SYMBOL || LA329_2545 == WHERE_SYMBOL || LA329_2545 == WITH_SYMBOL || LA329_2545 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2545;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1620 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2546 = LA(4);
                                        if ( (LA329_2546 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10295 = LA(5);
                                                if ( (LA329_10295 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10295 >= ACCOUNT_SYMBOL) && (LA329_10295 <= YEAR_SYMBOL)) || LA329_10295 == BACK_TICK_QUOTED_ID || LA329_10295 == DOUBLE_QUOTED_TEXT || LA329_10295 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10295;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2546 == EOF || ((LA329_2546 >= ACCOUNT_SYMBOL) && (LA329_2546 <= YEAR_SYMBOL)) || LA329_2546 == AND_SYMBOL || LA329_2546 == AS_SYMBOL || LA329_2546 == BACK_TICK_QUOTED_ID || LA329_2546 == BETWEEN_SYMBOL || LA329_2546 == BIN_NUMBER || LA329_2546 == BITWISE_AND_OPERATOR || ((LA329_2546 >= BITWISE_OR_OPERATOR) && (LA329_2546 <= BITWISE_XOR_OPERATOR)) || ((LA329_2546 >= CLOSE_CURLY_SYMBOL) && (LA329_2546 <= COLLATE_SYMBOL)) || LA329_2546 == COMMA_SYMBOL || LA329_2546 == CONCAT_PIPES_SYMBOL || LA329_2546 == CROSS_SYMBOL || ((LA329_2546 >= DIV_OPERATOR) && (LA329_2546 <= DIV_SYMBOL)) || LA329_2546 == DOUBLE_QUOTED_TEXT || LA329_2546 == EQUAL_OPERATOR || LA329_2546 == FOR_SYMBOL || LA329_2546 == FROM_SYMBOL || ((LA329_2546 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2546 <= GREATER_THAN_OPERATOR)) || ((LA329_2546 >= GROUP_SYMBOL) && (LA329_2546 <= HAVING_SYMBOL)) || LA329_2546 == HEX_NUMBER || LA329_2546 == IDENTIFIER || LA329_2546 == INNER_SYMBOL || LA329_2546 == INTO_SYMBOL || LA329_2546 == IN_SYMBOL || LA329_2546 == IS_SYMBOL || ((LA329_2546 >= JOIN_SYMBOL) && (LA329_2546 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2546 >= LEFT_SYMBOL) && (LA329_2546 <= LESS_THAN_OPERATOR)) || ((LA329_2546 >= LIKE_SYMBOL) && (LA329_2546 <= LIMIT_SYMBOL)) || LA329_2546 == LOCK_SYMBOL || LA329_2546 == LOGICAL_AND_OPERATOR || LA329_2546 == LOGICAL_OR_OPERATOR || LA329_2546 == MINUS_OPERATOR || ((LA329_2546 >= MOD_OPERATOR) && (LA329_2546 <= MOD_SYMBOL)) || ((LA329_2546 >= MULT_OPERATOR) && (LA329_2546 <= NATURAL_SYMBOL)) || ((LA329_2546 >= NOT_EQUAL2_OPERATOR) && (LA329_2546 <= NOT_SYMBOL)) || LA329_2546 == NULL_SAFE_EQUAL_OPERATOR || LA329_2546 == ON_SYMBOL || LA329_2546 == OPEN_PAR_SYMBOL || ((LA329_2546 >= ORDER_SYMBOL) && (LA329_2546 <= OR_SYMBOL)) || LA329_2546 == PLUS_OPERATOR || LA329_2546 == PROCEDURE_SYMBOL || LA329_2546 == REGEXP_SYMBOL || LA329_2546 == RIGHT_SYMBOL || LA329_2546 == SEMICOLON_SYMBOL || LA329_2546 == SET_SYMBOL || ((LA329_2546 >= SHIFT_LEFT_OPERATOR) && (LA329_2546 <= SHIFT_RIGHT_OPERATOR)) || LA329_2546 == SINGLE_QUOTED_TEXT || LA329_2546 == STRAIGHT_JOIN_SYMBOL || LA329_2546 == UNION_SYMBOL || LA329_2546 == USING_SYMBOL || LA329_2546 == WHERE_SYMBOL || LA329_2546 == WITH_SYMBOL || LA329_2546 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2546;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1620 >= ACTION_SYMBOL) && (LA329_1620 <= SHARE_SYMBOL)) || ((LA329_1620 >= SLOW_SYMBOL) && (LA329_1620 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2547 = LA(4);
                                        if ( (LA329_2547 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10349 = LA(5);
                                                if ( (LA329_10349 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10349 >= ACCOUNT_SYMBOL) && (LA329_10349 <= YEAR_SYMBOL)) || LA329_10349 == BACK_TICK_QUOTED_ID || LA329_10349 == DOUBLE_QUOTED_TEXT || LA329_10349 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10349;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2547 == EOF || ((LA329_2547 >= ACCOUNT_SYMBOL) && (LA329_2547 <= YEAR_SYMBOL)) || LA329_2547 == AND_SYMBOL || LA329_2547 == AS_SYMBOL || LA329_2547 == BACK_TICK_QUOTED_ID || LA329_2547 == BETWEEN_SYMBOL || LA329_2547 == BIN_NUMBER || LA329_2547 == BITWISE_AND_OPERATOR || ((LA329_2547 >= BITWISE_OR_OPERATOR) && (LA329_2547 <= BITWISE_XOR_OPERATOR)) || ((LA329_2547 >= CLOSE_CURLY_SYMBOL) && (LA329_2547 <= COLLATE_SYMBOL)) || LA329_2547 == COMMA_SYMBOL || LA329_2547 == CONCAT_PIPES_SYMBOL || LA329_2547 == CROSS_SYMBOL || ((LA329_2547 >= DIV_OPERATOR) && (LA329_2547 <= DIV_SYMBOL)) || LA329_2547 == DOUBLE_QUOTED_TEXT || LA329_2547 == EQUAL_OPERATOR || LA329_2547 == FOR_SYMBOL || LA329_2547 == FROM_SYMBOL || ((LA329_2547 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2547 <= GREATER_THAN_OPERATOR)) || ((LA329_2547 >= GROUP_SYMBOL) && (LA329_2547 <= HAVING_SYMBOL)) || LA329_2547 == HEX_NUMBER || LA329_2547 == IDENTIFIER || LA329_2547 == INNER_SYMBOL || LA329_2547 == INTO_SYMBOL || LA329_2547 == IN_SYMBOL || LA329_2547 == IS_SYMBOL || ((LA329_2547 >= JOIN_SYMBOL) && (LA329_2547 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2547 >= LEFT_SYMBOL) && (LA329_2547 <= LESS_THAN_OPERATOR)) || ((LA329_2547 >= LIKE_SYMBOL) && (LA329_2547 <= LIMIT_SYMBOL)) || LA329_2547 == LOCK_SYMBOL || LA329_2547 == LOGICAL_AND_OPERATOR || LA329_2547 == LOGICAL_OR_OPERATOR || LA329_2547 == MINUS_OPERATOR || ((LA329_2547 >= MOD_OPERATOR) && (LA329_2547 <= MOD_SYMBOL)) || ((LA329_2547 >= MULT_OPERATOR) && (LA329_2547 <= NATURAL_SYMBOL)) || ((LA329_2547 >= NOT_EQUAL2_OPERATOR) && (LA329_2547 <= NOT_SYMBOL)) || LA329_2547 == NULL_SAFE_EQUAL_OPERATOR || LA329_2547 == ON_SYMBOL || LA329_2547 == OPEN_PAR_SYMBOL || ((LA329_2547 >= ORDER_SYMBOL) && (LA329_2547 <= OR_SYMBOL)) || LA329_2547 == PLUS_OPERATOR || LA329_2547 == PROCEDURE_SYMBOL || LA329_2547 == REGEXP_SYMBOL || LA329_2547 == RIGHT_SYMBOL || LA329_2547 == SEMICOLON_SYMBOL || LA329_2547 == SET_SYMBOL || ((LA329_2547 >= SHIFT_LEFT_OPERATOR) && (LA329_2547 <= SHIFT_RIGHT_OPERATOR)) || LA329_2547 == SINGLE_QUOTED_TEXT || LA329_2547 == STRAIGHT_JOIN_SYMBOL || LA329_2547 == UNION_SYMBOL || LA329_2547 == USING_SYMBOL || LA329_2547 == WHERE_SYMBOL || LA329_2547 == WITH_SYMBOL || LA329_2547 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2547;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1620 >= ACCOUNT_SYMBOL) && (LA329_1620 <= XA_SYMBOL)) || LA329_1620 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2548 = LA(4);
                                        if ( (LA329_2548 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10403 = LA(5);
                                                if ( (LA329_10403 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10403 >= ACCOUNT_SYMBOL) && (LA329_10403 <= YEAR_SYMBOL)) || LA329_10403 == BACK_TICK_QUOTED_ID || LA329_10403 == DOUBLE_QUOTED_TEXT || LA329_10403 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10403;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2548 == EOF || ((LA329_2548 >= ACCOUNT_SYMBOL) && (LA329_2548 <= YEAR_SYMBOL)) || LA329_2548 == AND_SYMBOL || LA329_2548 == AS_SYMBOL || LA329_2548 == BACK_TICK_QUOTED_ID || LA329_2548 == BETWEEN_SYMBOL || LA329_2548 == BIN_NUMBER || LA329_2548 == BITWISE_AND_OPERATOR || ((LA329_2548 >= BITWISE_OR_OPERATOR) && (LA329_2548 <= BITWISE_XOR_OPERATOR)) || ((LA329_2548 >= CLOSE_CURLY_SYMBOL) && (LA329_2548 <= COLLATE_SYMBOL)) || LA329_2548 == COMMA_SYMBOL || LA329_2548 == CONCAT_PIPES_SYMBOL || LA329_2548 == CROSS_SYMBOL || ((LA329_2548 >= DIV_OPERATOR) && (LA329_2548 <= DIV_SYMBOL)) || LA329_2548 == DOUBLE_QUOTED_TEXT || LA329_2548 == EQUAL_OPERATOR || LA329_2548 == FOR_SYMBOL || LA329_2548 == FROM_SYMBOL || ((LA329_2548 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2548 <= GREATER_THAN_OPERATOR)) || ((LA329_2548 >= GROUP_SYMBOL) && (LA329_2548 <= HAVING_SYMBOL)) || LA329_2548 == HEX_NUMBER || LA329_2548 == IDENTIFIER || LA329_2548 == INNER_SYMBOL || LA329_2548 == INTO_SYMBOL || LA329_2548 == IN_SYMBOL || LA329_2548 == IS_SYMBOL || ((LA329_2548 >= JOIN_SYMBOL) && (LA329_2548 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2548 >= LEFT_SYMBOL) && (LA329_2548 <= LESS_THAN_OPERATOR)) || ((LA329_2548 >= LIKE_SYMBOL) && (LA329_2548 <= LIMIT_SYMBOL)) || LA329_2548 == LOCK_SYMBOL || LA329_2548 == LOGICAL_AND_OPERATOR || LA329_2548 == LOGICAL_OR_OPERATOR || LA329_2548 == MINUS_OPERATOR || ((LA329_2548 >= MOD_OPERATOR) && (LA329_2548 <= MOD_SYMBOL)) || ((LA329_2548 >= MULT_OPERATOR) && (LA329_2548 <= NATURAL_SYMBOL)) || ((LA329_2548 >= NOT_EQUAL2_OPERATOR) && (LA329_2548 <= NOT_SYMBOL)) || LA329_2548 == NULL_SAFE_EQUAL_OPERATOR || LA329_2548 == ON_SYMBOL || LA329_2548 == OPEN_PAR_SYMBOL || ((LA329_2548 >= ORDER_SYMBOL) && (LA329_2548 <= OR_SYMBOL)) || LA329_2548 == PLUS_OPERATOR || LA329_2548 == PROCEDURE_SYMBOL || LA329_2548 == REGEXP_SYMBOL || LA329_2548 == RIGHT_SYMBOL || LA329_2548 == SEMICOLON_SYMBOL || LA329_2548 == SET_SYMBOL || ((LA329_2548 >= SHIFT_LEFT_OPERATOR) && (LA329_2548 <= SHIFT_RIGHT_OPERATOR)) || LA329_2548 == SINGLE_QUOTED_TEXT || LA329_2548 == STRAIGHT_JOIN_SYMBOL || LA329_2548 == UNION_SYMBOL || LA329_2548 == USING_SYMBOL || LA329_2548 == WHERE_SYMBOL || LA329_2548 == WITH_SYMBOL || LA329_2548 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2548;


                                            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  = 329;
                                    EXCEPTION->state        = 1620;


                                    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  = 329;
                            EXCEPTION->state        = 64;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == CONTAINS_SYMBOL))
                {
                    {
                        int LA329_65 = LA(2);
                        if ( (LA329_65 == EOF || ((LA329_65 >= ACCOUNT_SYMBOL) && (LA329_65 <= YEAR_SYMBOL)) || LA329_65 == AND_SYMBOL || LA329_65 == AS_SYMBOL || LA329_65 == BACK_TICK_QUOTED_ID || LA329_65 == BETWEEN_SYMBOL || LA329_65 == BIN_NUMBER || LA329_65 == BITWISE_AND_OPERATOR || ((LA329_65 >= BITWISE_OR_OPERATOR) && (LA329_65 <= BITWISE_XOR_OPERATOR)) || ((LA329_65 >= CLOSE_CURLY_SYMBOL) && (LA329_65 <= COLLATE_SYMBOL)) || LA329_65 == COMMA_SYMBOL || LA329_65 == CONCAT_PIPES_SYMBOL || LA329_65 == CROSS_SYMBOL || ((LA329_65 >= DIV_OPERATOR) && (LA329_65 <= DIV_SYMBOL)) || LA329_65 == DOUBLE_QUOTED_TEXT || LA329_65 == EQUAL_OPERATOR || LA329_65 == FOR_SYMBOL || LA329_65 == FROM_SYMBOL || ((LA329_65 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_65 <= GREATER_THAN_OPERATOR)) || ((LA329_65 >= GROUP_SYMBOL) && (LA329_65 <= HAVING_SYMBOL)) || LA329_65 == HEX_NUMBER || LA329_65 == IDENTIFIER || LA329_65 == INNER_SYMBOL || LA329_65 == INTO_SYMBOL || LA329_65 == IN_SYMBOL || LA329_65 == IS_SYMBOL || ((LA329_65 >= JOIN_SYMBOL) && (LA329_65 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_65 >= LEFT_SYMBOL) && (LA329_65 <= LESS_THAN_OPERATOR)) || ((LA329_65 >= LIKE_SYMBOL) && (LA329_65 <= LIMIT_SYMBOL)) || LA329_65 == LOCK_SYMBOL || LA329_65 == LOGICAL_AND_OPERATOR || LA329_65 == LOGICAL_OR_OPERATOR || LA329_65 == MINUS_OPERATOR || ((LA329_65 >= MOD_OPERATOR) && (LA329_65 <= MOD_SYMBOL)) || ((LA329_65 >= MULT_OPERATOR) && (LA329_65 <= NATURAL_SYMBOL)) || ((LA329_65 >= NOT_EQUAL2_OPERATOR) && (LA329_65 <= NOT_SYMBOL)) || LA329_65 == NULL_SAFE_EQUAL_OPERATOR || LA329_65 == ON_SYMBOL || LA329_65 == OPEN_PAR_SYMBOL || ((LA329_65 >= ORDER_SYMBOL) && (LA329_65 <= OR_SYMBOL)) || LA329_65 == PLUS_OPERATOR || LA329_65 == PROCEDURE_SYMBOL || LA329_65 == REGEXP_SYMBOL || LA329_65 == RIGHT_SYMBOL || LA329_65 == SEMICOLON_SYMBOL || LA329_65 == SET_SYMBOL || ((LA329_65 >= SHIFT_LEFT_OPERATOR) && (LA329_65 <= SHIFT_RIGHT_OPERATOR)) || LA329_65 == SINGLE_QUOTED_TEXT || LA329_65 == STRAIGHT_JOIN_SYMBOL || LA329_65 == UNION_SYMBOL || LA329_65 == USING_SYMBOL || LA329_65 == WHERE_SYMBOL || LA329_65 == WITH_SYMBOL || LA329_65 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_65 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1674 = LA(3);
                                if ( (LA329_1674 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1674 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2550 = LA(4);
                                        if ( (LA329_2550 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10457 = LA(5);
                                                if ( (LA329_10457 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10457 >= ACCOUNT_SYMBOL) && (LA329_10457 <= YEAR_SYMBOL)) || LA329_10457 == BACK_TICK_QUOTED_ID || LA329_10457 == DOUBLE_QUOTED_TEXT || LA329_10457 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10457;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2550 == EOF || ((LA329_2550 >= ACCOUNT_SYMBOL) && (LA329_2550 <= YEAR_SYMBOL)) || LA329_2550 == AND_SYMBOL || LA329_2550 == AS_SYMBOL || LA329_2550 == BACK_TICK_QUOTED_ID || LA329_2550 == BETWEEN_SYMBOL || LA329_2550 == BIN_NUMBER || LA329_2550 == BITWISE_AND_OPERATOR || ((LA329_2550 >= BITWISE_OR_OPERATOR) && (LA329_2550 <= BITWISE_XOR_OPERATOR)) || ((LA329_2550 >= CLOSE_CURLY_SYMBOL) && (LA329_2550 <= COLLATE_SYMBOL)) || LA329_2550 == COMMA_SYMBOL || LA329_2550 == CONCAT_PIPES_SYMBOL || LA329_2550 == CROSS_SYMBOL || ((LA329_2550 >= DIV_OPERATOR) && (LA329_2550 <= DIV_SYMBOL)) || LA329_2550 == DOUBLE_QUOTED_TEXT || LA329_2550 == EQUAL_OPERATOR || LA329_2550 == FOR_SYMBOL || LA329_2550 == FROM_SYMBOL || ((LA329_2550 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2550 <= GREATER_THAN_OPERATOR)) || ((LA329_2550 >= GROUP_SYMBOL) && (LA329_2550 <= HAVING_SYMBOL)) || LA329_2550 == HEX_NUMBER || LA329_2550 == IDENTIFIER || LA329_2550 == INNER_SYMBOL || LA329_2550 == INTO_SYMBOL || LA329_2550 == IN_SYMBOL || LA329_2550 == IS_SYMBOL || ((LA329_2550 >= JOIN_SYMBOL) && (LA329_2550 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2550 >= LEFT_SYMBOL) && (LA329_2550 <= LESS_THAN_OPERATOR)) || ((LA329_2550 >= LIKE_SYMBOL) && (LA329_2550 <= LIMIT_SYMBOL)) || LA329_2550 == LOCK_SYMBOL || LA329_2550 == LOGICAL_AND_OPERATOR || LA329_2550 == LOGICAL_OR_OPERATOR || LA329_2550 == MINUS_OPERATOR || ((LA329_2550 >= MOD_OPERATOR) && (LA329_2550 <= MOD_SYMBOL)) || ((LA329_2550 >= MULT_OPERATOR) && (LA329_2550 <= NATURAL_SYMBOL)) || ((LA329_2550 >= NOT_EQUAL2_OPERATOR) && (LA329_2550 <= NOT_SYMBOL)) || LA329_2550 == NULL_SAFE_EQUAL_OPERATOR || LA329_2550 == ON_SYMBOL || LA329_2550 == OPEN_PAR_SYMBOL || ((LA329_2550 >= ORDER_SYMBOL) && (LA329_2550 <= OR_SYMBOL)) || LA329_2550 == PLUS_OPERATOR || LA329_2550 == PROCEDURE_SYMBOL || LA329_2550 == REGEXP_SYMBOL || LA329_2550 == RIGHT_SYMBOL || LA329_2550 == SEMICOLON_SYMBOL || LA329_2550 == SET_SYMBOL || ((LA329_2550 >= SHIFT_LEFT_OPERATOR) && (LA329_2550 <= SHIFT_RIGHT_OPERATOR)) || LA329_2550 == SINGLE_QUOTED_TEXT || LA329_2550 == STRAIGHT_JOIN_SYMBOL || LA329_2550 == UNION_SYMBOL || LA329_2550 == USING_SYMBOL || LA329_2550 == WHERE_SYMBOL || LA329_2550 == WITH_SYMBOL || LA329_2550 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2550;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1674 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2551 = LA(4);
                                        if ( (LA329_2551 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10511 = LA(5);
                                                if ( (LA329_10511 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10511 >= ACCOUNT_SYMBOL) && (LA329_10511 <= YEAR_SYMBOL)) || LA329_10511 == BACK_TICK_QUOTED_ID || LA329_10511 == DOUBLE_QUOTED_TEXT || LA329_10511 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10511;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2551 == EOF || ((LA329_2551 >= ACCOUNT_SYMBOL) && (LA329_2551 <= YEAR_SYMBOL)) || LA329_2551 == AND_SYMBOL || LA329_2551 == AS_SYMBOL || LA329_2551 == BACK_TICK_QUOTED_ID || LA329_2551 == BETWEEN_SYMBOL || LA329_2551 == BIN_NUMBER || LA329_2551 == BITWISE_AND_OPERATOR || ((LA329_2551 >= BITWISE_OR_OPERATOR) && (LA329_2551 <= BITWISE_XOR_OPERATOR)) || ((LA329_2551 >= CLOSE_CURLY_SYMBOL) && (LA329_2551 <= COLLATE_SYMBOL)) || LA329_2551 == COMMA_SYMBOL || LA329_2551 == CONCAT_PIPES_SYMBOL || LA329_2551 == CROSS_SYMBOL || ((LA329_2551 >= DIV_OPERATOR) && (LA329_2551 <= DIV_SYMBOL)) || LA329_2551 == DOUBLE_QUOTED_TEXT || LA329_2551 == EQUAL_OPERATOR || LA329_2551 == FOR_SYMBOL || LA329_2551 == FROM_SYMBOL || ((LA329_2551 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2551 <= GREATER_THAN_OPERATOR)) || ((LA329_2551 >= GROUP_SYMBOL) && (LA329_2551 <= HAVING_SYMBOL)) || LA329_2551 == HEX_NUMBER || LA329_2551 == IDENTIFIER || LA329_2551 == INNER_SYMBOL || LA329_2551 == INTO_SYMBOL || LA329_2551 == IN_SYMBOL || LA329_2551 == IS_SYMBOL || ((LA329_2551 >= JOIN_SYMBOL) && (LA329_2551 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2551 >= LEFT_SYMBOL) && (LA329_2551 <= LESS_THAN_OPERATOR)) || ((LA329_2551 >= LIKE_SYMBOL) && (LA329_2551 <= LIMIT_SYMBOL)) || LA329_2551 == LOCK_SYMBOL || LA329_2551 == LOGICAL_AND_OPERATOR || LA329_2551 == LOGICAL_OR_OPERATOR || LA329_2551 == MINUS_OPERATOR || ((LA329_2551 >= MOD_OPERATOR) && (LA329_2551 <= MOD_SYMBOL)) || ((LA329_2551 >= MULT_OPERATOR) && (LA329_2551 <= NATURAL_SYMBOL)) || ((LA329_2551 >= NOT_EQUAL2_OPERATOR) && (LA329_2551 <= NOT_SYMBOL)) || LA329_2551 == NULL_SAFE_EQUAL_OPERATOR || LA329_2551 == ON_SYMBOL || LA329_2551 == OPEN_PAR_SYMBOL || ((LA329_2551 >= ORDER_SYMBOL) && (LA329_2551 <= OR_SYMBOL)) || LA329_2551 == PLUS_OPERATOR || LA329_2551 == PROCEDURE_SYMBOL || LA329_2551 == REGEXP_SYMBOL || LA329_2551 == RIGHT_SYMBOL || LA329_2551 == SEMICOLON_SYMBOL || LA329_2551 == SET_SYMBOL || ((LA329_2551 >= SHIFT_LEFT_OPERATOR) && (LA329_2551 <= SHIFT_RIGHT_OPERATOR)) || LA329_2551 == SINGLE_QUOTED_TEXT || LA329_2551 == STRAIGHT_JOIN_SYMBOL || LA329_2551 == UNION_SYMBOL || LA329_2551 == USING_SYMBOL || LA329_2551 == WHERE_SYMBOL || LA329_2551 == WITH_SYMBOL || LA329_2551 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2551;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1674 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2552 = LA(4);
                                        if ( (LA329_2552 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10565 = LA(5);
                                                if ( (LA329_10565 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10565 >= ACCOUNT_SYMBOL) && (LA329_10565 <= YEAR_SYMBOL)) || LA329_10565 == BACK_TICK_QUOTED_ID || LA329_10565 == DOUBLE_QUOTED_TEXT || LA329_10565 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10565;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2552 == EOF || ((LA329_2552 >= ACCOUNT_SYMBOL) && (LA329_2552 <= YEAR_SYMBOL)) || LA329_2552 == AND_SYMBOL || LA329_2552 == AS_SYMBOL || LA329_2552 == BACK_TICK_QUOTED_ID || LA329_2552 == BETWEEN_SYMBOL || LA329_2552 == BIN_NUMBER || LA329_2552 == BITWISE_AND_OPERATOR || ((LA329_2552 >= BITWISE_OR_OPERATOR) && (LA329_2552 <= BITWISE_XOR_OPERATOR)) || ((LA329_2552 >= CLOSE_CURLY_SYMBOL) && (LA329_2552 <= COLLATE_SYMBOL)) || LA329_2552 == COMMA_SYMBOL || LA329_2552 == CONCAT_PIPES_SYMBOL || LA329_2552 == CROSS_SYMBOL || ((LA329_2552 >= DIV_OPERATOR) && (LA329_2552 <= DIV_SYMBOL)) || LA329_2552 == DOUBLE_QUOTED_TEXT || LA329_2552 == EQUAL_OPERATOR || LA329_2552 == FOR_SYMBOL || LA329_2552 == FROM_SYMBOL || ((LA329_2552 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2552 <= GREATER_THAN_OPERATOR)) || ((LA329_2552 >= GROUP_SYMBOL) && (LA329_2552 <= HAVING_SYMBOL)) || LA329_2552 == HEX_NUMBER || LA329_2552 == IDENTIFIER || LA329_2552 == INNER_SYMBOL || LA329_2552 == INTO_SYMBOL || LA329_2552 == IN_SYMBOL || LA329_2552 == IS_SYMBOL || ((LA329_2552 >= JOIN_SYMBOL) && (LA329_2552 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2552 >= LEFT_SYMBOL) && (LA329_2552 <= LESS_THAN_OPERATOR)) || ((LA329_2552 >= LIKE_SYMBOL) && (LA329_2552 <= LIMIT_SYMBOL)) || LA329_2552 == LOCK_SYMBOL || LA329_2552 == LOGICAL_AND_OPERATOR || LA329_2552 == LOGICAL_OR_OPERATOR || LA329_2552 == MINUS_OPERATOR || ((LA329_2552 >= MOD_OPERATOR) && (LA329_2552 <= MOD_SYMBOL)) || ((LA329_2552 >= MULT_OPERATOR) && (LA329_2552 <= NATURAL_SYMBOL)) || ((LA329_2552 >= NOT_EQUAL2_OPERATOR) && (LA329_2552 <= NOT_SYMBOL)) || LA329_2552 == NULL_SAFE_EQUAL_OPERATOR || LA329_2552 == ON_SYMBOL || LA329_2552 == OPEN_PAR_SYMBOL || ((LA329_2552 >= ORDER_SYMBOL) && (LA329_2552 <= OR_SYMBOL)) || LA329_2552 == PLUS_OPERATOR || LA329_2552 == PROCEDURE_SYMBOL || LA329_2552 == REGEXP_SYMBOL || LA329_2552 == RIGHT_SYMBOL || LA329_2552 == SEMICOLON_SYMBOL || LA329_2552 == SET_SYMBOL || ((LA329_2552 >= SHIFT_LEFT_OPERATOR) && (LA329_2552 <= SHIFT_RIGHT_OPERATOR)) || LA329_2552 == SINGLE_QUOTED_TEXT || LA329_2552 == STRAIGHT_JOIN_SYMBOL || LA329_2552 == UNION_SYMBOL || LA329_2552 == USING_SYMBOL || LA329_2552 == WHERE_SYMBOL || LA329_2552 == WITH_SYMBOL || LA329_2552 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2552;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1674 >= ACTION_SYMBOL) && (LA329_1674 <= SHARE_SYMBOL)) || ((LA329_1674 >= SLOW_SYMBOL) && (LA329_1674 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2553 = LA(4);
                                        if ( (LA329_2553 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10619 = LA(5);
                                                if ( (LA329_10619 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10619 >= ACCOUNT_SYMBOL) && (LA329_10619 <= YEAR_SYMBOL)) || LA329_10619 == BACK_TICK_QUOTED_ID || LA329_10619 == DOUBLE_QUOTED_TEXT || LA329_10619 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10619;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2553 == EOF || ((LA329_2553 >= ACCOUNT_SYMBOL) && (LA329_2553 <= YEAR_SYMBOL)) || LA329_2553 == AND_SYMBOL || LA329_2553 == AS_SYMBOL || LA329_2553 == BACK_TICK_QUOTED_ID || LA329_2553 == BETWEEN_SYMBOL || LA329_2553 == BIN_NUMBER || LA329_2553 == BITWISE_AND_OPERATOR || ((LA329_2553 >= BITWISE_OR_OPERATOR) && (LA329_2553 <= BITWISE_XOR_OPERATOR)) || ((LA329_2553 >= CLOSE_CURLY_SYMBOL) && (LA329_2553 <= COLLATE_SYMBOL)) || LA329_2553 == COMMA_SYMBOL || LA329_2553 == CONCAT_PIPES_SYMBOL || LA329_2553 == CROSS_SYMBOL || ((LA329_2553 >= DIV_OPERATOR) && (LA329_2553 <= DIV_SYMBOL)) || LA329_2553 == DOUBLE_QUOTED_TEXT || LA329_2553 == EQUAL_OPERATOR || LA329_2553 == FOR_SYMBOL || LA329_2553 == FROM_SYMBOL || ((LA329_2553 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2553 <= GREATER_THAN_OPERATOR)) || ((LA329_2553 >= GROUP_SYMBOL) && (LA329_2553 <= HAVING_SYMBOL)) || LA329_2553 == HEX_NUMBER || LA329_2553 == IDENTIFIER || LA329_2553 == INNER_SYMBOL || LA329_2553 == INTO_SYMBOL || LA329_2553 == IN_SYMBOL || LA329_2553 == IS_SYMBOL || ((LA329_2553 >= JOIN_SYMBOL) && (LA329_2553 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2553 >= LEFT_SYMBOL) && (LA329_2553 <= LESS_THAN_OPERATOR)) || ((LA329_2553 >= LIKE_SYMBOL) && (LA329_2553 <= LIMIT_SYMBOL)) || LA329_2553 == LOCK_SYMBOL || LA329_2553 == LOGICAL_AND_OPERATOR || LA329_2553 == LOGICAL_OR_OPERATOR || LA329_2553 == MINUS_OPERATOR || ((LA329_2553 >= MOD_OPERATOR) && (LA329_2553 <= MOD_SYMBOL)) || ((LA329_2553 >= MULT_OPERATOR) && (LA329_2553 <= NATURAL_SYMBOL)) || ((LA329_2553 >= NOT_EQUAL2_OPERATOR) && (LA329_2553 <= NOT_SYMBOL)) || LA329_2553 == NULL_SAFE_EQUAL_OPERATOR || LA329_2553 == ON_SYMBOL || LA329_2553 == OPEN_PAR_SYMBOL || ((LA329_2553 >= ORDER_SYMBOL) && (LA329_2553 <= OR_SYMBOL)) || LA329_2553 == PLUS_OPERATOR || LA329_2553 == PROCEDURE_SYMBOL || LA329_2553 == REGEXP_SYMBOL || LA329_2553 == RIGHT_SYMBOL || LA329_2553 == SEMICOLON_SYMBOL || LA329_2553 == SET_SYMBOL || ((LA329_2553 >= SHIFT_LEFT_OPERATOR) && (LA329_2553 <= SHIFT_RIGHT_OPERATOR)) || LA329_2553 == SINGLE_QUOTED_TEXT || LA329_2553 == STRAIGHT_JOIN_SYMBOL || LA329_2553 == UNION_SYMBOL || LA329_2553 == USING_SYMBOL || LA329_2553 == WHERE_SYMBOL || LA329_2553 == WITH_SYMBOL || LA329_2553 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2553;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1674 >= ACCOUNT_SYMBOL) && (LA329_1674 <= XA_SYMBOL)) || LA329_1674 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2554 = LA(4);
                                        if ( (LA329_2554 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10673 = LA(5);
                                                if ( (LA329_10673 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10673 >= ACCOUNT_SYMBOL) && (LA329_10673 <= YEAR_SYMBOL)) || LA329_10673 == BACK_TICK_QUOTED_ID || LA329_10673 == DOUBLE_QUOTED_TEXT || LA329_10673 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10673;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2554 == EOF || ((LA329_2554 >= ACCOUNT_SYMBOL) && (LA329_2554 <= YEAR_SYMBOL)) || LA329_2554 == AND_SYMBOL || LA329_2554 == AS_SYMBOL || LA329_2554 == BACK_TICK_QUOTED_ID || LA329_2554 == BETWEEN_SYMBOL || LA329_2554 == BIN_NUMBER || LA329_2554 == BITWISE_AND_OPERATOR || ((LA329_2554 >= BITWISE_OR_OPERATOR) && (LA329_2554 <= BITWISE_XOR_OPERATOR)) || ((LA329_2554 >= CLOSE_CURLY_SYMBOL) && (LA329_2554 <= COLLATE_SYMBOL)) || LA329_2554 == COMMA_SYMBOL || LA329_2554 == CONCAT_PIPES_SYMBOL || LA329_2554 == CROSS_SYMBOL || ((LA329_2554 >= DIV_OPERATOR) && (LA329_2554 <= DIV_SYMBOL)) || LA329_2554 == DOUBLE_QUOTED_TEXT || LA329_2554 == EQUAL_OPERATOR || LA329_2554 == FOR_SYMBOL || LA329_2554 == FROM_SYMBOL || ((LA329_2554 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2554 <= GREATER_THAN_OPERATOR)) || ((LA329_2554 >= GROUP_SYMBOL) && (LA329_2554 <= HAVING_SYMBOL)) || LA329_2554 == HEX_NUMBER || LA329_2554 == IDENTIFIER || LA329_2554 == INNER_SYMBOL || LA329_2554 == INTO_SYMBOL || LA329_2554 == IN_SYMBOL || LA329_2554 == IS_SYMBOL || ((LA329_2554 >= JOIN_SYMBOL) && (LA329_2554 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2554 >= LEFT_SYMBOL) && (LA329_2554 <= LESS_THAN_OPERATOR)) || ((LA329_2554 >= LIKE_SYMBOL) && (LA329_2554 <= LIMIT_SYMBOL)) || LA329_2554 == LOCK_SYMBOL || LA329_2554 == LOGICAL_AND_OPERATOR || LA329_2554 == LOGICAL_OR_OPERATOR || LA329_2554 == MINUS_OPERATOR || ((LA329_2554 >= MOD_OPERATOR) && (LA329_2554 <= MOD_SYMBOL)) || ((LA329_2554 >= MULT_OPERATOR) && (LA329_2554 <= NATURAL_SYMBOL)) || ((LA329_2554 >= NOT_EQUAL2_OPERATOR) && (LA329_2554 <= NOT_SYMBOL)) || LA329_2554 == NULL_SAFE_EQUAL_OPERATOR || LA329_2554 == ON_SYMBOL || LA329_2554 == OPEN_PAR_SYMBOL || ((LA329_2554 >= ORDER_SYMBOL) && (LA329_2554 <= OR_SYMBOL)) || LA329_2554 == PLUS_OPERATOR || LA329_2554 == PROCEDURE_SYMBOL || LA329_2554 == REGEXP_SYMBOL || LA329_2554 == RIGHT_SYMBOL || LA329_2554 == SEMICOLON_SYMBOL || LA329_2554 == SET_SYMBOL || ((LA329_2554 >= SHIFT_LEFT_OPERATOR) && (LA329_2554 <= SHIFT_RIGHT_OPERATOR)) || LA329_2554 == SINGLE_QUOTED_TEXT || LA329_2554 == STRAIGHT_JOIN_SYMBOL || LA329_2554 == UNION_SYMBOL || LA329_2554 == USING_SYMBOL || LA329_2554 == WHERE_SYMBOL || LA329_2554 == WITH_SYMBOL || LA329_2554 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2554;


                                            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  = 329;
                                    EXCEPTION->state        = 1674;


                                    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  = 329;
                            EXCEPTION->state        = 65;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == WEIGHT_STRING_SYMBOL))
                {
                    {
                        int LA329_66 = LA(2);
                        if ( (LA329_66 == EOF || ((LA329_66 >= ACCOUNT_SYMBOL) && (LA329_66 <= YEAR_SYMBOL)) || LA329_66 == AND_SYMBOL || LA329_66 == AS_SYMBOL || LA329_66 == BACK_TICK_QUOTED_ID || LA329_66 == BETWEEN_SYMBOL || LA329_66 == BIN_NUMBER || LA329_66 == BITWISE_AND_OPERATOR || ((LA329_66 >= BITWISE_OR_OPERATOR) && (LA329_66 <= BITWISE_XOR_OPERATOR)) || ((LA329_66 >= CLOSE_CURLY_SYMBOL) && (LA329_66 <= COLLATE_SYMBOL)) || LA329_66 == COMMA_SYMBOL || LA329_66 == CONCAT_PIPES_SYMBOL || LA329_66 == CROSS_SYMBOL || ((LA329_66 >= DIV_OPERATOR) && (LA329_66 <= DIV_SYMBOL)) || LA329_66 == DOUBLE_QUOTED_TEXT || LA329_66 == EQUAL_OPERATOR || LA329_66 == FOR_SYMBOL || LA329_66 == FROM_SYMBOL || ((LA329_66 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_66 <= GREATER_THAN_OPERATOR)) || ((LA329_66 >= GROUP_SYMBOL) && (LA329_66 <= HAVING_SYMBOL)) || LA329_66 == HEX_NUMBER || LA329_66 == IDENTIFIER || LA329_66 == INNER_SYMBOL || LA329_66 == INTO_SYMBOL || LA329_66 == IN_SYMBOL || LA329_66 == IS_SYMBOL || ((LA329_66 >= JOIN_SYMBOL) && (LA329_66 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_66 >= LEFT_SYMBOL) && (LA329_66 <= LESS_THAN_OPERATOR)) || ((LA329_66 >= LIKE_SYMBOL) && (LA329_66 <= LIMIT_SYMBOL)) || LA329_66 == LOCK_SYMBOL || LA329_66 == LOGICAL_AND_OPERATOR || LA329_66 == LOGICAL_OR_OPERATOR || LA329_66 == MINUS_OPERATOR || ((LA329_66 >= MOD_OPERATOR) && (LA329_66 <= MOD_SYMBOL)) || ((LA329_66 >= MULT_OPERATOR) && (LA329_66 <= NATURAL_SYMBOL)) || ((LA329_66 >= NOT_EQUAL2_OPERATOR) && (LA329_66 <= NOT_SYMBOL)) || LA329_66 == NULL_SAFE_EQUAL_OPERATOR || LA329_66 == ON_SYMBOL || LA329_66 == OPEN_PAR_SYMBOL || ((LA329_66 >= ORDER_SYMBOL) && (LA329_66 <= OR_SYMBOL)) || LA329_66 == PLUS_OPERATOR || LA329_66 == PROCEDURE_SYMBOL || LA329_66 == REGEXP_SYMBOL || LA329_66 == RIGHT_SYMBOL || LA329_66 == SEMICOLON_SYMBOL || LA329_66 == SET_SYMBOL || ((LA329_66 >= SHIFT_LEFT_OPERATOR) && (LA329_66 <= SHIFT_RIGHT_OPERATOR)) || LA329_66 == SINGLE_QUOTED_TEXT || LA329_66 == STRAIGHT_JOIN_SYMBOL || LA329_66 == UNION_SYMBOL || LA329_66 == USING_SYMBOL || LA329_66 == WHERE_SYMBOL || LA329_66 == WITH_SYMBOL || LA329_66 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_66 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1728 = LA(3);
                                if ( (LA329_1728 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1728 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2556 = LA(4);
                                        if ( (LA329_2556 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10727 = LA(5);
                                                if ( (LA329_10727 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10727 >= ACCOUNT_SYMBOL) && (LA329_10727 <= YEAR_SYMBOL)) || LA329_10727 == BACK_TICK_QUOTED_ID || LA329_10727 == DOUBLE_QUOTED_TEXT || LA329_10727 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10727;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2556 == EOF || ((LA329_2556 >= ACCOUNT_SYMBOL) && (LA329_2556 <= YEAR_SYMBOL)) || LA329_2556 == AND_SYMBOL || LA329_2556 == AS_SYMBOL || LA329_2556 == BACK_TICK_QUOTED_ID || LA329_2556 == BETWEEN_SYMBOL || LA329_2556 == BIN_NUMBER || LA329_2556 == BITWISE_AND_OPERATOR || ((LA329_2556 >= BITWISE_OR_OPERATOR) && (LA329_2556 <= BITWISE_XOR_OPERATOR)) || ((LA329_2556 >= CLOSE_CURLY_SYMBOL) && (LA329_2556 <= COLLATE_SYMBOL)) || LA329_2556 == COMMA_SYMBOL || LA329_2556 == CONCAT_PIPES_SYMBOL || LA329_2556 == CROSS_SYMBOL || ((LA329_2556 >= DIV_OPERATOR) && (LA329_2556 <= DIV_SYMBOL)) || LA329_2556 == DOUBLE_QUOTED_TEXT || LA329_2556 == EQUAL_OPERATOR || LA329_2556 == FOR_SYMBOL || LA329_2556 == FROM_SYMBOL || ((LA329_2556 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2556 <= GREATER_THAN_OPERATOR)) || ((LA329_2556 >= GROUP_SYMBOL) && (LA329_2556 <= HAVING_SYMBOL)) || LA329_2556 == HEX_NUMBER || LA329_2556 == IDENTIFIER || LA329_2556 == INNER_SYMBOL || LA329_2556 == INTO_SYMBOL || LA329_2556 == IN_SYMBOL || LA329_2556 == IS_SYMBOL || ((LA329_2556 >= JOIN_SYMBOL) && (LA329_2556 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2556 >= LEFT_SYMBOL) && (LA329_2556 <= LESS_THAN_OPERATOR)) || ((LA329_2556 >= LIKE_SYMBOL) && (LA329_2556 <= LIMIT_SYMBOL)) || LA329_2556 == LOCK_SYMBOL || LA329_2556 == LOGICAL_AND_OPERATOR || LA329_2556 == LOGICAL_OR_OPERATOR || LA329_2556 == MINUS_OPERATOR || ((LA329_2556 >= MOD_OPERATOR) && (LA329_2556 <= MOD_SYMBOL)) || ((LA329_2556 >= MULT_OPERATOR) && (LA329_2556 <= NATURAL_SYMBOL)) || ((LA329_2556 >= NOT_EQUAL2_OPERATOR) && (LA329_2556 <= NOT_SYMBOL)) || LA329_2556 == NULL_SAFE_EQUAL_OPERATOR || LA329_2556 == ON_SYMBOL || LA329_2556 == OPEN_PAR_SYMBOL || ((LA329_2556 >= ORDER_SYMBOL) && (LA329_2556 <= OR_SYMBOL)) || LA329_2556 == PLUS_OPERATOR || LA329_2556 == PROCEDURE_SYMBOL || LA329_2556 == REGEXP_SYMBOL || LA329_2556 == RIGHT_SYMBOL || LA329_2556 == SEMICOLON_SYMBOL || LA329_2556 == SET_SYMBOL || ((LA329_2556 >= SHIFT_LEFT_OPERATOR) && (LA329_2556 <= SHIFT_RIGHT_OPERATOR)) || LA329_2556 == SINGLE_QUOTED_TEXT || LA329_2556 == STRAIGHT_JOIN_SYMBOL || LA329_2556 == UNION_SYMBOL || LA329_2556 == USING_SYMBOL || LA329_2556 == WHERE_SYMBOL || LA329_2556 == WITH_SYMBOL || LA329_2556 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2556;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1728 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2557 = LA(4);
                                        if ( (LA329_2557 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10781 = LA(5);
                                                if ( (LA329_10781 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10781 >= ACCOUNT_SYMBOL) && (LA329_10781 <= YEAR_SYMBOL)) || LA329_10781 == BACK_TICK_QUOTED_ID || LA329_10781 == DOUBLE_QUOTED_TEXT || LA329_10781 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10781;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2557 == EOF || ((LA329_2557 >= ACCOUNT_SYMBOL) && (LA329_2557 <= YEAR_SYMBOL)) || LA329_2557 == AND_SYMBOL || LA329_2557 == AS_SYMBOL || LA329_2557 == BACK_TICK_QUOTED_ID || LA329_2557 == BETWEEN_SYMBOL || LA329_2557 == BIN_NUMBER || LA329_2557 == BITWISE_AND_OPERATOR || ((LA329_2557 >= BITWISE_OR_OPERATOR) && (LA329_2557 <= BITWISE_XOR_OPERATOR)) || ((LA329_2557 >= CLOSE_CURLY_SYMBOL) && (LA329_2557 <= COLLATE_SYMBOL)) || LA329_2557 == COMMA_SYMBOL || LA329_2557 == CONCAT_PIPES_SYMBOL || LA329_2557 == CROSS_SYMBOL || ((LA329_2557 >= DIV_OPERATOR) && (LA329_2557 <= DIV_SYMBOL)) || LA329_2557 == DOUBLE_QUOTED_TEXT || LA329_2557 == EQUAL_OPERATOR || LA329_2557 == FOR_SYMBOL || LA329_2557 == FROM_SYMBOL || ((LA329_2557 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2557 <= GREATER_THAN_OPERATOR)) || ((LA329_2557 >= GROUP_SYMBOL) && (LA329_2557 <= HAVING_SYMBOL)) || LA329_2557 == HEX_NUMBER || LA329_2557 == IDENTIFIER || LA329_2557 == INNER_SYMBOL || LA329_2557 == INTO_SYMBOL || LA329_2557 == IN_SYMBOL || LA329_2557 == IS_SYMBOL || ((LA329_2557 >= JOIN_SYMBOL) && (LA329_2557 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2557 >= LEFT_SYMBOL) && (LA329_2557 <= LESS_THAN_OPERATOR)) || ((LA329_2557 >= LIKE_SYMBOL) && (LA329_2557 <= LIMIT_SYMBOL)) || LA329_2557 == LOCK_SYMBOL || LA329_2557 == LOGICAL_AND_OPERATOR || LA329_2557 == LOGICAL_OR_OPERATOR || LA329_2557 == MINUS_OPERATOR || ((LA329_2557 >= MOD_OPERATOR) && (LA329_2557 <= MOD_SYMBOL)) || ((LA329_2557 >= MULT_OPERATOR) && (LA329_2557 <= NATURAL_SYMBOL)) || ((LA329_2557 >= NOT_EQUAL2_OPERATOR) && (LA329_2557 <= NOT_SYMBOL)) || LA329_2557 == NULL_SAFE_EQUAL_OPERATOR || LA329_2557 == ON_SYMBOL || LA329_2557 == OPEN_PAR_SYMBOL || ((LA329_2557 >= ORDER_SYMBOL) && (LA329_2557 <= OR_SYMBOL)) || LA329_2557 == PLUS_OPERATOR || LA329_2557 == PROCEDURE_SYMBOL || LA329_2557 == REGEXP_SYMBOL || LA329_2557 == RIGHT_SYMBOL || LA329_2557 == SEMICOLON_SYMBOL || LA329_2557 == SET_SYMBOL || ((LA329_2557 >= SHIFT_LEFT_OPERATOR) && (LA329_2557 <= SHIFT_RIGHT_OPERATOR)) || LA329_2557 == SINGLE_QUOTED_TEXT || LA329_2557 == STRAIGHT_JOIN_SYMBOL || LA329_2557 == UNION_SYMBOL || LA329_2557 == USING_SYMBOL || LA329_2557 == WHERE_SYMBOL || LA329_2557 == WITH_SYMBOL || LA329_2557 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2557;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1728 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2558 = LA(4);
                                        if ( (LA329_2558 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10835 = LA(5);
                                                if ( (LA329_10835 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10835 >= ACCOUNT_SYMBOL) && (LA329_10835 <= YEAR_SYMBOL)) || LA329_10835 == BACK_TICK_QUOTED_ID || LA329_10835 == DOUBLE_QUOTED_TEXT || LA329_10835 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10835;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2558 == EOF || ((LA329_2558 >= ACCOUNT_SYMBOL) && (LA329_2558 <= YEAR_SYMBOL)) || LA329_2558 == AND_SYMBOL || LA329_2558 == AS_SYMBOL || LA329_2558 == BACK_TICK_QUOTED_ID || LA329_2558 == BETWEEN_SYMBOL || LA329_2558 == BIN_NUMBER || LA329_2558 == BITWISE_AND_OPERATOR || ((LA329_2558 >= BITWISE_OR_OPERATOR) && (LA329_2558 <= BITWISE_XOR_OPERATOR)) || ((LA329_2558 >= CLOSE_CURLY_SYMBOL) && (LA329_2558 <= COLLATE_SYMBOL)) || LA329_2558 == COMMA_SYMBOL || LA329_2558 == CONCAT_PIPES_SYMBOL || LA329_2558 == CROSS_SYMBOL || ((LA329_2558 >= DIV_OPERATOR) && (LA329_2558 <= DIV_SYMBOL)) || LA329_2558 == DOUBLE_QUOTED_TEXT || LA329_2558 == EQUAL_OPERATOR || LA329_2558 == FOR_SYMBOL || LA329_2558 == FROM_SYMBOL || ((LA329_2558 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2558 <= GREATER_THAN_OPERATOR)) || ((LA329_2558 >= GROUP_SYMBOL) && (LA329_2558 <= HAVING_SYMBOL)) || LA329_2558 == HEX_NUMBER || LA329_2558 == IDENTIFIER || LA329_2558 == INNER_SYMBOL || LA329_2558 == INTO_SYMBOL || LA329_2558 == IN_SYMBOL || LA329_2558 == IS_SYMBOL || ((LA329_2558 >= JOIN_SYMBOL) && (LA329_2558 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2558 >= LEFT_SYMBOL) && (LA329_2558 <= LESS_THAN_OPERATOR)) || ((LA329_2558 >= LIKE_SYMBOL) && (LA329_2558 <= LIMIT_SYMBOL)) || LA329_2558 == LOCK_SYMBOL || LA329_2558 == LOGICAL_AND_OPERATOR || LA329_2558 == LOGICAL_OR_OPERATOR || LA329_2558 == MINUS_OPERATOR || ((LA329_2558 >= MOD_OPERATOR) && (LA329_2558 <= MOD_SYMBOL)) || ((LA329_2558 >= MULT_OPERATOR) && (LA329_2558 <= NATURAL_SYMBOL)) || ((LA329_2558 >= NOT_EQUAL2_OPERATOR) && (LA329_2558 <= NOT_SYMBOL)) || LA329_2558 == NULL_SAFE_EQUAL_OPERATOR || LA329_2558 == ON_SYMBOL || LA329_2558 == OPEN_PAR_SYMBOL || ((LA329_2558 >= ORDER_SYMBOL) && (LA329_2558 <= OR_SYMBOL)) || LA329_2558 == PLUS_OPERATOR || LA329_2558 == PROCEDURE_SYMBOL || LA329_2558 == REGEXP_SYMBOL || LA329_2558 == RIGHT_SYMBOL || LA329_2558 == SEMICOLON_SYMBOL || LA329_2558 == SET_SYMBOL || ((LA329_2558 >= SHIFT_LEFT_OPERATOR) && (LA329_2558 <= SHIFT_RIGHT_OPERATOR)) || LA329_2558 == SINGLE_QUOTED_TEXT || LA329_2558 == STRAIGHT_JOIN_SYMBOL || LA329_2558 == UNION_SYMBOL || LA329_2558 == USING_SYMBOL || LA329_2558 == WHERE_SYMBOL || LA329_2558 == WITH_SYMBOL || LA329_2558 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2558;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1728 >= ACTION_SYMBOL) && (LA329_1728 <= SHARE_SYMBOL)) || ((LA329_1728 >= SLOW_SYMBOL) && (LA329_1728 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2559 = LA(4);
                                        if ( (LA329_2559 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10889 = LA(5);
                                                if ( (LA329_10889 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10889 >= ACCOUNT_SYMBOL) && (LA329_10889 <= YEAR_SYMBOL)) || LA329_10889 == BACK_TICK_QUOTED_ID || LA329_10889 == DOUBLE_QUOTED_TEXT || LA329_10889 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10889;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2559 == EOF || ((LA329_2559 >= ACCOUNT_SYMBOL) && (LA329_2559 <= YEAR_SYMBOL)) || LA329_2559 == AND_SYMBOL || LA329_2559 == AS_SYMBOL || LA329_2559 == BACK_TICK_QUOTED_ID || LA329_2559 == BETWEEN_SYMBOL || LA329_2559 == BIN_NUMBER || LA329_2559 == BITWISE_AND_OPERATOR || ((LA329_2559 >= BITWISE_OR_OPERATOR) && (LA329_2559 <= BITWISE_XOR_OPERATOR)) || ((LA329_2559 >= CLOSE_CURLY_SYMBOL) && (LA329_2559 <= COLLATE_SYMBOL)) || LA329_2559 == COMMA_SYMBOL || LA329_2559 == CONCAT_PIPES_SYMBOL || LA329_2559 == CROSS_SYMBOL || ((LA329_2559 >= DIV_OPERATOR) && (LA329_2559 <= DIV_SYMBOL)) || LA329_2559 == DOUBLE_QUOTED_TEXT || LA329_2559 == EQUAL_OPERATOR || LA329_2559 == FOR_SYMBOL || LA329_2559 == FROM_SYMBOL || ((LA329_2559 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2559 <= GREATER_THAN_OPERATOR)) || ((LA329_2559 >= GROUP_SYMBOL) && (LA329_2559 <= HAVING_SYMBOL)) || LA329_2559 == HEX_NUMBER || LA329_2559 == IDENTIFIER || LA329_2559 == INNER_SYMBOL || LA329_2559 == INTO_SYMBOL || LA329_2559 == IN_SYMBOL || LA329_2559 == IS_SYMBOL || ((LA329_2559 >= JOIN_SYMBOL) && (LA329_2559 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2559 >= LEFT_SYMBOL) && (LA329_2559 <= LESS_THAN_OPERATOR)) || ((LA329_2559 >= LIKE_SYMBOL) && (LA329_2559 <= LIMIT_SYMBOL)) || LA329_2559 == LOCK_SYMBOL || LA329_2559 == LOGICAL_AND_OPERATOR || LA329_2559 == LOGICAL_OR_OPERATOR || LA329_2559 == MINUS_OPERATOR || ((LA329_2559 >= MOD_OPERATOR) && (LA329_2559 <= MOD_SYMBOL)) || ((LA329_2559 >= MULT_OPERATOR) && (LA329_2559 <= NATURAL_SYMBOL)) || ((LA329_2559 >= NOT_EQUAL2_OPERATOR) && (LA329_2559 <= NOT_SYMBOL)) || LA329_2559 == NULL_SAFE_EQUAL_OPERATOR || LA329_2559 == ON_SYMBOL || LA329_2559 == OPEN_PAR_SYMBOL || ((LA329_2559 >= ORDER_SYMBOL) && (LA329_2559 <= OR_SYMBOL)) || LA329_2559 == PLUS_OPERATOR || LA329_2559 == PROCEDURE_SYMBOL || LA329_2559 == REGEXP_SYMBOL || LA329_2559 == RIGHT_SYMBOL || LA329_2559 == SEMICOLON_SYMBOL || LA329_2559 == SET_SYMBOL || ((LA329_2559 >= SHIFT_LEFT_OPERATOR) && (LA329_2559 <= SHIFT_RIGHT_OPERATOR)) || LA329_2559 == SINGLE_QUOTED_TEXT || LA329_2559 == STRAIGHT_JOIN_SYMBOL || LA329_2559 == UNION_SYMBOL || LA329_2559 == USING_SYMBOL || LA329_2559 == WHERE_SYMBOL || LA329_2559 == WITH_SYMBOL || LA329_2559 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2559;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1728 >= ACCOUNT_SYMBOL) && (LA329_1728 <= XA_SYMBOL)) || LA329_1728 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2560 = LA(4);
                                        if ( (LA329_2560 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10943 = LA(5);
                                                if ( (LA329_10943 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10943 >= ACCOUNT_SYMBOL) && (LA329_10943 <= YEAR_SYMBOL)) || LA329_10943 == BACK_TICK_QUOTED_ID || LA329_10943 == DOUBLE_QUOTED_TEXT || LA329_10943 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10943;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2560 == EOF || ((LA329_2560 >= ACCOUNT_SYMBOL) && (LA329_2560 <= YEAR_SYMBOL)) || LA329_2560 == AND_SYMBOL || LA329_2560 == AS_SYMBOL || LA329_2560 == BACK_TICK_QUOTED_ID || LA329_2560 == BETWEEN_SYMBOL || LA329_2560 == BIN_NUMBER || LA329_2560 == BITWISE_AND_OPERATOR || ((LA329_2560 >= BITWISE_OR_OPERATOR) && (LA329_2560 <= BITWISE_XOR_OPERATOR)) || ((LA329_2560 >= CLOSE_CURLY_SYMBOL) && (LA329_2560 <= COLLATE_SYMBOL)) || LA329_2560 == COMMA_SYMBOL || LA329_2560 == CONCAT_PIPES_SYMBOL || LA329_2560 == CROSS_SYMBOL || ((LA329_2560 >= DIV_OPERATOR) && (LA329_2560 <= DIV_SYMBOL)) || LA329_2560 == DOUBLE_QUOTED_TEXT || LA329_2560 == EQUAL_OPERATOR || LA329_2560 == FOR_SYMBOL || LA329_2560 == FROM_SYMBOL || ((LA329_2560 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2560 <= GREATER_THAN_OPERATOR)) || ((LA329_2560 >= GROUP_SYMBOL) && (LA329_2560 <= HAVING_SYMBOL)) || LA329_2560 == HEX_NUMBER || LA329_2560 == IDENTIFIER || LA329_2560 == INNER_SYMBOL || LA329_2560 == INTO_SYMBOL || LA329_2560 == IN_SYMBOL || LA329_2560 == IS_SYMBOL || ((LA329_2560 >= JOIN_SYMBOL) && (LA329_2560 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2560 >= LEFT_SYMBOL) && (LA329_2560 <= LESS_THAN_OPERATOR)) || ((LA329_2560 >= LIKE_SYMBOL) && (LA329_2560 <= LIMIT_SYMBOL)) || LA329_2560 == LOCK_SYMBOL || LA329_2560 == LOGICAL_AND_OPERATOR || LA329_2560 == LOGICAL_OR_OPERATOR || LA329_2560 == MINUS_OPERATOR || ((LA329_2560 >= MOD_OPERATOR) && (LA329_2560 <= MOD_SYMBOL)) || ((LA329_2560 >= MULT_OPERATOR) && (LA329_2560 <= NATURAL_SYMBOL)) || ((LA329_2560 >= NOT_EQUAL2_OPERATOR) && (LA329_2560 <= NOT_SYMBOL)) || LA329_2560 == NULL_SAFE_EQUAL_OPERATOR || LA329_2560 == ON_SYMBOL || LA329_2560 == OPEN_PAR_SYMBOL || ((LA329_2560 >= ORDER_SYMBOL) && (LA329_2560 <= OR_SYMBOL)) || LA329_2560 == PLUS_OPERATOR || LA329_2560 == PROCEDURE_SYMBOL || LA329_2560 == REGEXP_SYMBOL || LA329_2560 == RIGHT_SYMBOL || LA329_2560 == SEMICOLON_SYMBOL || LA329_2560 == SET_SYMBOL || ((LA329_2560 >= SHIFT_LEFT_OPERATOR) && (LA329_2560 <= SHIFT_RIGHT_OPERATOR)) || LA329_2560 == SINGLE_QUOTED_TEXT || LA329_2560 == STRAIGHT_JOIN_SYMBOL || LA329_2560 == UNION_SYMBOL || LA329_2560 == USING_SYMBOL || LA329_2560 == WHERE_SYMBOL || LA329_2560 == WITH_SYMBOL || LA329_2560 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2560;


                                            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  = 329;
                                    EXCEPTION->state        = 1728;


                                    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  = 329;
                            EXCEPTION->state        = 66;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == GEOMETRYCOLLECTION_SYMBOL))
                {
                    {
                        int LA329_67 = LA(2);
                        if ( (LA329_67 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1781 = LA(3);
                                if ( (LA329_1781 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1781 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2562 = LA(4);
                                        if ( (LA329_2562 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_10997 = LA(5);
                                                if ( (LA329_10997 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_10997 >= ACCOUNT_SYMBOL) && (LA329_10997 <= YEAR_SYMBOL)) || LA329_10997 == BACK_TICK_QUOTED_ID || LA329_10997 == DOUBLE_QUOTED_TEXT || LA329_10997 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 10997;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2562 == EOF || ((LA329_2562 >= ACCOUNT_SYMBOL) && (LA329_2562 <= YEAR_SYMBOL)) || LA329_2562 == AND_SYMBOL || LA329_2562 == AS_SYMBOL || LA329_2562 == BACK_TICK_QUOTED_ID || LA329_2562 == BETWEEN_SYMBOL || LA329_2562 == BIN_NUMBER || LA329_2562 == BITWISE_AND_OPERATOR || ((LA329_2562 >= BITWISE_OR_OPERATOR) && (LA329_2562 <= BITWISE_XOR_OPERATOR)) || ((LA329_2562 >= CLOSE_CURLY_SYMBOL) && (LA329_2562 <= COLLATE_SYMBOL)) || LA329_2562 == COMMA_SYMBOL || LA329_2562 == CONCAT_PIPES_SYMBOL || LA329_2562 == CROSS_SYMBOL || ((LA329_2562 >= DIV_OPERATOR) && (LA329_2562 <= DIV_SYMBOL)) || LA329_2562 == DOUBLE_QUOTED_TEXT || LA329_2562 == EQUAL_OPERATOR || LA329_2562 == FOR_SYMBOL || LA329_2562 == FROM_SYMBOL || ((LA329_2562 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2562 <= GREATER_THAN_OPERATOR)) || ((LA329_2562 >= GROUP_SYMBOL) && (LA329_2562 <= HAVING_SYMBOL)) || LA329_2562 == HEX_NUMBER || LA329_2562 == IDENTIFIER || LA329_2562 == INNER_SYMBOL || LA329_2562 == INTO_SYMBOL || LA329_2562 == IN_SYMBOL || LA329_2562 == IS_SYMBOL || ((LA329_2562 >= JOIN_SYMBOL) && (LA329_2562 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2562 >= LEFT_SYMBOL) && (LA329_2562 <= LESS_THAN_OPERATOR)) || ((LA329_2562 >= LIKE_SYMBOL) && (LA329_2562 <= LIMIT_SYMBOL)) || LA329_2562 == LOCK_SYMBOL || LA329_2562 == LOGICAL_AND_OPERATOR || LA329_2562 == LOGICAL_OR_OPERATOR || LA329_2562 == MINUS_OPERATOR || ((LA329_2562 >= MOD_OPERATOR) && (LA329_2562 <= MOD_SYMBOL)) || ((LA329_2562 >= MULT_OPERATOR) && (LA329_2562 <= NATURAL_SYMBOL)) || ((LA329_2562 >= NOT_EQUAL2_OPERATOR) && (LA329_2562 <= NOT_SYMBOL)) || LA329_2562 == NULL_SAFE_EQUAL_OPERATOR || LA329_2562 == ON_SYMBOL || LA329_2562 == OPEN_PAR_SYMBOL || ((LA329_2562 >= ORDER_SYMBOL) && (LA329_2562 <= OR_SYMBOL)) || LA329_2562 == PLUS_OPERATOR || LA329_2562 == PROCEDURE_SYMBOL || LA329_2562 == REGEXP_SYMBOL || LA329_2562 == RIGHT_SYMBOL || LA329_2562 == SEMICOLON_SYMBOL || LA329_2562 == SET_SYMBOL || ((LA329_2562 >= SHIFT_LEFT_OPERATOR) && (LA329_2562 <= SHIFT_RIGHT_OPERATOR)) || LA329_2562 == SINGLE_QUOTED_TEXT || LA329_2562 == STRAIGHT_JOIN_SYMBOL || LA329_2562 == UNION_SYMBOL || LA329_2562 == USING_SYMBOL || LA329_2562 == WHERE_SYMBOL || LA329_2562 == WITH_SYMBOL || LA329_2562 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2562;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1781 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2563 = LA(4);
                                        if ( (LA329_2563 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11051 = LA(5);
                                                if ( (LA329_11051 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11051 >= ACCOUNT_SYMBOL) && (LA329_11051 <= YEAR_SYMBOL)) || LA329_11051 == BACK_TICK_QUOTED_ID || LA329_11051 == DOUBLE_QUOTED_TEXT || LA329_11051 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11051;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2563 == EOF || ((LA329_2563 >= ACCOUNT_SYMBOL) && (LA329_2563 <= YEAR_SYMBOL)) || LA329_2563 == AND_SYMBOL || LA329_2563 == AS_SYMBOL || LA329_2563 == BACK_TICK_QUOTED_ID || LA329_2563 == BETWEEN_SYMBOL || LA329_2563 == BIN_NUMBER || LA329_2563 == BITWISE_AND_OPERATOR || ((LA329_2563 >= BITWISE_OR_OPERATOR) && (LA329_2563 <= BITWISE_XOR_OPERATOR)) || ((LA329_2563 >= CLOSE_CURLY_SYMBOL) && (LA329_2563 <= COLLATE_SYMBOL)) || LA329_2563 == COMMA_SYMBOL || LA329_2563 == CONCAT_PIPES_SYMBOL || LA329_2563 == CROSS_SYMBOL || ((LA329_2563 >= DIV_OPERATOR) && (LA329_2563 <= DIV_SYMBOL)) || LA329_2563 == DOUBLE_QUOTED_TEXT || LA329_2563 == EQUAL_OPERATOR || LA329_2563 == FOR_SYMBOL || LA329_2563 == FROM_SYMBOL || ((LA329_2563 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2563 <= GREATER_THAN_OPERATOR)) || ((LA329_2563 >= GROUP_SYMBOL) && (LA329_2563 <= HAVING_SYMBOL)) || LA329_2563 == HEX_NUMBER || LA329_2563 == IDENTIFIER || LA329_2563 == INNER_SYMBOL || LA329_2563 == INTO_SYMBOL || LA329_2563 == IN_SYMBOL || LA329_2563 == IS_SYMBOL || ((LA329_2563 >= JOIN_SYMBOL) && (LA329_2563 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2563 >= LEFT_SYMBOL) && (LA329_2563 <= LESS_THAN_OPERATOR)) || ((LA329_2563 >= LIKE_SYMBOL) && (LA329_2563 <= LIMIT_SYMBOL)) || LA329_2563 == LOCK_SYMBOL || LA329_2563 == LOGICAL_AND_OPERATOR || LA329_2563 == LOGICAL_OR_OPERATOR || LA329_2563 == MINUS_OPERATOR || ((LA329_2563 >= MOD_OPERATOR) && (LA329_2563 <= MOD_SYMBOL)) || ((LA329_2563 >= MULT_OPERATOR) && (LA329_2563 <= NATURAL_SYMBOL)) || ((LA329_2563 >= NOT_EQUAL2_OPERATOR) && (LA329_2563 <= NOT_SYMBOL)) || LA329_2563 == NULL_SAFE_EQUAL_OPERATOR || LA329_2563 == ON_SYMBOL || LA329_2563 == OPEN_PAR_SYMBOL || ((LA329_2563 >= ORDER_SYMBOL) && (LA329_2563 <= OR_SYMBOL)) || LA329_2563 == PLUS_OPERATOR || LA329_2563 == PROCEDURE_SYMBOL || LA329_2563 == REGEXP_SYMBOL || LA329_2563 == RIGHT_SYMBOL || LA329_2563 == SEMICOLON_SYMBOL || LA329_2563 == SET_SYMBOL || ((LA329_2563 >= SHIFT_LEFT_OPERATOR) && (LA329_2563 <= SHIFT_RIGHT_OPERATOR)) || LA329_2563 == SINGLE_QUOTED_TEXT || LA329_2563 == STRAIGHT_JOIN_SYMBOL || LA329_2563 == UNION_SYMBOL || LA329_2563 == USING_SYMBOL || LA329_2563 == WHERE_SYMBOL || LA329_2563 == WITH_SYMBOL || LA329_2563 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2563;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1781 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2564 = LA(4);
                                        if ( (LA329_2564 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11105 = LA(5);
                                                if ( (LA329_11105 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11105 >= ACCOUNT_SYMBOL) && (LA329_11105 <= YEAR_SYMBOL)) || LA329_11105 == BACK_TICK_QUOTED_ID || LA329_11105 == DOUBLE_QUOTED_TEXT || LA329_11105 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11105;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2564 == EOF || ((LA329_2564 >= ACCOUNT_SYMBOL) && (LA329_2564 <= YEAR_SYMBOL)) || LA329_2564 == AND_SYMBOL || LA329_2564 == AS_SYMBOL || LA329_2564 == BACK_TICK_QUOTED_ID || LA329_2564 == BETWEEN_SYMBOL || LA329_2564 == BIN_NUMBER || LA329_2564 == BITWISE_AND_OPERATOR || ((LA329_2564 >= BITWISE_OR_OPERATOR) && (LA329_2564 <= BITWISE_XOR_OPERATOR)) || ((LA329_2564 >= CLOSE_CURLY_SYMBOL) && (LA329_2564 <= COLLATE_SYMBOL)) || LA329_2564 == COMMA_SYMBOL || LA329_2564 == CONCAT_PIPES_SYMBOL || LA329_2564 == CROSS_SYMBOL || ((LA329_2564 >= DIV_OPERATOR) && (LA329_2564 <= DIV_SYMBOL)) || LA329_2564 == DOUBLE_QUOTED_TEXT || LA329_2564 == EQUAL_OPERATOR || LA329_2564 == FOR_SYMBOL || LA329_2564 == FROM_SYMBOL || ((LA329_2564 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2564 <= GREATER_THAN_OPERATOR)) || ((LA329_2564 >= GROUP_SYMBOL) && (LA329_2564 <= HAVING_SYMBOL)) || LA329_2564 == HEX_NUMBER || LA329_2564 == IDENTIFIER || LA329_2564 == INNER_SYMBOL || LA329_2564 == INTO_SYMBOL || LA329_2564 == IN_SYMBOL || LA329_2564 == IS_SYMBOL || ((LA329_2564 >= JOIN_SYMBOL) && (LA329_2564 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2564 >= LEFT_SYMBOL) && (LA329_2564 <= LESS_THAN_OPERATOR)) || ((LA329_2564 >= LIKE_SYMBOL) && (LA329_2564 <= LIMIT_SYMBOL)) || LA329_2564 == LOCK_SYMBOL || LA329_2564 == LOGICAL_AND_OPERATOR || LA329_2564 == LOGICAL_OR_OPERATOR || LA329_2564 == MINUS_OPERATOR || ((LA329_2564 >= MOD_OPERATOR) && (LA329_2564 <= MOD_SYMBOL)) || ((LA329_2564 >= MULT_OPERATOR) && (LA329_2564 <= NATURAL_SYMBOL)) || ((LA329_2564 >= NOT_EQUAL2_OPERATOR) && (LA329_2564 <= NOT_SYMBOL)) || LA329_2564 == NULL_SAFE_EQUAL_OPERATOR || LA329_2564 == ON_SYMBOL || LA329_2564 == OPEN_PAR_SYMBOL || ((LA329_2564 >= ORDER_SYMBOL) && (LA329_2564 <= OR_SYMBOL)) || LA329_2564 == PLUS_OPERATOR || LA329_2564 == PROCEDURE_SYMBOL || LA329_2564 == REGEXP_SYMBOL || LA329_2564 == RIGHT_SYMBOL || LA329_2564 == SEMICOLON_SYMBOL || LA329_2564 == SET_SYMBOL || ((LA329_2564 >= SHIFT_LEFT_OPERATOR) && (LA329_2564 <= SHIFT_RIGHT_OPERATOR)) || LA329_2564 == SINGLE_QUOTED_TEXT || LA329_2564 == STRAIGHT_JOIN_SYMBOL || LA329_2564 == UNION_SYMBOL || LA329_2564 == USING_SYMBOL || LA329_2564 == WHERE_SYMBOL || LA329_2564 == WITH_SYMBOL || LA329_2564 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2564;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1781 >= ACTION_SYMBOL) && (LA329_1781 <= SHARE_SYMBOL)) || ((LA329_1781 >= SLOW_SYMBOL) && (LA329_1781 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2565 = LA(4);
                                        if ( (LA329_2565 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11159 = LA(5);
                                                if ( (LA329_11159 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11159 >= ACCOUNT_SYMBOL) && (LA329_11159 <= YEAR_SYMBOL)) || LA329_11159 == BACK_TICK_QUOTED_ID || LA329_11159 == DOUBLE_QUOTED_TEXT || LA329_11159 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11159;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2565 == EOF || ((LA329_2565 >= ACCOUNT_SYMBOL) && (LA329_2565 <= YEAR_SYMBOL)) || LA329_2565 == AND_SYMBOL || LA329_2565 == AS_SYMBOL || LA329_2565 == BACK_TICK_QUOTED_ID || LA329_2565 == BETWEEN_SYMBOL || LA329_2565 == BIN_NUMBER || LA329_2565 == BITWISE_AND_OPERATOR || ((LA329_2565 >= BITWISE_OR_OPERATOR) && (LA329_2565 <= BITWISE_XOR_OPERATOR)) || ((LA329_2565 >= CLOSE_CURLY_SYMBOL) && (LA329_2565 <= COLLATE_SYMBOL)) || LA329_2565 == COMMA_SYMBOL || LA329_2565 == CONCAT_PIPES_SYMBOL || LA329_2565 == CROSS_SYMBOL || ((LA329_2565 >= DIV_OPERATOR) && (LA329_2565 <= DIV_SYMBOL)) || LA329_2565 == DOUBLE_QUOTED_TEXT || LA329_2565 == EQUAL_OPERATOR || LA329_2565 == FOR_SYMBOL || LA329_2565 == FROM_SYMBOL || ((LA329_2565 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2565 <= GREATER_THAN_OPERATOR)) || ((LA329_2565 >= GROUP_SYMBOL) && (LA329_2565 <= HAVING_SYMBOL)) || LA329_2565 == HEX_NUMBER || LA329_2565 == IDENTIFIER || LA329_2565 == INNER_SYMBOL || LA329_2565 == INTO_SYMBOL || LA329_2565 == IN_SYMBOL || LA329_2565 == IS_SYMBOL || ((LA329_2565 >= JOIN_SYMBOL) && (LA329_2565 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2565 >= LEFT_SYMBOL) && (LA329_2565 <= LESS_THAN_OPERATOR)) || ((LA329_2565 >= LIKE_SYMBOL) && (LA329_2565 <= LIMIT_SYMBOL)) || LA329_2565 == LOCK_SYMBOL || LA329_2565 == LOGICAL_AND_OPERATOR || LA329_2565 == LOGICAL_OR_OPERATOR || LA329_2565 == MINUS_OPERATOR || ((LA329_2565 >= MOD_OPERATOR) && (LA329_2565 <= MOD_SYMBOL)) || ((LA329_2565 >= MULT_OPERATOR) && (LA329_2565 <= NATURAL_SYMBOL)) || ((LA329_2565 >= NOT_EQUAL2_OPERATOR) && (LA329_2565 <= NOT_SYMBOL)) || LA329_2565 == NULL_SAFE_EQUAL_OPERATOR || LA329_2565 == ON_SYMBOL || LA329_2565 == OPEN_PAR_SYMBOL || ((LA329_2565 >= ORDER_SYMBOL) && (LA329_2565 <= OR_SYMBOL)) || LA329_2565 == PLUS_OPERATOR || LA329_2565 == PROCEDURE_SYMBOL || LA329_2565 == REGEXP_SYMBOL || LA329_2565 == RIGHT_SYMBOL || LA329_2565 == SEMICOLON_SYMBOL || LA329_2565 == SET_SYMBOL || ((LA329_2565 >= SHIFT_LEFT_OPERATOR) && (LA329_2565 <= SHIFT_RIGHT_OPERATOR)) || LA329_2565 == SINGLE_QUOTED_TEXT || LA329_2565 == STRAIGHT_JOIN_SYMBOL || LA329_2565 == UNION_SYMBOL || LA329_2565 == USING_SYMBOL || LA329_2565 == WHERE_SYMBOL || LA329_2565 == WITH_SYMBOL || LA329_2565 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2565;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1781 >= ACCOUNT_SYMBOL) && (LA329_1781 <= XA_SYMBOL)) || LA329_1781 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2566 = LA(4);
                                        if ( (LA329_2566 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11213 = LA(5);
                                                if ( (LA329_11213 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11213 >= ACCOUNT_SYMBOL) && (LA329_11213 <= YEAR_SYMBOL)) || LA329_11213 == BACK_TICK_QUOTED_ID || LA329_11213 == DOUBLE_QUOTED_TEXT || LA329_11213 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11213;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2566 == EOF || ((LA329_2566 >= ACCOUNT_SYMBOL) && (LA329_2566 <= YEAR_SYMBOL)) || LA329_2566 == AND_SYMBOL || LA329_2566 == AS_SYMBOL || LA329_2566 == BACK_TICK_QUOTED_ID || LA329_2566 == BETWEEN_SYMBOL || LA329_2566 == BIN_NUMBER || LA329_2566 == BITWISE_AND_OPERATOR || ((LA329_2566 >= BITWISE_OR_OPERATOR) && (LA329_2566 <= BITWISE_XOR_OPERATOR)) || ((LA329_2566 >= CLOSE_CURLY_SYMBOL) && (LA329_2566 <= COLLATE_SYMBOL)) || LA329_2566 == COMMA_SYMBOL || LA329_2566 == CONCAT_PIPES_SYMBOL || LA329_2566 == CROSS_SYMBOL || ((LA329_2566 >= DIV_OPERATOR) && (LA329_2566 <= DIV_SYMBOL)) || LA329_2566 == DOUBLE_QUOTED_TEXT || LA329_2566 == EQUAL_OPERATOR || LA329_2566 == FOR_SYMBOL || LA329_2566 == FROM_SYMBOL || ((LA329_2566 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2566 <= GREATER_THAN_OPERATOR)) || ((LA329_2566 >= GROUP_SYMBOL) && (LA329_2566 <= HAVING_SYMBOL)) || LA329_2566 == HEX_NUMBER || LA329_2566 == IDENTIFIER || LA329_2566 == INNER_SYMBOL || LA329_2566 == INTO_SYMBOL || LA329_2566 == IN_SYMBOL || LA329_2566 == IS_SYMBOL || ((LA329_2566 >= JOIN_SYMBOL) && (LA329_2566 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2566 >= LEFT_SYMBOL) && (LA329_2566 <= LESS_THAN_OPERATOR)) || ((LA329_2566 >= LIKE_SYMBOL) && (LA329_2566 <= LIMIT_SYMBOL)) || LA329_2566 == LOCK_SYMBOL || LA329_2566 == LOGICAL_AND_OPERATOR || LA329_2566 == LOGICAL_OR_OPERATOR || LA329_2566 == MINUS_OPERATOR || ((LA329_2566 >= MOD_OPERATOR) && (LA329_2566 <= MOD_SYMBOL)) || ((LA329_2566 >= MULT_OPERATOR) && (LA329_2566 <= NATURAL_SYMBOL)) || ((LA329_2566 >= NOT_EQUAL2_OPERATOR) && (LA329_2566 <= NOT_SYMBOL)) || LA329_2566 == NULL_SAFE_EQUAL_OPERATOR || LA329_2566 == ON_SYMBOL || LA329_2566 == OPEN_PAR_SYMBOL || ((LA329_2566 >= ORDER_SYMBOL) && (LA329_2566 <= OR_SYMBOL)) || LA329_2566 == PLUS_OPERATOR || LA329_2566 == PROCEDURE_SYMBOL || LA329_2566 == REGEXP_SYMBOL || LA329_2566 == RIGHT_SYMBOL || LA329_2566 == SEMICOLON_SYMBOL || LA329_2566 == SET_SYMBOL || ((LA329_2566 >= SHIFT_LEFT_OPERATOR) && (LA329_2566 <= SHIFT_RIGHT_OPERATOR)) || LA329_2566 == SINGLE_QUOTED_TEXT || LA329_2566 == STRAIGHT_JOIN_SYMBOL || LA329_2566 == UNION_SYMBOL || LA329_2566 == USING_SYMBOL || LA329_2566 == WHERE_SYMBOL || LA329_2566 == WITH_SYMBOL || LA329_2566 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2566;


                                            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  = 329;
                                    EXCEPTION->state        = 1781;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_67 == EOF || ((LA329_67 >= ACCOUNT_SYMBOL) && (LA329_67 <= YEAR_SYMBOL)) || LA329_67 == AND_SYMBOL || LA329_67 == AS_SYMBOL || LA329_67 == BACK_TICK_QUOTED_ID || LA329_67 == BETWEEN_SYMBOL || LA329_67 == BIN_NUMBER || LA329_67 == BITWISE_AND_OPERATOR || ((LA329_67 >= BITWISE_OR_OPERATOR) && (LA329_67 <= BITWISE_XOR_OPERATOR)) || ((LA329_67 >= CLOSE_CURLY_SYMBOL) && (LA329_67 <= COLLATE_SYMBOL)) || LA329_67 == COMMA_SYMBOL || LA329_67 == CONCAT_PIPES_SYMBOL || LA329_67 == CROSS_SYMBOL || ((LA329_67 >= DIV_OPERATOR) && (LA329_67 <= DIV_SYMBOL)) || LA329_67 == DOUBLE_QUOTED_TEXT || LA329_67 == EQUAL_OPERATOR || LA329_67 == FOR_SYMBOL || LA329_67 == FROM_SYMBOL || ((LA329_67 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_67 <= GREATER_THAN_OPERATOR)) || ((LA329_67 >= GROUP_SYMBOL) && (LA329_67 <= HAVING_SYMBOL)) || LA329_67 == HEX_NUMBER || LA329_67 == IDENTIFIER || LA329_67 == INNER_SYMBOL || LA329_67 == INTO_SYMBOL || LA329_67 == IN_SYMBOL || LA329_67 == IS_SYMBOL || ((LA329_67 >= JOIN_SYMBOL) && (LA329_67 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_67 >= LEFT_SYMBOL) && (LA329_67 <= LESS_THAN_OPERATOR)) || ((LA329_67 >= LIKE_SYMBOL) && (LA329_67 <= LIMIT_SYMBOL)) || LA329_67 == LOCK_SYMBOL || LA329_67 == LOGICAL_AND_OPERATOR || LA329_67 == LOGICAL_OR_OPERATOR || LA329_67 == MINUS_OPERATOR || ((LA329_67 >= MOD_OPERATOR) && (LA329_67 <= MOD_SYMBOL)) || ((LA329_67 >= MULT_OPERATOR) && (LA329_67 <= NATURAL_SYMBOL)) || ((LA329_67 >= NOT_EQUAL2_OPERATOR) && (LA329_67 <= NOT_SYMBOL)) || LA329_67 == NULL_SAFE_EQUAL_OPERATOR || LA329_67 == ON_SYMBOL || LA329_67 == OPEN_PAR_SYMBOL || ((LA329_67 >= ORDER_SYMBOL) && (LA329_67 <= OR_SYMBOL)) || LA329_67 == PLUS_OPERATOR || LA329_67 == PROCEDURE_SYMBOL || LA329_67 == REGEXP_SYMBOL || LA329_67 == RIGHT_SYMBOL || LA329_67 == SEMICOLON_SYMBOL || LA329_67 == SET_SYMBOL || ((LA329_67 >= SHIFT_LEFT_OPERATOR) && (LA329_67 <= SHIFT_RIGHT_OPERATOR)) || LA329_67 == SINGLE_QUOTED_TEXT || LA329_67 == STRAIGHT_JOIN_SYMBOL || LA329_67 == UNION_SYMBOL || LA329_67 == USING_SYMBOL || LA329_67 == WHERE_SYMBOL || LA329_67 == WITH_SYMBOL || LA329_67 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 67;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == LINESTRING_SYMBOL))
                {
                    {
                        int LA329_68 = LA(2);
                        if ( (LA329_68 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1835 = LA(3);
                                if ( (LA329_1835 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1835 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2568 = LA(4);
                                        if ( (LA329_2568 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11267 = LA(5);
                                                if ( (LA329_11267 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11267 >= ACCOUNT_SYMBOL) && (LA329_11267 <= YEAR_SYMBOL)) || LA329_11267 == BACK_TICK_QUOTED_ID || LA329_11267 == DOUBLE_QUOTED_TEXT || LA329_11267 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11267;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2568 == EOF || ((LA329_2568 >= ACCOUNT_SYMBOL) && (LA329_2568 <= YEAR_SYMBOL)) || LA329_2568 == AND_SYMBOL || LA329_2568 == AS_SYMBOL || LA329_2568 == BACK_TICK_QUOTED_ID || LA329_2568 == BETWEEN_SYMBOL || LA329_2568 == BIN_NUMBER || LA329_2568 == BITWISE_AND_OPERATOR || ((LA329_2568 >= BITWISE_OR_OPERATOR) && (LA329_2568 <= BITWISE_XOR_OPERATOR)) || ((LA329_2568 >= CLOSE_CURLY_SYMBOL) && (LA329_2568 <= COLLATE_SYMBOL)) || LA329_2568 == COMMA_SYMBOL || LA329_2568 == CONCAT_PIPES_SYMBOL || LA329_2568 == CROSS_SYMBOL || ((LA329_2568 >= DIV_OPERATOR) && (LA329_2568 <= DIV_SYMBOL)) || LA329_2568 == DOUBLE_QUOTED_TEXT || LA329_2568 == EQUAL_OPERATOR || LA329_2568 == FOR_SYMBOL || LA329_2568 == FROM_SYMBOL || ((LA329_2568 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2568 <= GREATER_THAN_OPERATOR)) || ((LA329_2568 >= GROUP_SYMBOL) && (LA329_2568 <= HAVING_SYMBOL)) || LA329_2568 == HEX_NUMBER || LA329_2568 == IDENTIFIER || LA329_2568 == INNER_SYMBOL || LA329_2568 == INTO_SYMBOL || LA329_2568 == IN_SYMBOL || LA329_2568 == IS_SYMBOL || ((LA329_2568 >= JOIN_SYMBOL) && (LA329_2568 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2568 >= LEFT_SYMBOL) && (LA329_2568 <= LESS_THAN_OPERATOR)) || ((LA329_2568 >= LIKE_SYMBOL) && (LA329_2568 <= LIMIT_SYMBOL)) || LA329_2568 == LOCK_SYMBOL || LA329_2568 == LOGICAL_AND_OPERATOR || LA329_2568 == LOGICAL_OR_OPERATOR || LA329_2568 == MINUS_OPERATOR || ((LA329_2568 >= MOD_OPERATOR) && (LA329_2568 <= MOD_SYMBOL)) || ((LA329_2568 >= MULT_OPERATOR) && (LA329_2568 <= NATURAL_SYMBOL)) || ((LA329_2568 >= NOT_EQUAL2_OPERATOR) && (LA329_2568 <= NOT_SYMBOL)) || LA329_2568 == NULL_SAFE_EQUAL_OPERATOR || LA329_2568 == ON_SYMBOL || LA329_2568 == OPEN_PAR_SYMBOL || ((LA329_2568 >= ORDER_SYMBOL) && (LA329_2568 <= OR_SYMBOL)) || LA329_2568 == PLUS_OPERATOR || LA329_2568 == PROCEDURE_SYMBOL || LA329_2568 == REGEXP_SYMBOL || LA329_2568 == RIGHT_SYMBOL || LA329_2568 == SEMICOLON_SYMBOL || LA329_2568 == SET_SYMBOL || ((LA329_2568 >= SHIFT_LEFT_OPERATOR) && (LA329_2568 <= SHIFT_RIGHT_OPERATOR)) || LA329_2568 == SINGLE_QUOTED_TEXT || LA329_2568 == STRAIGHT_JOIN_SYMBOL || LA329_2568 == UNION_SYMBOL || LA329_2568 == USING_SYMBOL || LA329_2568 == WHERE_SYMBOL || LA329_2568 == WITH_SYMBOL || LA329_2568 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2568;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1835 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2569 = LA(4);
                                        if ( (LA329_2569 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11321 = LA(5);
                                                if ( (LA329_11321 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11321 >= ACCOUNT_SYMBOL) && (LA329_11321 <= YEAR_SYMBOL)) || LA329_11321 == BACK_TICK_QUOTED_ID || LA329_11321 == DOUBLE_QUOTED_TEXT || LA329_11321 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11321;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2569 == EOF || ((LA329_2569 >= ACCOUNT_SYMBOL) && (LA329_2569 <= YEAR_SYMBOL)) || LA329_2569 == AND_SYMBOL || LA329_2569 == AS_SYMBOL || LA329_2569 == BACK_TICK_QUOTED_ID || LA329_2569 == BETWEEN_SYMBOL || LA329_2569 == BIN_NUMBER || LA329_2569 == BITWISE_AND_OPERATOR || ((LA329_2569 >= BITWISE_OR_OPERATOR) && (LA329_2569 <= BITWISE_XOR_OPERATOR)) || ((LA329_2569 >= CLOSE_CURLY_SYMBOL) && (LA329_2569 <= COLLATE_SYMBOL)) || LA329_2569 == COMMA_SYMBOL || LA329_2569 == CONCAT_PIPES_SYMBOL || LA329_2569 == CROSS_SYMBOL || ((LA329_2569 >= DIV_OPERATOR) && (LA329_2569 <= DIV_SYMBOL)) || LA329_2569 == DOUBLE_QUOTED_TEXT || LA329_2569 == EQUAL_OPERATOR || LA329_2569 == FOR_SYMBOL || LA329_2569 == FROM_SYMBOL || ((LA329_2569 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2569 <= GREATER_THAN_OPERATOR)) || ((LA329_2569 >= GROUP_SYMBOL) && (LA329_2569 <= HAVING_SYMBOL)) || LA329_2569 == HEX_NUMBER || LA329_2569 == IDENTIFIER || LA329_2569 == INNER_SYMBOL || LA329_2569 == INTO_SYMBOL || LA329_2569 == IN_SYMBOL || LA329_2569 == IS_SYMBOL || ((LA329_2569 >= JOIN_SYMBOL) && (LA329_2569 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2569 >= LEFT_SYMBOL) && (LA329_2569 <= LESS_THAN_OPERATOR)) || ((LA329_2569 >= LIKE_SYMBOL) && (LA329_2569 <= LIMIT_SYMBOL)) || LA329_2569 == LOCK_SYMBOL || LA329_2569 == LOGICAL_AND_OPERATOR || LA329_2569 == LOGICAL_OR_OPERATOR || LA329_2569 == MINUS_OPERATOR || ((LA329_2569 >= MOD_OPERATOR) && (LA329_2569 <= MOD_SYMBOL)) || ((LA329_2569 >= MULT_OPERATOR) && (LA329_2569 <= NATURAL_SYMBOL)) || ((LA329_2569 >= NOT_EQUAL2_OPERATOR) && (LA329_2569 <= NOT_SYMBOL)) || LA329_2569 == NULL_SAFE_EQUAL_OPERATOR || LA329_2569 == ON_SYMBOL || LA329_2569 == OPEN_PAR_SYMBOL || ((LA329_2569 >= ORDER_SYMBOL) && (LA329_2569 <= OR_SYMBOL)) || LA329_2569 == PLUS_OPERATOR || LA329_2569 == PROCEDURE_SYMBOL || LA329_2569 == REGEXP_SYMBOL || LA329_2569 == RIGHT_SYMBOL || LA329_2569 == SEMICOLON_SYMBOL || LA329_2569 == SET_SYMBOL || ((LA329_2569 >= SHIFT_LEFT_OPERATOR) && (LA329_2569 <= SHIFT_RIGHT_OPERATOR)) || LA329_2569 == SINGLE_QUOTED_TEXT || LA329_2569 == STRAIGHT_JOIN_SYMBOL || LA329_2569 == UNION_SYMBOL || LA329_2569 == USING_SYMBOL || LA329_2569 == WHERE_SYMBOL || LA329_2569 == WITH_SYMBOL || LA329_2569 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2569;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1835 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2570 = LA(4);
                                        if ( (LA329_2570 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11375 = LA(5);
                                                if ( (LA329_11375 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11375 >= ACCOUNT_SYMBOL) && (LA329_11375 <= YEAR_SYMBOL)) || LA329_11375 == BACK_TICK_QUOTED_ID || LA329_11375 == DOUBLE_QUOTED_TEXT || LA329_11375 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11375;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2570 == EOF || ((LA329_2570 >= ACCOUNT_SYMBOL) && (LA329_2570 <= YEAR_SYMBOL)) || LA329_2570 == AND_SYMBOL || LA329_2570 == AS_SYMBOL || LA329_2570 == BACK_TICK_QUOTED_ID || LA329_2570 == BETWEEN_SYMBOL || LA329_2570 == BIN_NUMBER || LA329_2570 == BITWISE_AND_OPERATOR || ((LA329_2570 >= BITWISE_OR_OPERATOR) && (LA329_2570 <= BITWISE_XOR_OPERATOR)) || ((LA329_2570 >= CLOSE_CURLY_SYMBOL) && (LA329_2570 <= COLLATE_SYMBOL)) || LA329_2570 == COMMA_SYMBOL || LA329_2570 == CONCAT_PIPES_SYMBOL || LA329_2570 == CROSS_SYMBOL || ((LA329_2570 >= DIV_OPERATOR) && (LA329_2570 <= DIV_SYMBOL)) || LA329_2570 == DOUBLE_QUOTED_TEXT || LA329_2570 == EQUAL_OPERATOR || LA329_2570 == FOR_SYMBOL || LA329_2570 == FROM_SYMBOL || ((LA329_2570 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2570 <= GREATER_THAN_OPERATOR)) || ((LA329_2570 >= GROUP_SYMBOL) && (LA329_2570 <= HAVING_SYMBOL)) || LA329_2570 == HEX_NUMBER || LA329_2570 == IDENTIFIER || LA329_2570 == INNER_SYMBOL || LA329_2570 == INTO_SYMBOL || LA329_2570 == IN_SYMBOL || LA329_2570 == IS_SYMBOL || ((LA329_2570 >= JOIN_SYMBOL) && (LA329_2570 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2570 >= LEFT_SYMBOL) && (LA329_2570 <= LESS_THAN_OPERATOR)) || ((LA329_2570 >= LIKE_SYMBOL) && (LA329_2570 <= LIMIT_SYMBOL)) || LA329_2570 == LOCK_SYMBOL || LA329_2570 == LOGICAL_AND_OPERATOR || LA329_2570 == LOGICAL_OR_OPERATOR || LA329_2570 == MINUS_OPERATOR || ((LA329_2570 >= MOD_OPERATOR) && (LA329_2570 <= MOD_SYMBOL)) || ((LA329_2570 >= MULT_OPERATOR) && (LA329_2570 <= NATURAL_SYMBOL)) || ((LA329_2570 >= NOT_EQUAL2_OPERATOR) && (LA329_2570 <= NOT_SYMBOL)) || LA329_2570 == NULL_SAFE_EQUAL_OPERATOR || LA329_2570 == ON_SYMBOL || LA329_2570 == OPEN_PAR_SYMBOL || ((LA329_2570 >= ORDER_SYMBOL) && (LA329_2570 <= OR_SYMBOL)) || LA329_2570 == PLUS_OPERATOR || LA329_2570 == PROCEDURE_SYMBOL || LA329_2570 == REGEXP_SYMBOL || LA329_2570 == RIGHT_SYMBOL || LA329_2570 == SEMICOLON_SYMBOL || LA329_2570 == SET_SYMBOL || ((LA329_2570 >= SHIFT_LEFT_OPERATOR) && (LA329_2570 <= SHIFT_RIGHT_OPERATOR)) || LA329_2570 == SINGLE_QUOTED_TEXT || LA329_2570 == STRAIGHT_JOIN_SYMBOL || LA329_2570 == UNION_SYMBOL || LA329_2570 == USING_SYMBOL || LA329_2570 == WHERE_SYMBOL || LA329_2570 == WITH_SYMBOL || LA329_2570 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2570;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1835 >= ACTION_SYMBOL) && (LA329_1835 <= SHARE_SYMBOL)) || ((LA329_1835 >= SLOW_SYMBOL) && (LA329_1835 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2571 = LA(4);
                                        if ( (LA329_2571 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11429 = LA(5);
                                                if ( (LA329_11429 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11429 >= ACCOUNT_SYMBOL) && (LA329_11429 <= YEAR_SYMBOL)) || LA329_11429 == BACK_TICK_QUOTED_ID || LA329_11429 == DOUBLE_QUOTED_TEXT || LA329_11429 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11429;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2571 == EOF || ((LA329_2571 >= ACCOUNT_SYMBOL) && (LA329_2571 <= YEAR_SYMBOL)) || LA329_2571 == AND_SYMBOL || LA329_2571 == AS_SYMBOL || LA329_2571 == BACK_TICK_QUOTED_ID || LA329_2571 == BETWEEN_SYMBOL || LA329_2571 == BIN_NUMBER || LA329_2571 == BITWISE_AND_OPERATOR || ((LA329_2571 >= BITWISE_OR_OPERATOR) && (LA329_2571 <= BITWISE_XOR_OPERATOR)) || ((LA329_2571 >= CLOSE_CURLY_SYMBOL) && (LA329_2571 <= COLLATE_SYMBOL)) || LA329_2571 == COMMA_SYMBOL || LA329_2571 == CONCAT_PIPES_SYMBOL || LA329_2571 == CROSS_SYMBOL || ((LA329_2571 >= DIV_OPERATOR) && (LA329_2571 <= DIV_SYMBOL)) || LA329_2571 == DOUBLE_QUOTED_TEXT || LA329_2571 == EQUAL_OPERATOR || LA329_2571 == FOR_SYMBOL || LA329_2571 == FROM_SYMBOL || ((LA329_2571 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2571 <= GREATER_THAN_OPERATOR)) || ((LA329_2571 >= GROUP_SYMBOL) && (LA329_2571 <= HAVING_SYMBOL)) || LA329_2571 == HEX_NUMBER || LA329_2571 == IDENTIFIER || LA329_2571 == INNER_SYMBOL || LA329_2571 == INTO_SYMBOL || LA329_2571 == IN_SYMBOL || LA329_2571 == IS_SYMBOL || ((LA329_2571 >= JOIN_SYMBOL) && (LA329_2571 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2571 >= LEFT_SYMBOL) && (LA329_2571 <= LESS_THAN_OPERATOR)) || ((LA329_2571 >= LIKE_SYMBOL) && (LA329_2571 <= LIMIT_SYMBOL)) || LA329_2571 == LOCK_SYMBOL || LA329_2571 == LOGICAL_AND_OPERATOR || LA329_2571 == LOGICAL_OR_OPERATOR || LA329_2571 == MINUS_OPERATOR || ((LA329_2571 >= MOD_OPERATOR) && (LA329_2571 <= MOD_SYMBOL)) || ((LA329_2571 >= MULT_OPERATOR) && (LA329_2571 <= NATURAL_SYMBOL)) || ((LA329_2571 >= NOT_EQUAL2_OPERATOR) && (LA329_2571 <= NOT_SYMBOL)) || LA329_2571 == NULL_SAFE_EQUAL_OPERATOR || LA329_2571 == ON_SYMBOL || LA329_2571 == OPEN_PAR_SYMBOL || ((LA329_2571 >= ORDER_SYMBOL) && (LA329_2571 <= OR_SYMBOL)) || LA329_2571 == PLUS_OPERATOR || LA329_2571 == PROCEDURE_SYMBOL || LA329_2571 == REGEXP_SYMBOL || LA329_2571 == RIGHT_SYMBOL || LA329_2571 == SEMICOLON_SYMBOL || LA329_2571 == SET_SYMBOL || ((LA329_2571 >= SHIFT_LEFT_OPERATOR) && (LA329_2571 <= SHIFT_RIGHT_OPERATOR)) || LA329_2571 == SINGLE_QUOTED_TEXT || LA329_2571 == STRAIGHT_JOIN_SYMBOL || LA329_2571 == UNION_SYMBOL || LA329_2571 == USING_SYMBOL || LA329_2571 == WHERE_SYMBOL || LA329_2571 == WITH_SYMBOL || LA329_2571 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2571;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1835 >= ACCOUNT_SYMBOL) && (LA329_1835 <= XA_SYMBOL)) || LA329_1835 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2572 = LA(4);
                                        if ( (LA329_2572 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11483 = LA(5);
                                                if ( (LA329_11483 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11483 >= ACCOUNT_SYMBOL) && (LA329_11483 <= YEAR_SYMBOL)) || LA329_11483 == BACK_TICK_QUOTED_ID || LA329_11483 == DOUBLE_QUOTED_TEXT || LA329_11483 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11483;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2572 == EOF || ((LA329_2572 >= ACCOUNT_SYMBOL) && (LA329_2572 <= YEAR_SYMBOL)) || LA329_2572 == AND_SYMBOL || LA329_2572 == AS_SYMBOL || LA329_2572 == BACK_TICK_QUOTED_ID || LA329_2572 == BETWEEN_SYMBOL || LA329_2572 == BIN_NUMBER || LA329_2572 == BITWISE_AND_OPERATOR || ((LA329_2572 >= BITWISE_OR_OPERATOR) && (LA329_2572 <= BITWISE_XOR_OPERATOR)) || ((LA329_2572 >= CLOSE_CURLY_SYMBOL) && (LA329_2572 <= COLLATE_SYMBOL)) || LA329_2572 == COMMA_SYMBOL || LA329_2572 == CONCAT_PIPES_SYMBOL || LA329_2572 == CROSS_SYMBOL || ((LA329_2572 >= DIV_OPERATOR) && (LA329_2572 <= DIV_SYMBOL)) || LA329_2572 == DOUBLE_QUOTED_TEXT || LA329_2572 == EQUAL_OPERATOR || LA329_2572 == FOR_SYMBOL || LA329_2572 == FROM_SYMBOL || ((LA329_2572 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2572 <= GREATER_THAN_OPERATOR)) || ((LA329_2572 >= GROUP_SYMBOL) && (LA329_2572 <= HAVING_SYMBOL)) || LA329_2572 == HEX_NUMBER || LA329_2572 == IDENTIFIER || LA329_2572 == INNER_SYMBOL || LA329_2572 == INTO_SYMBOL || LA329_2572 == IN_SYMBOL || LA329_2572 == IS_SYMBOL || ((LA329_2572 >= JOIN_SYMBOL) && (LA329_2572 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2572 >= LEFT_SYMBOL) && (LA329_2572 <= LESS_THAN_OPERATOR)) || ((LA329_2572 >= LIKE_SYMBOL) && (LA329_2572 <= LIMIT_SYMBOL)) || LA329_2572 == LOCK_SYMBOL || LA329_2572 == LOGICAL_AND_OPERATOR || LA329_2572 == LOGICAL_OR_OPERATOR || LA329_2572 == MINUS_OPERATOR || ((LA329_2572 >= MOD_OPERATOR) && (LA329_2572 <= MOD_SYMBOL)) || ((LA329_2572 >= MULT_OPERATOR) && (LA329_2572 <= NATURAL_SYMBOL)) || ((LA329_2572 >= NOT_EQUAL2_OPERATOR) && (LA329_2572 <= NOT_SYMBOL)) || LA329_2572 == NULL_SAFE_EQUAL_OPERATOR || LA329_2572 == ON_SYMBOL || LA329_2572 == OPEN_PAR_SYMBOL || ((LA329_2572 >= ORDER_SYMBOL) && (LA329_2572 <= OR_SYMBOL)) || LA329_2572 == PLUS_OPERATOR || LA329_2572 == PROCEDURE_SYMBOL || LA329_2572 == REGEXP_SYMBOL || LA329_2572 == RIGHT_SYMBOL || LA329_2572 == SEMICOLON_SYMBOL || LA329_2572 == SET_SYMBOL || ((LA329_2572 >= SHIFT_LEFT_OPERATOR) && (LA329_2572 <= SHIFT_RIGHT_OPERATOR)) || LA329_2572 == SINGLE_QUOTED_TEXT || LA329_2572 == STRAIGHT_JOIN_SYMBOL || LA329_2572 == UNION_SYMBOL || LA329_2572 == USING_SYMBOL || LA329_2572 == WHERE_SYMBOL || LA329_2572 == WITH_SYMBOL || LA329_2572 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2572;


                                            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  = 329;
                                    EXCEPTION->state        = 1835;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_68 == EOF || ((LA329_68 >= ACCOUNT_SYMBOL) && (LA329_68 <= YEAR_SYMBOL)) || LA329_68 == AND_SYMBOL || LA329_68 == AS_SYMBOL || LA329_68 == BACK_TICK_QUOTED_ID || LA329_68 == BETWEEN_SYMBOL || LA329_68 == BIN_NUMBER || LA329_68 == BITWISE_AND_OPERATOR || ((LA329_68 >= BITWISE_OR_OPERATOR) && (LA329_68 <= BITWISE_XOR_OPERATOR)) || ((LA329_68 >= CLOSE_CURLY_SYMBOL) && (LA329_68 <= COLLATE_SYMBOL)) || LA329_68 == COMMA_SYMBOL || LA329_68 == CONCAT_PIPES_SYMBOL || LA329_68 == CROSS_SYMBOL || ((LA329_68 >= DIV_OPERATOR) && (LA329_68 <= DIV_SYMBOL)) || LA329_68 == DOUBLE_QUOTED_TEXT || LA329_68 == EQUAL_OPERATOR || LA329_68 == FOR_SYMBOL || LA329_68 == FROM_SYMBOL || ((LA329_68 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_68 <= GREATER_THAN_OPERATOR)) || ((LA329_68 >= GROUP_SYMBOL) && (LA329_68 <= HAVING_SYMBOL)) || LA329_68 == HEX_NUMBER || LA329_68 == IDENTIFIER || LA329_68 == INNER_SYMBOL || LA329_68 == INTO_SYMBOL || LA329_68 == IN_SYMBOL || LA329_68 == IS_SYMBOL || ((LA329_68 >= JOIN_SYMBOL) && (LA329_68 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_68 >= LEFT_SYMBOL) && (LA329_68 <= LESS_THAN_OPERATOR)) || ((LA329_68 >= LIKE_SYMBOL) && (LA329_68 <= LIMIT_SYMBOL)) || LA329_68 == LOCK_SYMBOL || LA329_68 == LOGICAL_AND_OPERATOR || LA329_68 == LOGICAL_OR_OPERATOR || LA329_68 == MINUS_OPERATOR || ((LA329_68 >= MOD_OPERATOR) && (LA329_68 <= MOD_SYMBOL)) || ((LA329_68 >= MULT_OPERATOR) && (LA329_68 <= NATURAL_SYMBOL)) || ((LA329_68 >= NOT_EQUAL2_OPERATOR) && (LA329_68 <= NOT_SYMBOL)) || LA329_68 == NULL_SAFE_EQUAL_OPERATOR || LA329_68 == ON_SYMBOL || LA329_68 == OPEN_PAR_SYMBOL || ((LA329_68 >= ORDER_SYMBOL) && (LA329_68 <= OR_SYMBOL)) || LA329_68 == PLUS_OPERATOR || LA329_68 == PROCEDURE_SYMBOL || LA329_68 == REGEXP_SYMBOL || LA329_68 == RIGHT_SYMBOL || LA329_68 == SEMICOLON_SYMBOL || LA329_68 == SET_SYMBOL || ((LA329_68 >= SHIFT_LEFT_OPERATOR) && (LA329_68 <= SHIFT_RIGHT_OPERATOR)) || LA329_68 == SINGLE_QUOTED_TEXT || LA329_68 == STRAIGHT_JOIN_SYMBOL || LA329_68 == UNION_SYMBOL || LA329_68 == USING_SYMBOL || LA329_68 == WHERE_SYMBOL || LA329_68 == WITH_SYMBOL || LA329_68 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 68;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == MULTILINESTRING_SYMBOL))
                {
                    {
                        int LA329_69 = LA(2);
                        if ( (LA329_69 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1889 = LA(3);
                                if ( (LA329_1889 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1889 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2574 = LA(4);
                                        if ( (LA329_2574 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11537 = LA(5);
                                                if ( (LA329_11537 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11537 >= ACCOUNT_SYMBOL) && (LA329_11537 <= YEAR_SYMBOL)) || LA329_11537 == BACK_TICK_QUOTED_ID || LA329_11537 == DOUBLE_QUOTED_TEXT || LA329_11537 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11537;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2574 == EOF || ((LA329_2574 >= ACCOUNT_SYMBOL) && (LA329_2574 <= YEAR_SYMBOL)) || LA329_2574 == AND_SYMBOL || LA329_2574 == AS_SYMBOL || LA329_2574 == BACK_TICK_QUOTED_ID || LA329_2574 == BETWEEN_SYMBOL || LA329_2574 == BIN_NUMBER || LA329_2574 == BITWISE_AND_OPERATOR || ((LA329_2574 >= BITWISE_OR_OPERATOR) && (LA329_2574 <= BITWISE_XOR_OPERATOR)) || ((LA329_2574 >= CLOSE_CURLY_SYMBOL) && (LA329_2574 <= COLLATE_SYMBOL)) || LA329_2574 == COMMA_SYMBOL || LA329_2574 == CONCAT_PIPES_SYMBOL || LA329_2574 == CROSS_SYMBOL || ((LA329_2574 >= DIV_OPERATOR) && (LA329_2574 <= DIV_SYMBOL)) || LA329_2574 == DOUBLE_QUOTED_TEXT || LA329_2574 == EQUAL_OPERATOR || LA329_2574 == FOR_SYMBOL || LA329_2574 == FROM_SYMBOL || ((LA329_2574 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2574 <= GREATER_THAN_OPERATOR)) || ((LA329_2574 >= GROUP_SYMBOL) && (LA329_2574 <= HAVING_SYMBOL)) || LA329_2574 == HEX_NUMBER || LA329_2574 == IDENTIFIER || LA329_2574 == INNER_SYMBOL || LA329_2574 == INTO_SYMBOL || LA329_2574 == IN_SYMBOL || LA329_2574 == IS_SYMBOL || ((LA329_2574 >= JOIN_SYMBOL) && (LA329_2574 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2574 >= LEFT_SYMBOL) && (LA329_2574 <= LESS_THAN_OPERATOR)) || ((LA329_2574 >= LIKE_SYMBOL) && (LA329_2574 <= LIMIT_SYMBOL)) || LA329_2574 == LOCK_SYMBOL || LA329_2574 == LOGICAL_AND_OPERATOR || LA329_2574 == LOGICAL_OR_OPERATOR || LA329_2574 == MINUS_OPERATOR || ((LA329_2574 >= MOD_OPERATOR) && (LA329_2574 <= MOD_SYMBOL)) || ((LA329_2574 >= MULT_OPERATOR) && (LA329_2574 <= NATURAL_SYMBOL)) || ((LA329_2574 >= NOT_EQUAL2_OPERATOR) && (LA329_2574 <= NOT_SYMBOL)) || LA329_2574 == NULL_SAFE_EQUAL_OPERATOR || LA329_2574 == ON_SYMBOL || LA329_2574 == OPEN_PAR_SYMBOL || ((LA329_2574 >= ORDER_SYMBOL) && (LA329_2574 <= OR_SYMBOL)) || LA329_2574 == PLUS_OPERATOR || LA329_2574 == PROCEDURE_SYMBOL || LA329_2574 == REGEXP_SYMBOL || LA329_2574 == RIGHT_SYMBOL || LA329_2574 == SEMICOLON_SYMBOL || LA329_2574 == SET_SYMBOL || ((LA329_2574 >= SHIFT_LEFT_OPERATOR) && (LA329_2574 <= SHIFT_RIGHT_OPERATOR)) || LA329_2574 == SINGLE_QUOTED_TEXT || LA329_2574 == STRAIGHT_JOIN_SYMBOL || LA329_2574 == UNION_SYMBOL || LA329_2574 == USING_SYMBOL || LA329_2574 == WHERE_SYMBOL || LA329_2574 == WITH_SYMBOL || LA329_2574 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2574;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1889 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2575 = LA(4);
                                        if ( (LA329_2575 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11591 = LA(5);
                                                if ( (LA329_11591 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11591 >= ACCOUNT_SYMBOL) && (LA329_11591 <= YEAR_SYMBOL)) || LA329_11591 == BACK_TICK_QUOTED_ID || LA329_11591 == DOUBLE_QUOTED_TEXT || LA329_11591 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11591;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2575 == EOF || ((LA329_2575 >= ACCOUNT_SYMBOL) && (LA329_2575 <= YEAR_SYMBOL)) || LA329_2575 == AND_SYMBOL || LA329_2575 == AS_SYMBOL || LA329_2575 == BACK_TICK_QUOTED_ID || LA329_2575 == BETWEEN_SYMBOL || LA329_2575 == BIN_NUMBER || LA329_2575 == BITWISE_AND_OPERATOR || ((LA329_2575 >= BITWISE_OR_OPERATOR) && (LA329_2575 <= BITWISE_XOR_OPERATOR)) || ((LA329_2575 >= CLOSE_CURLY_SYMBOL) && (LA329_2575 <= COLLATE_SYMBOL)) || LA329_2575 == COMMA_SYMBOL || LA329_2575 == CONCAT_PIPES_SYMBOL || LA329_2575 == CROSS_SYMBOL || ((LA329_2575 >= DIV_OPERATOR) && (LA329_2575 <= DIV_SYMBOL)) || LA329_2575 == DOUBLE_QUOTED_TEXT || LA329_2575 == EQUAL_OPERATOR || LA329_2575 == FOR_SYMBOL || LA329_2575 == FROM_SYMBOL || ((LA329_2575 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2575 <= GREATER_THAN_OPERATOR)) || ((LA329_2575 >= GROUP_SYMBOL) && (LA329_2575 <= HAVING_SYMBOL)) || LA329_2575 == HEX_NUMBER || LA329_2575 == IDENTIFIER || LA329_2575 == INNER_SYMBOL || LA329_2575 == INTO_SYMBOL || LA329_2575 == IN_SYMBOL || LA329_2575 == IS_SYMBOL || ((LA329_2575 >= JOIN_SYMBOL) && (LA329_2575 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2575 >= LEFT_SYMBOL) && (LA329_2575 <= LESS_THAN_OPERATOR)) || ((LA329_2575 >= LIKE_SYMBOL) && (LA329_2575 <= LIMIT_SYMBOL)) || LA329_2575 == LOCK_SYMBOL || LA329_2575 == LOGICAL_AND_OPERATOR || LA329_2575 == LOGICAL_OR_OPERATOR || LA329_2575 == MINUS_OPERATOR || ((LA329_2575 >= MOD_OPERATOR) && (LA329_2575 <= MOD_SYMBOL)) || ((LA329_2575 >= MULT_OPERATOR) && (LA329_2575 <= NATURAL_SYMBOL)) || ((LA329_2575 >= NOT_EQUAL2_OPERATOR) && (LA329_2575 <= NOT_SYMBOL)) || LA329_2575 == NULL_SAFE_EQUAL_OPERATOR || LA329_2575 == ON_SYMBOL || LA329_2575 == OPEN_PAR_SYMBOL || ((LA329_2575 >= ORDER_SYMBOL) && (LA329_2575 <= OR_SYMBOL)) || LA329_2575 == PLUS_OPERATOR || LA329_2575 == PROCEDURE_SYMBOL || LA329_2575 == REGEXP_SYMBOL || LA329_2575 == RIGHT_SYMBOL || LA329_2575 == SEMICOLON_SYMBOL || LA329_2575 == SET_SYMBOL || ((LA329_2575 >= SHIFT_LEFT_OPERATOR) && (LA329_2575 <= SHIFT_RIGHT_OPERATOR)) || LA329_2575 == SINGLE_QUOTED_TEXT || LA329_2575 == STRAIGHT_JOIN_SYMBOL || LA329_2575 == UNION_SYMBOL || LA329_2575 == USING_SYMBOL || LA329_2575 == WHERE_SYMBOL || LA329_2575 == WITH_SYMBOL || LA329_2575 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2575;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1889 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2576 = LA(4);
                                        if ( (LA329_2576 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11645 = LA(5);
                                                if ( (LA329_11645 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11645 >= ACCOUNT_SYMBOL) && (LA329_11645 <= YEAR_SYMBOL)) || LA329_11645 == BACK_TICK_QUOTED_ID || LA329_11645 == DOUBLE_QUOTED_TEXT || LA329_11645 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11645;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2576 == EOF || ((LA329_2576 >= ACCOUNT_SYMBOL) && (LA329_2576 <= YEAR_SYMBOL)) || LA329_2576 == AND_SYMBOL || LA329_2576 == AS_SYMBOL || LA329_2576 == BACK_TICK_QUOTED_ID || LA329_2576 == BETWEEN_SYMBOL || LA329_2576 == BIN_NUMBER || LA329_2576 == BITWISE_AND_OPERATOR || ((LA329_2576 >= BITWISE_OR_OPERATOR) && (LA329_2576 <= BITWISE_XOR_OPERATOR)) || ((LA329_2576 >= CLOSE_CURLY_SYMBOL) && (LA329_2576 <= COLLATE_SYMBOL)) || LA329_2576 == COMMA_SYMBOL || LA329_2576 == CONCAT_PIPES_SYMBOL || LA329_2576 == CROSS_SYMBOL || ((LA329_2576 >= DIV_OPERATOR) && (LA329_2576 <= DIV_SYMBOL)) || LA329_2576 == DOUBLE_QUOTED_TEXT || LA329_2576 == EQUAL_OPERATOR || LA329_2576 == FOR_SYMBOL || LA329_2576 == FROM_SYMBOL || ((LA329_2576 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2576 <= GREATER_THAN_OPERATOR)) || ((LA329_2576 >= GROUP_SYMBOL) && (LA329_2576 <= HAVING_SYMBOL)) || LA329_2576 == HEX_NUMBER || LA329_2576 == IDENTIFIER || LA329_2576 == INNER_SYMBOL || LA329_2576 == INTO_SYMBOL || LA329_2576 == IN_SYMBOL || LA329_2576 == IS_SYMBOL || ((LA329_2576 >= JOIN_SYMBOL) && (LA329_2576 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2576 >= LEFT_SYMBOL) && (LA329_2576 <= LESS_THAN_OPERATOR)) || ((LA329_2576 >= LIKE_SYMBOL) && (LA329_2576 <= LIMIT_SYMBOL)) || LA329_2576 == LOCK_SYMBOL || LA329_2576 == LOGICAL_AND_OPERATOR || LA329_2576 == LOGICAL_OR_OPERATOR || LA329_2576 == MINUS_OPERATOR || ((LA329_2576 >= MOD_OPERATOR) && (LA329_2576 <= MOD_SYMBOL)) || ((LA329_2576 >= MULT_OPERATOR) && (LA329_2576 <= NATURAL_SYMBOL)) || ((LA329_2576 >= NOT_EQUAL2_OPERATOR) && (LA329_2576 <= NOT_SYMBOL)) || LA329_2576 == NULL_SAFE_EQUAL_OPERATOR || LA329_2576 == ON_SYMBOL || LA329_2576 == OPEN_PAR_SYMBOL || ((LA329_2576 >= ORDER_SYMBOL) && (LA329_2576 <= OR_SYMBOL)) || LA329_2576 == PLUS_OPERATOR || LA329_2576 == PROCEDURE_SYMBOL || LA329_2576 == REGEXP_SYMBOL || LA329_2576 == RIGHT_SYMBOL || LA329_2576 == SEMICOLON_SYMBOL || LA329_2576 == SET_SYMBOL || ((LA329_2576 >= SHIFT_LEFT_OPERATOR) && (LA329_2576 <= SHIFT_RIGHT_OPERATOR)) || LA329_2576 == SINGLE_QUOTED_TEXT || LA329_2576 == STRAIGHT_JOIN_SYMBOL || LA329_2576 == UNION_SYMBOL || LA329_2576 == USING_SYMBOL || LA329_2576 == WHERE_SYMBOL || LA329_2576 == WITH_SYMBOL || LA329_2576 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2576;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1889 >= ACTION_SYMBOL) && (LA329_1889 <= SHARE_SYMBOL)) || ((LA329_1889 >= SLOW_SYMBOL) && (LA329_1889 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2577 = LA(4);
                                        if ( (LA329_2577 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11699 = LA(5);
                                                if ( (LA329_11699 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11699 >= ACCOUNT_SYMBOL) && (LA329_11699 <= YEAR_SYMBOL)) || LA329_11699 == BACK_TICK_QUOTED_ID || LA329_11699 == DOUBLE_QUOTED_TEXT || LA329_11699 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11699;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2577 == EOF || ((LA329_2577 >= ACCOUNT_SYMBOL) && (LA329_2577 <= YEAR_SYMBOL)) || LA329_2577 == AND_SYMBOL || LA329_2577 == AS_SYMBOL || LA329_2577 == BACK_TICK_QUOTED_ID || LA329_2577 == BETWEEN_SYMBOL || LA329_2577 == BIN_NUMBER || LA329_2577 == BITWISE_AND_OPERATOR || ((LA329_2577 >= BITWISE_OR_OPERATOR) && (LA329_2577 <= BITWISE_XOR_OPERATOR)) || ((LA329_2577 >= CLOSE_CURLY_SYMBOL) && (LA329_2577 <= COLLATE_SYMBOL)) || LA329_2577 == COMMA_SYMBOL || LA329_2577 == CONCAT_PIPES_SYMBOL || LA329_2577 == CROSS_SYMBOL || ((LA329_2577 >= DIV_OPERATOR) && (LA329_2577 <= DIV_SYMBOL)) || LA329_2577 == DOUBLE_QUOTED_TEXT || LA329_2577 == EQUAL_OPERATOR || LA329_2577 == FOR_SYMBOL || LA329_2577 == FROM_SYMBOL || ((LA329_2577 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2577 <= GREATER_THAN_OPERATOR)) || ((LA329_2577 >= GROUP_SYMBOL) && (LA329_2577 <= HAVING_SYMBOL)) || LA329_2577 == HEX_NUMBER || LA329_2577 == IDENTIFIER || LA329_2577 == INNER_SYMBOL || LA329_2577 == INTO_SYMBOL || LA329_2577 == IN_SYMBOL || LA329_2577 == IS_SYMBOL || ((LA329_2577 >= JOIN_SYMBOL) && (LA329_2577 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2577 >= LEFT_SYMBOL) && (LA329_2577 <= LESS_THAN_OPERATOR)) || ((LA329_2577 >= LIKE_SYMBOL) && (LA329_2577 <= LIMIT_SYMBOL)) || LA329_2577 == LOCK_SYMBOL || LA329_2577 == LOGICAL_AND_OPERATOR || LA329_2577 == LOGICAL_OR_OPERATOR || LA329_2577 == MINUS_OPERATOR || ((LA329_2577 >= MOD_OPERATOR) && (LA329_2577 <= MOD_SYMBOL)) || ((LA329_2577 >= MULT_OPERATOR) && (LA329_2577 <= NATURAL_SYMBOL)) || ((LA329_2577 >= NOT_EQUAL2_OPERATOR) && (LA329_2577 <= NOT_SYMBOL)) || LA329_2577 == NULL_SAFE_EQUAL_OPERATOR || LA329_2577 == ON_SYMBOL || LA329_2577 == OPEN_PAR_SYMBOL || ((LA329_2577 >= ORDER_SYMBOL) && (LA329_2577 <= OR_SYMBOL)) || LA329_2577 == PLUS_OPERATOR || LA329_2577 == PROCEDURE_SYMBOL || LA329_2577 == REGEXP_SYMBOL || LA329_2577 == RIGHT_SYMBOL || LA329_2577 == SEMICOLON_SYMBOL || LA329_2577 == SET_SYMBOL || ((LA329_2577 >= SHIFT_LEFT_OPERATOR) && (LA329_2577 <= SHIFT_RIGHT_OPERATOR)) || LA329_2577 == SINGLE_QUOTED_TEXT || LA329_2577 == STRAIGHT_JOIN_SYMBOL || LA329_2577 == UNION_SYMBOL || LA329_2577 == USING_SYMBOL || LA329_2577 == WHERE_SYMBOL || LA329_2577 == WITH_SYMBOL || LA329_2577 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2577;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1889 >= ACCOUNT_SYMBOL) && (LA329_1889 <= XA_SYMBOL)) || LA329_1889 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2578 = LA(4);
                                        if ( (LA329_2578 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11753 = LA(5);
                                                if ( (LA329_11753 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11753 >= ACCOUNT_SYMBOL) && (LA329_11753 <= YEAR_SYMBOL)) || LA329_11753 == BACK_TICK_QUOTED_ID || LA329_11753 == DOUBLE_QUOTED_TEXT || LA329_11753 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11753;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2578 == EOF || ((LA329_2578 >= ACCOUNT_SYMBOL) && (LA329_2578 <= YEAR_SYMBOL)) || LA329_2578 == AND_SYMBOL || LA329_2578 == AS_SYMBOL || LA329_2578 == BACK_TICK_QUOTED_ID || LA329_2578 == BETWEEN_SYMBOL || LA329_2578 == BIN_NUMBER || LA329_2578 == BITWISE_AND_OPERATOR || ((LA329_2578 >= BITWISE_OR_OPERATOR) && (LA329_2578 <= BITWISE_XOR_OPERATOR)) || ((LA329_2578 >= CLOSE_CURLY_SYMBOL) && (LA329_2578 <= COLLATE_SYMBOL)) || LA329_2578 == COMMA_SYMBOL || LA329_2578 == CONCAT_PIPES_SYMBOL || LA329_2578 == CROSS_SYMBOL || ((LA329_2578 >= DIV_OPERATOR) && (LA329_2578 <= DIV_SYMBOL)) || LA329_2578 == DOUBLE_QUOTED_TEXT || LA329_2578 == EQUAL_OPERATOR || LA329_2578 == FOR_SYMBOL || LA329_2578 == FROM_SYMBOL || ((LA329_2578 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2578 <= GREATER_THAN_OPERATOR)) || ((LA329_2578 >= GROUP_SYMBOL) && (LA329_2578 <= HAVING_SYMBOL)) || LA329_2578 == HEX_NUMBER || LA329_2578 == IDENTIFIER || LA329_2578 == INNER_SYMBOL || LA329_2578 == INTO_SYMBOL || LA329_2578 == IN_SYMBOL || LA329_2578 == IS_SYMBOL || ((LA329_2578 >= JOIN_SYMBOL) && (LA329_2578 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2578 >= LEFT_SYMBOL) && (LA329_2578 <= LESS_THAN_OPERATOR)) || ((LA329_2578 >= LIKE_SYMBOL) && (LA329_2578 <= LIMIT_SYMBOL)) || LA329_2578 == LOCK_SYMBOL || LA329_2578 == LOGICAL_AND_OPERATOR || LA329_2578 == LOGICAL_OR_OPERATOR || LA329_2578 == MINUS_OPERATOR || ((LA329_2578 >= MOD_OPERATOR) && (LA329_2578 <= MOD_SYMBOL)) || ((LA329_2578 >= MULT_OPERATOR) && (LA329_2578 <= NATURAL_SYMBOL)) || ((LA329_2578 >= NOT_EQUAL2_OPERATOR) && (LA329_2578 <= NOT_SYMBOL)) || LA329_2578 == NULL_SAFE_EQUAL_OPERATOR || LA329_2578 == ON_SYMBOL || LA329_2578 == OPEN_PAR_SYMBOL || ((LA329_2578 >= ORDER_SYMBOL) && (LA329_2578 <= OR_SYMBOL)) || LA329_2578 == PLUS_OPERATOR || LA329_2578 == PROCEDURE_SYMBOL || LA329_2578 == REGEXP_SYMBOL || LA329_2578 == RIGHT_SYMBOL || LA329_2578 == SEMICOLON_SYMBOL || LA329_2578 == SET_SYMBOL || ((LA329_2578 >= SHIFT_LEFT_OPERATOR) && (LA329_2578 <= SHIFT_RIGHT_OPERATOR)) || LA329_2578 == SINGLE_QUOTED_TEXT || LA329_2578 == STRAIGHT_JOIN_SYMBOL || LA329_2578 == UNION_SYMBOL || LA329_2578 == USING_SYMBOL || LA329_2578 == WHERE_SYMBOL || LA329_2578 == WITH_SYMBOL || LA329_2578 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2578;


                                            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  = 329;
                                    EXCEPTION->state        = 1889;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_69 == EOF || ((LA329_69 >= ACCOUNT_SYMBOL) && (LA329_69 <= YEAR_SYMBOL)) || LA329_69 == AND_SYMBOL || LA329_69 == AS_SYMBOL || LA329_69 == BACK_TICK_QUOTED_ID || LA329_69 == BETWEEN_SYMBOL || LA329_69 == BIN_NUMBER || LA329_69 == BITWISE_AND_OPERATOR || ((LA329_69 >= BITWISE_OR_OPERATOR) && (LA329_69 <= BITWISE_XOR_OPERATOR)) || ((LA329_69 >= CLOSE_CURLY_SYMBOL) && (LA329_69 <= COLLATE_SYMBOL)) || LA329_69 == COMMA_SYMBOL || LA329_69 == CONCAT_PIPES_SYMBOL || LA329_69 == CROSS_SYMBOL || ((LA329_69 >= DIV_OPERATOR) && (LA329_69 <= DIV_SYMBOL)) || LA329_69 == DOUBLE_QUOTED_TEXT || LA329_69 == EQUAL_OPERATOR || LA329_69 == FOR_SYMBOL || LA329_69 == FROM_SYMBOL || ((LA329_69 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_69 <= GREATER_THAN_OPERATOR)) || ((LA329_69 >= GROUP_SYMBOL) && (LA329_69 <= HAVING_SYMBOL)) || LA329_69 == HEX_NUMBER || LA329_69 == IDENTIFIER || LA329_69 == INNER_SYMBOL || LA329_69 == INTO_SYMBOL || LA329_69 == IN_SYMBOL || LA329_69 == IS_SYMBOL || ((LA329_69 >= JOIN_SYMBOL) && (LA329_69 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_69 >= LEFT_SYMBOL) && (LA329_69 <= LESS_THAN_OPERATOR)) || ((LA329_69 >= LIKE_SYMBOL) && (LA329_69 <= LIMIT_SYMBOL)) || LA329_69 == LOCK_SYMBOL || LA329_69 == LOGICAL_AND_OPERATOR || LA329_69 == LOGICAL_OR_OPERATOR || LA329_69 == MINUS_OPERATOR || ((LA329_69 >= MOD_OPERATOR) && (LA329_69 <= MOD_SYMBOL)) || ((LA329_69 >= MULT_OPERATOR) && (LA329_69 <= NATURAL_SYMBOL)) || ((LA329_69 >= NOT_EQUAL2_OPERATOR) && (LA329_69 <= NOT_SYMBOL)) || LA329_69 == NULL_SAFE_EQUAL_OPERATOR || LA329_69 == ON_SYMBOL || LA329_69 == OPEN_PAR_SYMBOL || ((LA329_69 >= ORDER_SYMBOL) && (LA329_69 <= OR_SYMBOL)) || LA329_69 == PLUS_OPERATOR || LA329_69 == PROCEDURE_SYMBOL || LA329_69 == REGEXP_SYMBOL || LA329_69 == RIGHT_SYMBOL || LA329_69 == SEMICOLON_SYMBOL || LA329_69 == SET_SYMBOL || ((LA329_69 >= SHIFT_LEFT_OPERATOR) && (LA329_69 <= SHIFT_RIGHT_OPERATOR)) || LA329_69 == SINGLE_QUOTED_TEXT || LA329_69 == STRAIGHT_JOIN_SYMBOL || LA329_69 == UNION_SYMBOL || LA329_69 == USING_SYMBOL || LA329_69 == WHERE_SYMBOL || LA329_69 == WITH_SYMBOL || LA329_69 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 69;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == MULTIPOINT_SYMBOL))
                {
                    {
                        int LA329_70 = LA(2);
                        if ( (LA329_70 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1943 = LA(3);
                                if ( (LA329_1943 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1943 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2580 = LA(4);
                                        if ( (LA329_2580 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11807 = LA(5);
                                                if ( (LA329_11807 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11807 >= ACCOUNT_SYMBOL) && (LA329_11807 <= YEAR_SYMBOL)) || LA329_11807 == BACK_TICK_QUOTED_ID || LA329_11807 == DOUBLE_QUOTED_TEXT || LA329_11807 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11807;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2580 == EOF || ((LA329_2580 >= ACCOUNT_SYMBOL) && (LA329_2580 <= YEAR_SYMBOL)) || LA329_2580 == AND_SYMBOL || LA329_2580 == AS_SYMBOL || LA329_2580 == BACK_TICK_QUOTED_ID || LA329_2580 == BETWEEN_SYMBOL || LA329_2580 == BIN_NUMBER || LA329_2580 == BITWISE_AND_OPERATOR || ((LA329_2580 >= BITWISE_OR_OPERATOR) && (LA329_2580 <= BITWISE_XOR_OPERATOR)) || ((LA329_2580 >= CLOSE_CURLY_SYMBOL) && (LA329_2580 <= COLLATE_SYMBOL)) || LA329_2580 == COMMA_SYMBOL || LA329_2580 == CONCAT_PIPES_SYMBOL || LA329_2580 == CROSS_SYMBOL || ((LA329_2580 >= DIV_OPERATOR) && (LA329_2580 <= DIV_SYMBOL)) || LA329_2580 == DOUBLE_QUOTED_TEXT || LA329_2580 == EQUAL_OPERATOR || LA329_2580 == FOR_SYMBOL || LA329_2580 == FROM_SYMBOL || ((LA329_2580 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2580 <= GREATER_THAN_OPERATOR)) || ((LA329_2580 >= GROUP_SYMBOL) && (LA329_2580 <= HAVING_SYMBOL)) || LA329_2580 == HEX_NUMBER || LA329_2580 == IDENTIFIER || LA329_2580 == INNER_SYMBOL || LA329_2580 == INTO_SYMBOL || LA329_2580 == IN_SYMBOL || LA329_2580 == IS_SYMBOL || ((LA329_2580 >= JOIN_SYMBOL) && (LA329_2580 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2580 >= LEFT_SYMBOL) && (LA329_2580 <= LESS_THAN_OPERATOR)) || ((LA329_2580 >= LIKE_SYMBOL) && (LA329_2580 <= LIMIT_SYMBOL)) || LA329_2580 == LOCK_SYMBOL || LA329_2580 == LOGICAL_AND_OPERATOR || LA329_2580 == LOGICAL_OR_OPERATOR || LA329_2580 == MINUS_OPERATOR || ((LA329_2580 >= MOD_OPERATOR) && (LA329_2580 <= MOD_SYMBOL)) || ((LA329_2580 >= MULT_OPERATOR) && (LA329_2580 <= NATURAL_SYMBOL)) || ((LA329_2580 >= NOT_EQUAL2_OPERATOR) && (LA329_2580 <= NOT_SYMBOL)) || LA329_2580 == NULL_SAFE_EQUAL_OPERATOR || LA329_2580 == ON_SYMBOL || LA329_2580 == OPEN_PAR_SYMBOL || ((LA329_2580 >= ORDER_SYMBOL) && (LA329_2580 <= OR_SYMBOL)) || LA329_2580 == PLUS_OPERATOR || LA329_2580 == PROCEDURE_SYMBOL || LA329_2580 == REGEXP_SYMBOL || LA329_2580 == RIGHT_SYMBOL || LA329_2580 == SEMICOLON_SYMBOL || LA329_2580 == SET_SYMBOL || ((LA329_2580 >= SHIFT_LEFT_OPERATOR) && (LA329_2580 <= SHIFT_RIGHT_OPERATOR)) || LA329_2580 == SINGLE_QUOTED_TEXT || LA329_2580 == STRAIGHT_JOIN_SYMBOL || LA329_2580 == UNION_SYMBOL || LA329_2580 == USING_SYMBOL || LA329_2580 == WHERE_SYMBOL || LA329_2580 == WITH_SYMBOL || LA329_2580 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2580;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1943 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2581 = LA(4);
                                        if ( (LA329_2581 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11861 = LA(5);
                                                if ( (LA329_11861 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11861 >= ACCOUNT_SYMBOL) && (LA329_11861 <= YEAR_SYMBOL)) || LA329_11861 == BACK_TICK_QUOTED_ID || LA329_11861 == DOUBLE_QUOTED_TEXT || LA329_11861 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11861;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2581 == EOF || ((LA329_2581 >= ACCOUNT_SYMBOL) && (LA329_2581 <= YEAR_SYMBOL)) || LA329_2581 == AND_SYMBOL || LA329_2581 == AS_SYMBOL || LA329_2581 == BACK_TICK_QUOTED_ID || LA329_2581 == BETWEEN_SYMBOL || LA329_2581 == BIN_NUMBER || LA329_2581 == BITWISE_AND_OPERATOR || ((LA329_2581 >= BITWISE_OR_OPERATOR) && (LA329_2581 <= BITWISE_XOR_OPERATOR)) || ((LA329_2581 >= CLOSE_CURLY_SYMBOL) && (LA329_2581 <= COLLATE_SYMBOL)) || LA329_2581 == COMMA_SYMBOL || LA329_2581 == CONCAT_PIPES_SYMBOL || LA329_2581 == CROSS_SYMBOL || ((LA329_2581 >= DIV_OPERATOR) && (LA329_2581 <= DIV_SYMBOL)) || LA329_2581 == DOUBLE_QUOTED_TEXT || LA329_2581 == EQUAL_OPERATOR || LA329_2581 == FOR_SYMBOL || LA329_2581 == FROM_SYMBOL || ((LA329_2581 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2581 <= GREATER_THAN_OPERATOR)) || ((LA329_2581 >= GROUP_SYMBOL) && (LA329_2581 <= HAVING_SYMBOL)) || LA329_2581 == HEX_NUMBER || LA329_2581 == IDENTIFIER || LA329_2581 == INNER_SYMBOL || LA329_2581 == INTO_SYMBOL || LA329_2581 == IN_SYMBOL || LA329_2581 == IS_SYMBOL || ((LA329_2581 >= JOIN_SYMBOL) && (LA329_2581 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2581 >= LEFT_SYMBOL) && (LA329_2581 <= LESS_THAN_OPERATOR)) || ((LA329_2581 >= LIKE_SYMBOL) && (LA329_2581 <= LIMIT_SYMBOL)) || LA329_2581 == LOCK_SYMBOL || LA329_2581 == LOGICAL_AND_OPERATOR || LA329_2581 == LOGICAL_OR_OPERATOR || LA329_2581 == MINUS_OPERATOR || ((LA329_2581 >= MOD_OPERATOR) && (LA329_2581 <= MOD_SYMBOL)) || ((LA329_2581 >= MULT_OPERATOR) && (LA329_2581 <= NATURAL_SYMBOL)) || ((LA329_2581 >= NOT_EQUAL2_OPERATOR) && (LA329_2581 <= NOT_SYMBOL)) || LA329_2581 == NULL_SAFE_EQUAL_OPERATOR || LA329_2581 == ON_SYMBOL || LA329_2581 == OPEN_PAR_SYMBOL || ((LA329_2581 >= ORDER_SYMBOL) && (LA329_2581 <= OR_SYMBOL)) || LA329_2581 == PLUS_OPERATOR || LA329_2581 == PROCEDURE_SYMBOL || LA329_2581 == REGEXP_SYMBOL || LA329_2581 == RIGHT_SYMBOL || LA329_2581 == SEMICOLON_SYMBOL || LA329_2581 == SET_SYMBOL || ((LA329_2581 >= SHIFT_LEFT_OPERATOR) && (LA329_2581 <= SHIFT_RIGHT_OPERATOR)) || LA329_2581 == SINGLE_QUOTED_TEXT || LA329_2581 == STRAIGHT_JOIN_SYMBOL || LA329_2581 == UNION_SYMBOL || LA329_2581 == USING_SYMBOL || LA329_2581 == WHERE_SYMBOL || LA329_2581 == WITH_SYMBOL || LA329_2581 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2581;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1943 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2582 = LA(4);
                                        if ( (LA329_2582 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11915 = LA(5);
                                                if ( (LA329_11915 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11915 >= ACCOUNT_SYMBOL) && (LA329_11915 <= YEAR_SYMBOL)) || LA329_11915 == BACK_TICK_QUOTED_ID || LA329_11915 == DOUBLE_QUOTED_TEXT || LA329_11915 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11915;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2582 == EOF || ((LA329_2582 >= ACCOUNT_SYMBOL) && (LA329_2582 <= YEAR_SYMBOL)) || LA329_2582 == AND_SYMBOL || LA329_2582 == AS_SYMBOL || LA329_2582 == BACK_TICK_QUOTED_ID || LA329_2582 == BETWEEN_SYMBOL || LA329_2582 == BIN_NUMBER || LA329_2582 == BITWISE_AND_OPERATOR || ((LA329_2582 >= BITWISE_OR_OPERATOR) && (LA329_2582 <= BITWISE_XOR_OPERATOR)) || ((LA329_2582 >= CLOSE_CURLY_SYMBOL) && (LA329_2582 <= COLLATE_SYMBOL)) || LA329_2582 == COMMA_SYMBOL || LA329_2582 == CONCAT_PIPES_SYMBOL || LA329_2582 == CROSS_SYMBOL || ((LA329_2582 >= DIV_OPERATOR) && (LA329_2582 <= DIV_SYMBOL)) || LA329_2582 == DOUBLE_QUOTED_TEXT || LA329_2582 == EQUAL_OPERATOR || LA329_2582 == FOR_SYMBOL || LA329_2582 == FROM_SYMBOL || ((LA329_2582 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2582 <= GREATER_THAN_OPERATOR)) || ((LA329_2582 >= GROUP_SYMBOL) && (LA329_2582 <= HAVING_SYMBOL)) || LA329_2582 == HEX_NUMBER || LA329_2582 == IDENTIFIER || LA329_2582 == INNER_SYMBOL || LA329_2582 == INTO_SYMBOL || LA329_2582 == IN_SYMBOL || LA329_2582 == IS_SYMBOL || ((LA329_2582 >= JOIN_SYMBOL) && (LA329_2582 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2582 >= LEFT_SYMBOL) && (LA329_2582 <= LESS_THAN_OPERATOR)) || ((LA329_2582 >= LIKE_SYMBOL) && (LA329_2582 <= LIMIT_SYMBOL)) || LA329_2582 == LOCK_SYMBOL || LA329_2582 == LOGICAL_AND_OPERATOR || LA329_2582 == LOGICAL_OR_OPERATOR || LA329_2582 == MINUS_OPERATOR || ((LA329_2582 >= MOD_OPERATOR) && (LA329_2582 <= MOD_SYMBOL)) || ((LA329_2582 >= MULT_OPERATOR) && (LA329_2582 <= NATURAL_SYMBOL)) || ((LA329_2582 >= NOT_EQUAL2_OPERATOR) && (LA329_2582 <= NOT_SYMBOL)) || LA329_2582 == NULL_SAFE_EQUAL_OPERATOR || LA329_2582 == ON_SYMBOL || LA329_2582 == OPEN_PAR_SYMBOL || ((LA329_2582 >= ORDER_SYMBOL) && (LA329_2582 <= OR_SYMBOL)) || LA329_2582 == PLUS_OPERATOR || LA329_2582 == PROCEDURE_SYMBOL || LA329_2582 == REGEXP_SYMBOL || LA329_2582 == RIGHT_SYMBOL || LA329_2582 == SEMICOLON_SYMBOL || LA329_2582 == SET_SYMBOL || ((LA329_2582 >= SHIFT_LEFT_OPERATOR) && (LA329_2582 <= SHIFT_RIGHT_OPERATOR)) || LA329_2582 == SINGLE_QUOTED_TEXT || LA329_2582 == STRAIGHT_JOIN_SYMBOL || LA329_2582 == UNION_SYMBOL || LA329_2582 == USING_SYMBOL || LA329_2582 == WHERE_SYMBOL || LA329_2582 == WITH_SYMBOL || LA329_2582 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2582;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1943 >= ACTION_SYMBOL) && (LA329_1943 <= SHARE_SYMBOL)) || ((LA329_1943 >= SLOW_SYMBOL) && (LA329_1943 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2583 = LA(4);
                                        if ( (LA329_2583 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_11969 = LA(5);
                                                if ( (LA329_11969 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_11969 >= ACCOUNT_SYMBOL) && (LA329_11969 <= YEAR_SYMBOL)) || LA329_11969 == BACK_TICK_QUOTED_ID || LA329_11969 == DOUBLE_QUOTED_TEXT || LA329_11969 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 11969;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2583 == EOF || ((LA329_2583 >= ACCOUNT_SYMBOL) && (LA329_2583 <= YEAR_SYMBOL)) || LA329_2583 == AND_SYMBOL || LA329_2583 == AS_SYMBOL || LA329_2583 == BACK_TICK_QUOTED_ID || LA329_2583 == BETWEEN_SYMBOL || LA329_2583 == BIN_NUMBER || LA329_2583 == BITWISE_AND_OPERATOR || ((LA329_2583 >= BITWISE_OR_OPERATOR) && (LA329_2583 <= BITWISE_XOR_OPERATOR)) || ((LA329_2583 >= CLOSE_CURLY_SYMBOL) && (LA329_2583 <= COLLATE_SYMBOL)) || LA329_2583 == COMMA_SYMBOL || LA329_2583 == CONCAT_PIPES_SYMBOL || LA329_2583 == CROSS_SYMBOL || ((LA329_2583 >= DIV_OPERATOR) && (LA329_2583 <= DIV_SYMBOL)) || LA329_2583 == DOUBLE_QUOTED_TEXT || LA329_2583 == EQUAL_OPERATOR || LA329_2583 == FOR_SYMBOL || LA329_2583 == FROM_SYMBOL || ((LA329_2583 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2583 <= GREATER_THAN_OPERATOR)) || ((LA329_2583 >= GROUP_SYMBOL) && (LA329_2583 <= HAVING_SYMBOL)) || LA329_2583 == HEX_NUMBER || LA329_2583 == IDENTIFIER || LA329_2583 == INNER_SYMBOL || LA329_2583 == INTO_SYMBOL || LA329_2583 == IN_SYMBOL || LA329_2583 == IS_SYMBOL || ((LA329_2583 >= JOIN_SYMBOL) && (LA329_2583 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2583 >= LEFT_SYMBOL) && (LA329_2583 <= LESS_THAN_OPERATOR)) || ((LA329_2583 >= LIKE_SYMBOL) && (LA329_2583 <= LIMIT_SYMBOL)) || LA329_2583 == LOCK_SYMBOL || LA329_2583 == LOGICAL_AND_OPERATOR || LA329_2583 == LOGICAL_OR_OPERATOR || LA329_2583 == MINUS_OPERATOR || ((LA329_2583 >= MOD_OPERATOR) && (LA329_2583 <= MOD_SYMBOL)) || ((LA329_2583 >= MULT_OPERATOR) && (LA329_2583 <= NATURAL_SYMBOL)) || ((LA329_2583 >= NOT_EQUAL2_OPERATOR) && (LA329_2583 <= NOT_SYMBOL)) || LA329_2583 == NULL_SAFE_EQUAL_OPERATOR || LA329_2583 == ON_SYMBOL || LA329_2583 == OPEN_PAR_SYMBOL || ((LA329_2583 >= ORDER_SYMBOL) && (LA329_2583 <= OR_SYMBOL)) || LA329_2583 == PLUS_OPERATOR || LA329_2583 == PROCEDURE_SYMBOL || LA329_2583 == REGEXP_SYMBOL || LA329_2583 == RIGHT_SYMBOL || LA329_2583 == SEMICOLON_SYMBOL || LA329_2583 == SET_SYMBOL || ((LA329_2583 >= SHIFT_LEFT_OPERATOR) && (LA329_2583 <= SHIFT_RIGHT_OPERATOR)) || LA329_2583 == SINGLE_QUOTED_TEXT || LA329_2583 == STRAIGHT_JOIN_SYMBOL || LA329_2583 == UNION_SYMBOL || LA329_2583 == USING_SYMBOL || LA329_2583 == WHERE_SYMBOL || LA329_2583 == WITH_SYMBOL || LA329_2583 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2583;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1943 >= ACCOUNT_SYMBOL) && (LA329_1943 <= XA_SYMBOL)) || LA329_1943 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2584 = LA(4);
                                        if ( (LA329_2584 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12023 = LA(5);
                                                if ( (LA329_12023 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12023 >= ACCOUNT_SYMBOL) && (LA329_12023 <= YEAR_SYMBOL)) || LA329_12023 == BACK_TICK_QUOTED_ID || LA329_12023 == DOUBLE_QUOTED_TEXT || LA329_12023 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12023;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2584 == EOF || ((LA329_2584 >= ACCOUNT_SYMBOL) && (LA329_2584 <= YEAR_SYMBOL)) || LA329_2584 == AND_SYMBOL || LA329_2584 == AS_SYMBOL || LA329_2584 == BACK_TICK_QUOTED_ID || LA329_2584 == BETWEEN_SYMBOL || LA329_2584 == BIN_NUMBER || LA329_2584 == BITWISE_AND_OPERATOR || ((LA329_2584 >= BITWISE_OR_OPERATOR) && (LA329_2584 <= BITWISE_XOR_OPERATOR)) || ((LA329_2584 >= CLOSE_CURLY_SYMBOL) && (LA329_2584 <= COLLATE_SYMBOL)) || LA329_2584 == COMMA_SYMBOL || LA329_2584 == CONCAT_PIPES_SYMBOL || LA329_2584 == CROSS_SYMBOL || ((LA329_2584 >= DIV_OPERATOR) && (LA329_2584 <= DIV_SYMBOL)) || LA329_2584 == DOUBLE_QUOTED_TEXT || LA329_2584 == EQUAL_OPERATOR || LA329_2584 == FOR_SYMBOL || LA329_2584 == FROM_SYMBOL || ((LA329_2584 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2584 <= GREATER_THAN_OPERATOR)) || ((LA329_2584 >= GROUP_SYMBOL) && (LA329_2584 <= HAVING_SYMBOL)) || LA329_2584 == HEX_NUMBER || LA329_2584 == IDENTIFIER || LA329_2584 == INNER_SYMBOL || LA329_2584 == INTO_SYMBOL || LA329_2584 == IN_SYMBOL || LA329_2584 == IS_SYMBOL || ((LA329_2584 >= JOIN_SYMBOL) && (LA329_2584 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2584 >= LEFT_SYMBOL) && (LA329_2584 <= LESS_THAN_OPERATOR)) || ((LA329_2584 >= LIKE_SYMBOL) && (LA329_2584 <= LIMIT_SYMBOL)) || LA329_2584 == LOCK_SYMBOL || LA329_2584 == LOGICAL_AND_OPERATOR || LA329_2584 == LOGICAL_OR_OPERATOR || LA329_2584 == MINUS_OPERATOR || ((LA329_2584 >= MOD_OPERATOR) && (LA329_2584 <= MOD_SYMBOL)) || ((LA329_2584 >= MULT_OPERATOR) && (LA329_2584 <= NATURAL_SYMBOL)) || ((LA329_2584 >= NOT_EQUAL2_OPERATOR) && (LA329_2584 <= NOT_SYMBOL)) || LA329_2584 == NULL_SAFE_EQUAL_OPERATOR || LA329_2584 == ON_SYMBOL || LA329_2584 == OPEN_PAR_SYMBOL || ((LA329_2584 >= ORDER_SYMBOL) && (LA329_2584 <= OR_SYMBOL)) || LA329_2584 == PLUS_OPERATOR || LA329_2584 == PROCEDURE_SYMBOL || LA329_2584 == REGEXP_SYMBOL || LA329_2584 == RIGHT_SYMBOL || LA329_2584 == SEMICOLON_SYMBOL || LA329_2584 == SET_SYMBOL || ((LA329_2584 >= SHIFT_LEFT_OPERATOR) && (LA329_2584 <= SHIFT_RIGHT_OPERATOR)) || LA329_2584 == SINGLE_QUOTED_TEXT || LA329_2584 == STRAIGHT_JOIN_SYMBOL || LA329_2584 == UNION_SYMBOL || LA329_2584 == USING_SYMBOL || LA329_2584 == WHERE_SYMBOL || LA329_2584 == WITH_SYMBOL || LA329_2584 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2584;


                                            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  = 329;
                                    EXCEPTION->state        = 1943;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_70 == EOF || ((LA329_70 >= ACCOUNT_SYMBOL) && (LA329_70 <= YEAR_SYMBOL)) || LA329_70 == AND_SYMBOL || LA329_70 == AS_SYMBOL || LA329_70 == BACK_TICK_QUOTED_ID || LA329_70 == BETWEEN_SYMBOL || LA329_70 == BIN_NUMBER || LA329_70 == BITWISE_AND_OPERATOR || ((LA329_70 >= BITWISE_OR_OPERATOR) && (LA329_70 <= BITWISE_XOR_OPERATOR)) || ((LA329_70 >= CLOSE_CURLY_SYMBOL) && (LA329_70 <= COLLATE_SYMBOL)) || LA329_70 == COMMA_SYMBOL || LA329_70 == CONCAT_PIPES_SYMBOL || LA329_70 == CROSS_SYMBOL || ((LA329_70 >= DIV_OPERATOR) && (LA329_70 <= DIV_SYMBOL)) || LA329_70 == DOUBLE_QUOTED_TEXT || LA329_70 == EQUAL_OPERATOR || LA329_70 == FOR_SYMBOL || LA329_70 == FROM_SYMBOL || ((LA329_70 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_70 <= GREATER_THAN_OPERATOR)) || ((LA329_70 >= GROUP_SYMBOL) && (LA329_70 <= HAVING_SYMBOL)) || LA329_70 == HEX_NUMBER || LA329_70 == IDENTIFIER || LA329_70 == INNER_SYMBOL || LA329_70 == INTO_SYMBOL || LA329_70 == IN_SYMBOL || LA329_70 == IS_SYMBOL || ((LA329_70 >= JOIN_SYMBOL) && (LA329_70 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_70 >= LEFT_SYMBOL) && (LA329_70 <= LESS_THAN_OPERATOR)) || ((LA329_70 >= LIKE_SYMBOL) && (LA329_70 <= LIMIT_SYMBOL)) || LA329_70 == LOCK_SYMBOL || LA329_70 == LOGICAL_AND_OPERATOR || LA329_70 == LOGICAL_OR_OPERATOR || LA329_70 == MINUS_OPERATOR || ((LA329_70 >= MOD_OPERATOR) && (LA329_70 <= MOD_SYMBOL)) || ((LA329_70 >= MULT_OPERATOR) && (LA329_70 <= NATURAL_SYMBOL)) || ((LA329_70 >= NOT_EQUAL2_OPERATOR) && (LA329_70 <= NOT_SYMBOL)) || LA329_70 == NULL_SAFE_EQUAL_OPERATOR || LA329_70 == ON_SYMBOL || LA329_70 == OPEN_PAR_SYMBOL || ((LA329_70 >= ORDER_SYMBOL) && (LA329_70 <= OR_SYMBOL)) || LA329_70 == PLUS_OPERATOR || LA329_70 == PROCEDURE_SYMBOL || LA329_70 == REGEXP_SYMBOL || LA329_70 == RIGHT_SYMBOL || LA329_70 == SEMICOLON_SYMBOL || LA329_70 == SET_SYMBOL || ((LA329_70 >= SHIFT_LEFT_OPERATOR) && (LA329_70 <= SHIFT_RIGHT_OPERATOR)) || LA329_70 == SINGLE_QUOTED_TEXT || LA329_70 == STRAIGHT_JOIN_SYMBOL || LA329_70 == UNION_SYMBOL || LA329_70 == USING_SYMBOL || LA329_70 == WHERE_SYMBOL || LA329_70 == WITH_SYMBOL || LA329_70 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 70;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == MULTIPOLYGON_SYMBOL))
                {
                    {
                        int LA329_71 = LA(2);
                        if ( (LA329_71 == DOT_SYMBOL))
                        {
                            {
                                int LA329_1997 = LA(3);
                                if ( (LA329_1997 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_1997 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2586 = LA(4);
                                        if ( (LA329_2586 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12077 = LA(5);
                                                if ( (LA329_12077 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12077 >= ACCOUNT_SYMBOL) && (LA329_12077 <= YEAR_SYMBOL)) || LA329_12077 == BACK_TICK_QUOTED_ID || LA329_12077 == DOUBLE_QUOTED_TEXT || LA329_12077 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12077;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2586 == EOF || ((LA329_2586 >= ACCOUNT_SYMBOL) && (LA329_2586 <= YEAR_SYMBOL)) || LA329_2586 == AND_SYMBOL || LA329_2586 == AS_SYMBOL || LA329_2586 == BACK_TICK_QUOTED_ID || LA329_2586 == BETWEEN_SYMBOL || LA329_2586 == BIN_NUMBER || LA329_2586 == BITWISE_AND_OPERATOR || ((LA329_2586 >= BITWISE_OR_OPERATOR) && (LA329_2586 <= BITWISE_XOR_OPERATOR)) || ((LA329_2586 >= CLOSE_CURLY_SYMBOL) && (LA329_2586 <= COLLATE_SYMBOL)) || LA329_2586 == COMMA_SYMBOL || LA329_2586 == CONCAT_PIPES_SYMBOL || LA329_2586 == CROSS_SYMBOL || ((LA329_2586 >= DIV_OPERATOR) && (LA329_2586 <= DIV_SYMBOL)) || LA329_2586 == DOUBLE_QUOTED_TEXT || LA329_2586 == EQUAL_OPERATOR || LA329_2586 == FOR_SYMBOL || LA329_2586 == FROM_SYMBOL || ((LA329_2586 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2586 <= GREATER_THAN_OPERATOR)) || ((LA329_2586 >= GROUP_SYMBOL) && (LA329_2586 <= HAVING_SYMBOL)) || LA329_2586 == HEX_NUMBER || LA329_2586 == IDENTIFIER || LA329_2586 == INNER_SYMBOL || LA329_2586 == INTO_SYMBOL || LA329_2586 == IN_SYMBOL || LA329_2586 == IS_SYMBOL || ((LA329_2586 >= JOIN_SYMBOL) && (LA329_2586 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2586 >= LEFT_SYMBOL) && (LA329_2586 <= LESS_THAN_OPERATOR)) || ((LA329_2586 >= LIKE_SYMBOL) && (LA329_2586 <= LIMIT_SYMBOL)) || LA329_2586 == LOCK_SYMBOL || LA329_2586 == LOGICAL_AND_OPERATOR || LA329_2586 == LOGICAL_OR_OPERATOR || LA329_2586 == MINUS_OPERATOR || ((LA329_2586 >= MOD_OPERATOR) && (LA329_2586 <= MOD_SYMBOL)) || ((LA329_2586 >= MULT_OPERATOR) && (LA329_2586 <= NATURAL_SYMBOL)) || ((LA329_2586 >= NOT_EQUAL2_OPERATOR) && (LA329_2586 <= NOT_SYMBOL)) || LA329_2586 == NULL_SAFE_EQUAL_OPERATOR || LA329_2586 == ON_SYMBOL || LA329_2586 == OPEN_PAR_SYMBOL || ((LA329_2586 >= ORDER_SYMBOL) && (LA329_2586 <= OR_SYMBOL)) || LA329_2586 == PLUS_OPERATOR || LA329_2586 == PROCEDURE_SYMBOL || LA329_2586 == REGEXP_SYMBOL || LA329_2586 == RIGHT_SYMBOL || LA329_2586 == SEMICOLON_SYMBOL || LA329_2586 == SET_SYMBOL || ((LA329_2586 >= SHIFT_LEFT_OPERATOR) && (LA329_2586 <= SHIFT_RIGHT_OPERATOR)) || LA329_2586 == SINGLE_QUOTED_TEXT || LA329_2586 == STRAIGHT_JOIN_SYMBOL || LA329_2586 == UNION_SYMBOL || LA329_2586 == USING_SYMBOL || LA329_2586 == WHERE_SYMBOL || LA329_2586 == WITH_SYMBOL || LA329_2586 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2586;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1997 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2587 = LA(4);
                                        if ( (LA329_2587 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12131 = LA(5);
                                                if ( (LA329_12131 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12131 >= ACCOUNT_SYMBOL) && (LA329_12131 <= YEAR_SYMBOL)) || LA329_12131 == BACK_TICK_QUOTED_ID || LA329_12131 == DOUBLE_QUOTED_TEXT || LA329_12131 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12131;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2587 == EOF || ((LA329_2587 >= ACCOUNT_SYMBOL) && (LA329_2587 <= YEAR_SYMBOL)) || LA329_2587 == AND_SYMBOL || LA329_2587 == AS_SYMBOL || LA329_2587 == BACK_TICK_QUOTED_ID || LA329_2587 == BETWEEN_SYMBOL || LA329_2587 == BIN_NUMBER || LA329_2587 == BITWISE_AND_OPERATOR || ((LA329_2587 >= BITWISE_OR_OPERATOR) && (LA329_2587 <= BITWISE_XOR_OPERATOR)) || ((LA329_2587 >= CLOSE_CURLY_SYMBOL) && (LA329_2587 <= COLLATE_SYMBOL)) || LA329_2587 == COMMA_SYMBOL || LA329_2587 == CONCAT_PIPES_SYMBOL || LA329_2587 == CROSS_SYMBOL || ((LA329_2587 >= DIV_OPERATOR) && (LA329_2587 <= DIV_SYMBOL)) || LA329_2587 == DOUBLE_QUOTED_TEXT || LA329_2587 == EQUAL_OPERATOR || LA329_2587 == FOR_SYMBOL || LA329_2587 == FROM_SYMBOL || ((LA329_2587 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2587 <= GREATER_THAN_OPERATOR)) || ((LA329_2587 >= GROUP_SYMBOL) && (LA329_2587 <= HAVING_SYMBOL)) || LA329_2587 == HEX_NUMBER || LA329_2587 == IDENTIFIER || LA329_2587 == INNER_SYMBOL || LA329_2587 == INTO_SYMBOL || LA329_2587 == IN_SYMBOL || LA329_2587 == IS_SYMBOL || ((LA329_2587 >= JOIN_SYMBOL) && (LA329_2587 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2587 >= LEFT_SYMBOL) && (LA329_2587 <= LESS_THAN_OPERATOR)) || ((LA329_2587 >= LIKE_SYMBOL) && (LA329_2587 <= LIMIT_SYMBOL)) || LA329_2587 == LOCK_SYMBOL || LA329_2587 == LOGICAL_AND_OPERATOR || LA329_2587 == LOGICAL_OR_OPERATOR || LA329_2587 == MINUS_OPERATOR || ((LA329_2587 >= MOD_OPERATOR) && (LA329_2587 <= MOD_SYMBOL)) || ((LA329_2587 >= MULT_OPERATOR) && (LA329_2587 <= NATURAL_SYMBOL)) || ((LA329_2587 >= NOT_EQUAL2_OPERATOR) && (LA329_2587 <= NOT_SYMBOL)) || LA329_2587 == NULL_SAFE_EQUAL_OPERATOR || LA329_2587 == ON_SYMBOL || LA329_2587 == OPEN_PAR_SYMBOL || ((LA329_2587 >= ORDER_SYMBOL) && (LA329_2587 <= OR_SYMBOL)) || LA329_2587 == PLUS_OPERATOR || LA329_2587 == PROCEDURE_SYMBOL || LA329_2587 == REGEXP_SYMBOL || LA329_2587 == RIGHT_SYMBOL || LA329_2587 == SEMICOLON_SYMBOL || LA329_2587 == SET_SYMBOL || ((LA329_2587 >= SHIFT_LEFT_OPERATOR) && (LA329_2587 <= SHIFT_RIGHT_OPERATOR)) || LA329_2587 == SINGLE_QUOTED_TEXT || LA329_2587 == STRAIGHT_JOIN_SYMBOL || LA329_2587 == UNION_SYMBOL || LA329_2587 == USING_SYMBOL || LA329_2587 == WHERE_SYMBOL || LA329_2587 == WITH_SYMBOL || LA329_2587 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2587;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_1997 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2588 = LA(4);
                                        if ( (LA329_2588 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12185 = LA(5);
                                                if ( (LA329_12185 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12185 >= ACCOUNT_SYMBOL) && (LA329_12185 <= YEAR_SYMBOL)) || LA329_12185 == BACK_TICK_QUOTED_ID || LA329_12185 == DOUBLE_QUOTED_TEXT || LA329_12185 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12185;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2588 == EOF || ((LA329_2588 >= ACCOUNT_SYMBOL) && (LA329_2588 <= YEAR_SYMBOL)) || LA329_2588 == AND_SYMBOL || LA329_2588 == AS_SYMBOL || LA329_2588 == BACK_TICK_QUOTED_ID || LA329_2588 == BETWEEN_SYMBOL || LA329_2588 == BIN_NUMBER || LA329_2588 == BITWISE_AND_OPERATOR || ((LA329_2588 >= BITWISE_OR_OPERATOR) && (LA329_2588 <= BITWISE_XOR_OPERATOR)) || ((LA329_2588 >= CLOSE_CURLY_SYMBOL) && (LA329_2588 <= COLLATE_SYMBOL)) || LA329_2588 == COMMA_SYMBOL || LA329_2588 == CONCAT_PIPES_SYMBOL || LA329_2588 == CROSS_SYMBOL || ((LA329_2588 >= DIV_OPERATOR) && (LA329_2588 <= DIV_SYMBOL)) || LA329_2588 == DOUBLE_QUOTED_TEXT || LA329_2588 == EQUAL_OPERATOR || LA329_2588 == FOR_SYMBOL || LA329_2588 == FROM_SYMBOL || ((LA329_2588 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2588 <= GREATER_THAN_OPERATOR)) || ((LA329_2588 >= GROUP_SYMBOL) && (LA329_2588 <= HAVING_SYMBOL)) || LA329_2588 == HEX_NUMBER || LA329_2588 == IDENTIFIER || LA329_2588 == INNER_SYMBOL || LA329_2588 == INTO_SYMBOL || LA329_2588 == IN_SYMBOL || LA329_2588 == IS_SYMBOL || ((LA329_2588 >= JOIN_SYMBOL) && (LA329_2588 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2588 >= LEFT_SYMBOL) && (LA329_2588 <= LESS_THAN_OPERATOR)) || ((LA329_2588 >= LIKE_SYMBOL) && (LA329_2588 <= LIMIT_SYMBOL)) || LA329_2588 == LOCK_SYMBOL || LA329_2588 == LOGICAL_AND_OPERATOR || LA329_2588 == LOGICAL_OR_OPERATOR || LA329_2588 == MINUS_OPERATOR || ((LA329_2588 >= MOD_OPERATOR) && (LA329_2588 <= MOD_SYMBOL)) || ((LA329_2588 >= MULT_OPERATOR) && (LA329_2588 <= NATURAL_SYMBOL)) || ((LA329_2588 >= NOT_EQUAL2_OPERATOR) && (LA329_2588 <= NOT_SYMBOL)) || LA329_2588 == NULL_SAFE_EQUAL_OPERATOR || LA329_2588 == ON_SYMBOL || LA329_2588 == OPEN_PAR_SYMBOL || ((LA329_2588 >= ORDER_SYMBOL) && (LA329_2588 <= OR_SYMBOL)) || LA329_2588 == PLUS_OPERATOR || LA329_2588 == PROCEDURE_SYMBOL || LA329_2588 == REGEXP_SYMBOL || LA329_2588 == RIGHT_SYMBOL || LA329_2588 == SEMICOLON_SYMBOL || LA329_2588 == SET_SYMBOL || ((LA329_2588 >= SHIFT_LEFT_OPERATOR) && (LA329_2588 <= SHIFT_RIGHT_OPERATOR)) || LA329_2588 == SINGLE_QUOTED_TEXT || LA329_2588 == STRAIGHT_JOIN_SYMBOL || LA329_2588 == UNION_SYMBOL || LA329_2588 == USING_SYMBOL || LA329_2588 == WHERE_SYMBOL || LA329_2588 == WITH_SYMBOL || LA329_2588 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2588;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1997 >= ACTION_SYMBOL) && (LA329_1997 <= SHARE_SYMBOL)) || ((LA329_1997 >= SLOW_SYMBOL) && (LA329_1997 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2589 = LA(4);
                                        if ( (LA329_2589 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12239 = LA(5);
                                                if ( (LA329_12239 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12239 >= ACCOUNT_SYMBOL) && (LA329_12239 <= YEAR_SYMBOL)) || LA329_12239 == BACK_TICK_QUOTED_ID || LA329_12239 == DOUBLE_QUOTED_TEXT || LA329_12239 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12239;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2589 == EOF || ((LA329_2589 >= ACCOUNT_SYMBOL) && (LA329_2589 <= YEAR_SYMBOL)) || LA329_2589 == AND_SYMBOL || LA329_2589 == AS_SYMBOL || LA329_2589 == BACK_TICK_QUOTED_ID || LA329_2589 == BETWEEN_SYMBOL || LA329_2589 == BIN_NUMBER || LA329_2589 == BITWISE_AND_OPERATOR || ((LA329_2589 >= BITWISE_OR_OPERATOR) && (LA329_2589 <= BITWISE_XOR_OPERATOR)) || ((LA329_2589 >= CLOSE_CURLY_SYMBOL) && (LA329_2589 <= COLLATE_SYMBOL)) || LA329_2589 == COMMA_SYMBOL || LA329_2589 == CONCAT_PIPES_SYMBOL || LA329_2589 == CROSS_SYMBOL || ((LA329_2589 >= DIV_OPERATOR) && (LA329_2589 <= DIV_SYMBOL)) || LA329_2589 == DOUBLE_QUOTED_TEXT || LA329_2589 == EQUAL_OPERATOR || LA329_2589 == FOR_SYMBOL || LA329_2589 == FROM_SYMBOL || ((LA329_2589 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2589 <= GREATER_THAN_OPERATOR)) || ((LA329_2589 >= GROUP_SYMBOL) && (LA329_2589 <= HAVING_SYMBOL)) || LA329_2589 == HEX_NUMBER || LA329_2589 == IDENTIFIER || LA329_2589 == INNER_SYMBOL || LA329_2589 == INTO_SYMBOL || LA329_2589 == IN_SYMBOL || LA329_2589 == IS_SYMBOL || ((LA329_2589 >= JOIN_SYMBOL) && (LA329_2589 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2589 >= LEFT_SYMBOL) && (LA329_2589 <= LESS_THAN_OPERATOR)) || ((LA329_2589 >= LIKE_SYMBOL) && (LA329_2589 <= LIMIT_SYMBOL)) || LA329_2589 == LOCK_SYMBOL || LA329_2589 == LOGICAL_AND_OPERATOR || LA329_2589 == LOGICAL_OR_OPERATOR || LA329_2589 == MINUS_OPERATOR || ((LA329_2589 >= MOD_OPERATOR) && (LA329_2589 <= MOD_SYMBOL)) || ((LA329_2589 >= MULT_OPERATOR) && (LA329_2589 <= NATURAL_SYMBOL)) || ((LA329_2589 >= NOT_EQUAL2_OPERATOR) && (LA329_2589 <= NOT_SYMBOL)) || LA329_2589 == NULL_SAFE_EQUAL_OPERATOR || LA329_2589 == ON_SYMBOL || LA329_2589 == OPEN_PAR_SYMBOL || ((LA329_2589 >= ORDER_SYMBOL) && (LA329_2589 <= OR_SYMBOL)) || LA329_2589 == PLUS_OPERATOR || LA329_2589 == PROCEDURE_SYMBOL || LA329_2589 == REGEXP_SYMBOL || LA329_2589 == RIGHT_SYMBOL || LA329_2589 == SEMICOLON_SYMBOL || LA329_2589 == SET_SYMBOL || ((LA329_2589 >= SHIFT_LEFT_OPERATOR) && (LA329_2589 <= SHIFT_RIGHT_OPERATOR)) || LA329_2589 == SINGLE_QUOTED_TEXT || LA329_2589 == STRAIGHT_JOIN_SYMBOL || LA329_2589 == UNION_SYMBOL || LA329_2589 == USING_SYMBOL || LA329_2589 == WHERE_SYMBOL || LA329_2589 == WITH_SYMBOL || LA329_2589 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2589;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_1997 >= ACCOUNT_SYMBOL) && (LA329_1997 <= XA_SYMBOL)) || LA329_1997 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2590 = LA(4);
                                        if ( (LA329_2590 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12293 = LA(5);
                                                if ( (LA329_12293 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12293 >= ACCOUNT_SYMBOL) && (LA329_12293 <= YEAR_SYMBOL)) || LA329_12293 == BACK_TICK_QUOTED_ID || LA329_12293 == DOUBLE_QUOTED_TEXT || LA329_12293 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12293;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2590 == EOF || ((LA329_2590 >= ACCOUNT_SYMBOL) && (LA329_2590 <= YEAR_SYMBOL)) || LA329_2590 == AND_SYMBOL || LA329_2590 == AS_SYMBOL || LA329_2590 == BACK_TICK_QUOTED_ID || LA329_2590 == BETWEEN_SYMBOL || LA329_2590 == BIN_NUMBER || LA329_2590 == BITWISE_AND_OPERATOR || ((LA329_2590 >= BITWISE_OR_OPERATOR) && (LA329_2590 <= BITWISE_XOR_OPERATOR)) || ((LA329_2590 >= CLOSE_CURLY_SYMBOL) && (LA329_2590 <= COLLATE_SYMBOL)) || LA329_2590 == COMMA_SYMBOL || LA329_2590 == CONCAT_PIPES_SYMBOL || LA329_2590 == CROSS_SYMBOL || ((LA329_2590 >= DIV_OPERATOR) && (LA329_2590 <= DIV_SYMBOL)) || LA329_2590 == DOUBLE_QUOTED_TEXT || LA329_2590 == EQUAL_OPERATOR || LA329_2590 == FOR_SYMBOL || LA329_2590 == FROM_SYMBOL || ((LA329_2590 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2590 <= GREATER_THAN_OPERATOR)) || ((LA329_2590 >= GROUP_SYMBOL) && (LA329_2590 <= HAVING_SYMBOL)) || LA329_2590 == HEX_NUMBER || LA329_2590 == IDENTIFIER || LA329_2590 == INNER_SYMBOL || LA329_2590 == INTO_SYMBOL || LA329_2590 == IN_SYMBOL || LA329_2590 == IS_SYMBOL || ((LA329_2590 >= JOIN_SYMBOL) && (LA329_2590 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2590 >= LEFT_SYMBOL) && (LA329_2590 <= LESS_THAN_OPERATOR)) || ((LA329_2590 >= LIKE_SYMBOL) && (LA329_2590 <= LIMIT_SYMBOL)) || LA329_2590 == LOCK_SYMBOL || LA329_2590 == LOGICAL_AND_OPERATOR || LA329_2590 == LOGICAL_OR_OPERATOR || LA329_2590 == MINUS_OPERATOR || ((LA329_2590 >= MOD_OPERATOR) && (LA329_2590 <= MOD_SYMBOL)) || ((LA329_2590 >= MULT_OPERATOR) && (LA329_2590 <= NATURAL_SYMBOL)) || ((LA329_2590 >= NOT_EQUAL2_OPERATOR) && (LA329_2590 <= NOT_SYMBOL)) || LA329_2590 == NULL_SAFE_EQUAL_OPERATOR || LA329_2590 == ON_SYMBOL || LA329_2590 == OPEN_PAR_SYMBOL || ((LA329_2590 >= ORDER_SYMBOL) && (LA329_2590 <= OR_SYMBOL)) || LA329_2590 == PLUS_OPERATOR || LA329_2590 == PROCEDURE_SYMBOL || LA329_2590 == REGEXP_SYMBOL || LA329_2590 == RIGHT_SYMBOL || LA329_2590 == SEMICOLON_SYMBOL || LA329_2590 == SET_SYMBOL || ((LA329_2590 >= SHIFT_LEFT_OPERATOR) && (LA329_2590 <= SHIFT_RIGHT_OPERATOR)) || LA329_2590 == SINGLE_QUOTED_TEXT || LA329_2590 == STRAIGHT_JOIN_SYMBOL || LA329_2590 == UNION_SYMBOL || LA329_2590 == USING_SYMBOL || LA329_2590 == WHERE_SYMBOL || LA329_2590 == WITH_SYMBOL || LA329_2590 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2590;


                                            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  = 329;
                                    EXCEPTION->state        = 1997;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_71 == EOF || ((LA329_71 >= ACCOUNT_SYMBOL) && (LA329_71 <= YEAR_SYMBOL)) || LA329_71 == AND_SYMBOL || LA329_71 == AS_SYMBOL || LA329_71 == BACK_TICK_QUOTED_ID || LA329_71 == BETWEEN_SYMBOL || LA329_71 == BIN_NUMBER || LA329_71 == BITWISE_AND_OPERATOR || ((LA329_71 >= BITWISE_OR_OPERATOR) && (LA329_71 <= BITWISE_XOR_OPERATOR)) || ((LA329_71 >= CLOSE_CURLY_SYMBOL) && (LA329_71 <= COLLATE_SYMBOL)) || LA329_71 == COMMA_SYMBOL || LA329_71 == CONCAT_PIPES_SYMBOL || LA329_71 == CROSS_SYMBOL || ((LA329_71 >= DIV_OPERATOR) && (LA329_71 <= DIV_SYMBOL)) || LA329_71 == DOUBLE_QUOTED_TEXT || LA329_71 == EQUAL_OPERATOR || LA329_71 == FOR_SYMBOL || LA329_71 == FROM_SYMBOL || ((LA329_71 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_71 <= GREATER_THAN_OPERATOR)) || ((LA329_71 >= GROUP_SYMBOL) && (LA329_71 <= HAVING_SYMBOL)) || LA329_71 == HEX_NUMBER || LA329_71 == IDENTIFIER || LA329_71 == INNER_SYMBOL || LA329_71 == INTO_SYMBOL || LA329_71 == IN_SYMBOL || LA329_71 == IS_SYMBOL || ((LA329_71 >= JOIN_SYMBOL) && (LA329_71 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_71 >= LEFT_SYMBOL) && (LA329_71 <= LESS_THAN_OPERATOR)) || ((LA329_71 >= LIKE_SYMBOL) && (LA329_71 <= LIMIT_SYMBOL)) || LA329_71 == LOCK_SYMBOL || LA329_71 == LOGICAL_AND_OPERATOR || LA329_71 == LOGICAL_OR_OPERATOR || LA329_71 == MINUS_OPERATOR || ((LA329_71 >= MOD_OPERATOR) && (LA329_71 <= MOD_SYMBOL)) || ((LA329_71 >= MULT_OPERATOR) && (LA329_71 <= NATURAL_SYMBOL)) || ((LA329_71 >= NOT_EQUAL2_OPERATOR) && (LA329_71 <= NOT_SYMBOL)) || LA329_71 == NULL_SAFE_EQUAL_OPERATOR || LA329_71 == ON_SYMBOL || LA329_71 == OPEN_PAR_SYMBOL || ((LA329_71 >= ORDER_SYMBOL) && (LA329_71 <= OR_SYMBOL)) || LA329_71 == PLUS_OPERATOR || LA329_71 == PROCEDURE_SYMBOL || LA329_71 == REGEXP_SYMBOL || LA329_71 == RIGHT_SYMBOL || LA329_71 == SEMICOLON_SYMBOL || LA329_71 == SET_SYMBOL || ((LA329_71 >= SHIFT_LEFT_OPERATOR) && (LA329_71 <= SHIFT_RIGHT_OPERATOR)) || LA329_71 == SINGLE_QUOTED_TEXT || LA329_71 == STRAIGHT_JOIN_SYMBOL || LA329_71 == UNION_SYMBOL || LA329_71 == USING_SYMBOL || LA329_71 == WHERE_SYMBOL || LA329_71 == WITH_SYMBOL || LA329_71 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 71;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == POINT_SYMBOL))
                {
                    {
                        int LA329_72 = LA(2);
                        if ( (LA329_72 == EOF || ((LA329_72 >= ACCOUNT_SYMBOL) && (LA329_72 <= YEAR_SYMBOL)) || LA329_72 == AND_SYMBOL || LA329_72 == AS_SYMBOL || LA329_72 == BACK_TICK_QUOTED_ID || LA329_72 == BETWEEN_SYMBOL || LA329_72 == BIN_NUMBER || LA329_72 == BITWISE_AND_OPERATOR || ((LA329_72 >= BITWISE_OR_OPERATOR) && (LA329_72 <= BITWISE_XOR_OPERATOR)) || ((LA329_72 >= CLOSE_CURLY_SYMBOL) && (LA329_72 <= COLLATE_SYMBOL)) || LA329_72 == COMMA_SYMBOL || LA329_72 == CONCAT_PIPES_SYMBOL || LA329_72 == CROSS_SYMBOL || ((LA329_72 >= DIV_OPERATOR) && (LA329_72 <= DIV_SYMBOL)) || LA329_72 == DOUBLE_QUOTED_TEXT || LA329_72 == EQUAL_OPERATOR || LA329_72 == FOR_SYMBOL || LA329_72 == FROM_SYMBOL || ((LA329_72 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_72 <= GREATER_THAN_OPERATOR)) || ((LA329_72 >= GROUP_SYMBOL) && (LA329_72 <= HAVING_SYMBOL)) || LA329_72 == HEX_NUMBER || LA329_72 == IDENTIFIER || LA329_72 == INNER_SYMBOL || LA329_72 == INTO_SYMBOL || LA329_72 == IN_SYMBOL || LA329_72 == IS_SYMBOL || ((LA329_72 >= JOIN_SYMBOL) && (LA329_72 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_72 >= LEFT_SYMBOL) && (LA329_72 <= LESS_THAN_OPERATOR)) || ((LA329_72 >= LIKE_SYMBOL) && (LA329_72 <= LIMIT_SYMBOL)) || LA329_72 == LOCK_SYMBOL || LA329_72 == LOGICAL_AND_OPERATOR || LA329_72 == LOGICAL_OR_OPERATOR || LA329_72 == MINUS_OPERATOR || ((LA329_72 >= MOD_OPERATOR) && (LA329_72 <= MOD_SYMBOL)) || ((LA329_72 >= MULT_OPERATOR) && (LA329_72 <= NATURAL_SYMBOL)) || ((LA329_72 >= NOT_EQUAL2_OPERATOR) && (LA329_72 <= NOT_SYMBOL)) || LA329_72 == NULL_SAFE_EQUAL_OPERATOR || LA329_72 == ON_SYMBOL || LA329_72 == OPEN_PAR_SYMBOL || ((LA329_72 >= ORDER_SYMBOL) && (LA329_72 <= OR_SYMBOL)) || LA329_72 == PLUS_OPERATOR || LA329_72 == PROCEDURE_SYMBOL || LA329_72 == REGEXP_SYMBOL || LA329_72 == RIGHT_SYMBOL || LA329_72 == SEMICOLON_SYMBOL || LA329_72 == SET_SYMBOL || ((LA329_72 >= SHIFT_LEFT_OPERATOR) && (LA329_72 <= SHIFT_RIGHT_OPERATOR)) || LA329_72 == SINGLE_QUOTED_TEXT || LA329_72 == STRAIGHT_JOIN_SYMBOL || LA329_72 == UNION_SYMBOL || LA329_72 == USING_SYMBOL || LA329_72 == WHERE_SYMBOL || LA329_72 == WITH_SYMBOL || LA329_72 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_72 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2052 = LA(3);
                                if ( (LA329_2052 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_2052 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2592 = LA(4);
                                        if ( (LA329_2592 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12347 = LA(5);
                                                if ( (LA329_12347 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12347 >= ACCOUNT_SYMBOL) && (LA329_12347 <= YEAR_SYMBOL)) || LA329_12347 == BACK_TICK_QUOTED_ID || LA329_12347 == DOUBLE_QUOTED_TEXT || LA329_12347 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12347;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2592 == EOF || ((LA329_2592 >= ACCOUNT_SYMBOL) && (LA329_2592 <= YEAR_SYMBOL)) || LA329_2592 == AND_SYMBOL || LA329_2592 == AS_SYMBOL || LA329_2592 == BACK_TICK_QUOTED_ID || LA329_2592 == BETWEEN_SYMBOL || LA329_2592 == BIN_NUMBER || LA329_2592 == BITWISE_AND_OPERATOR || ((LA329_2592 >= BITWISE_OR_OPERATOR) && (LA329_2592 <= BITWISE_XOR_OPERATOR)) || ((LA329_2592 >= CLOSE_CURLY_SYMBOL) && (LA329_2592 <= COLLATE_SYMBOL)) || LA329_2592 == COMMA_SYMBOL || LA329_2592 == CONCAT_PIPES_SYMBOL || LA329_2592 == CROSS_SYMBOL || ((LA329_2592 >= DIV_OPERATOR) && (LA329_2592 <= DIV_SYMBOL)) || LA329_2592 == DOUBLE_QUOTED_TEXT || LA329_2592 == EQUAL_OPERATOR || LA329_2592 == FOR_SYMBOL || LA329_2592 == FROM_SYMBOL || ((LA329_2592 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2592 <= GREATER_THAN_OPERATOR)) || ((LA329_2592 >= GROUP_SYMBOL) && (LA329_2592 <= HAVING_SYMBOL)) || LA329_2592 == HEX_NUMBER || LA329_2592 == IDENTIFIER || LA329_2592 == INNER_SYMBOL || LA329_2592 == INTO_SYMBOL || LA329_2592 == IN_SYMBOL || LA329_2592 == IS_SYMBOL || ((LA329_2592 >= JOIN_SYMBOL) && (LA329_2592 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2592 >= LEFT_SYMBOL) && (LA329_2592 <= LESS_THAN_OPERATOR)) || ((LA329_2592 >= LIKE_SYMBOL) && (LA329_2592 <= LIMIT_SYMBOL)) || LA329_2592 == LOCK_SYMBOL || LA329_2592 == LOGICAL_AND_OPERATOR || LA329_2592 == LOGICAL_OR_OPERATOR || LA329_2592 == MINUS_OPERATOR || ((LA329_2592 >= MOD_OPERATOR) && (LA329_2592 <= MOD_SYMBOL)) || ((LA329_2592 >= MULT_OPERATOR) && (LA329_2592 <= NATURAL_SYMBOL)) || ((LA329_2592 >= NOT_EQUAL2_OPERATOR) && (LA329_2592 <= NOT_SYMBOL)) || LA329_2592 == NULL_SAFE_EQUAL_OPERATOR || LA329_2592 == ON_SYMBOL || LA329_2592 == OPEN_PAR_SYMBOL || ((LA329_2592 >= ORDER_SYMBOL) && (LA329_2592 <= OR_SYMBOL)) || LA329_2592 == PLUS_OPERATOR || LA329_2592 == PROCEDURE_SYMBOL || LA329_2592 == REGEXP_SYMBOL || LA329_2592 == RIGHT_SYMBOL || LA329_2592 == SEMICOLON_SYMBOL || LA329_2592 == SET_SYMBOL || ((LA329_2592 >= SHIFT_LEFT_OPERATOR) && (LA329_2592 <= SHIFT_RIGHT_OPERATOR)) || LA329_2592 == SINGLE_QUOTED_TEXT || LA329_2592 == STRAIGHT_JOIN_SYMBOL || LA329_2592 == UNION_SYMBOL || LA329_2592 == USING_SYMBOL || LA329_2592 == WHERE_SYMBOL || LA329_2592 == WITH_SYMBOL || LA329_2592 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2592;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2052 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2593 = LA(4);
                                        if ( (LA329_2593 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12401 = LA(5);
                                                if ( (LA329_12401 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12401 >= ACCOUNT_SYMBOL) && (LA329_12401 <= YEAR_SYMBOL)) || LA329_12401 == BACK_TICK_QUOTED_ID || LA329_12401 == DOUBLE_QUOTED_TEXT || LA329_12401 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12401;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2593 == EOF || ((LA329_2593 >= ACCOUNT_SYMBOL) && (LA329_2593 <= YEAR_SYMBOL)) || LA329_2593 == AND_SYMBOL || LA329_2593 == AS_SYMBOL || LA329_2593 == BACK_TICK_QUOTED_ID || LA329_2593 == BETWEEN_SYMBOL || LA329_2593 == BIN_NUMBER || LA329_2593 == BITWISE_AND_OPERATOR || ((LA329_2593 >= BITWISE_OR_OPERATOR) && (LA329_2593 <= BITWISE_XOR_OPERATOR)) || ((LA329_2593 >= CLOSE_CURLY_SYMBOL) && (LA329_2593 <= COLLATE_SYMBOL)) || LA329_2593 == COMMA_SYMBOL || LA329_2593 == CONCAT_PIPES_SYMBOL || LA329_2593 == CROSS_SYMBOL || ((LA329_2593 >= DIV_OPERATOR) && (LA329_2593 <= DIV_SYMBOL)) || LA329_2593 == DOUBLE_QUOTED_TEXT || LA329_2593 == EQUAL_OPERATOR || LA329_2593 == FOR_SYMBOL || LA329_2593 == FROM_SYMBOL || ((LA329_2593 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2593 <= GREATER_THAN_OPERATOR)) || ((LA329_2593 >= GROUP_SYMBOL) && (LA329_2593 <= HAVING_SYMBOL)) || LA329_2593 == HEX_NUMBER || LA329_2593 == IDENTIFIER || LA329_2593 == INNER_SYMBOL || LA329_2593 == INTO_SYMBOL || LA329_2593 == IN_SYMBOL || LA329_2593 == IS_SYMBOL || ((LA329_2593 >= JOIN_SYMBOL) && (LA329_2593 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2593 >= LEFT_SYMBOL) && (LA329_2593 <= LESS_THAN_OPERATOR)) || ((LA329_2593 >= LIKE_SYMBOL) && (LA329_2593 <= LIMIT_SYMBOL)) || LA329_2593 == LOCK_SYMBOL || LA329_2593 == LOGICAL_AND_OPERATOR || LA329_2593 == LOGICAL_OR_OPERATOR || LA329_2593 == MINUS_OPERATOR || ((LA329_2593 >= MOD_OPERATOR) && (LA329_2593 <= MOD_SYMBOL)) || ((LA329_2593 >= MULT_OPERATOR) && (LA329_2593 <= NATURAL_SYMBOL)) || ((LA329_2593 >= NOT_EQUAL2_OPERATOR) && (LA329_2593 <= NOT_SYMBOL)) || LA329_2593 == NULL_SAFE_EQUAL_OPERATOR || LA329_2593 == ON_SYMBOL || LA329_2593 == OPEN_PAR_SYMBOL || ((LA329_2593 >= ORDER_SYMBOL) && (LA329_2593 <= OR_SYMBOL)) || LA329_2593 == PLUS_OPERATOR || LA329_2593 == PROCEDURE_SYMBOL || LA329_2593 == REGEXP_SYMBOL || LA329_2593 == RIGHT_SYMBOL || LA329_2593 == SEMICOLON_SYMBOL || LA329_2593 == SET_SYMBOL || ((LA329_2593 >= SHIFT_LEFT_OPERATOR) && (LA329_2593 <= SHIFT_RIGHT_OPERATOR)) || LA329_2593 == SINGLE_QUOTED_TEXT || LA329_2593 == STRAIGHT_JOIN_SYMBOL || LA329_2593 == UNION_SYMBOL || LA329_2593 == USING_SYMBOL || LA329_2593 == WHERE_SYMBOL || LA329_2593 == WITH_SYMBOL || LA329_2593 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2593;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2052 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2594 = LA(4);
                                        if ( (LA329_2594 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12455 = LA(5);
                                                if ( (LA329_12455 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12455 >= ACCOUNT_SYMBOL) && (LA329_12455 <= YEAR_SYMBOL)) || LA329_12455 == BACK_TICK_QUOTED_ID || LA329_12455 == DOUBLE_QUOTED_TEXT || LA329_12455 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12455;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2594 == EOF || ((LA329_2594 >= ACCOUNT_SYMBOL) && (LA329_2594 <= YEAR_SYMBOL)) || LA329_2594 == AND_SYMBOL || LA329_2594 == AS_SYMBOL || LA329_2594 == BACK_TICK_QUOTED_ID || LA329_2594 == BETWEEN_SYMBOL || LA329_2594 == BIN_NUMBER || LA329_2594 == BITWISE_AND_OPERATOR || ((LA329_2594 >= BITWISE_OR_OPERATOR) && (LA329_2594 <= BITWISE_XOR_OPERATOR)) || ((LA329_2594 >= CLOSE_CURLY_SYMBOL) && (LA329_2594 <= COLLATE_SYMBOL)) || LA329_2594 == COMMA_SYMBOL || LA329_2594 == CONCAT_PIPES_SYMBOL || LA329_2594 == CROSS_SYMBOL || ((LA329_2594 >= DIV_OPERATOR) && (LA329_2594 <= DIV_SYMBOL)) || LA329_2594 == DOUBLE_QUOTED_TEXT || LA329_2594 == EQUAL_OPERATOR || LA329_2594 == FOR_SYMBOL || LA329_2594 == FROM_SYMBOL || ((LA329_2594 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2594 <= GREATER_THAN_OPERATOR)) || ((LA329_2594 >= GROUP_SYMBOL) && (LA329_2594 <= HAVING_SYMBOL)) || LA329_2594 == HEX_NUMBER || LA329_2594 == IDENTIFIER || LA329_2594 == INNER_SYMBOL || LA329_2594 == INTO_SYMBOL || LA329_2594 == IN_SYMBOL || LA329_2594 == IS_SYMBOL || ((LA329_2594 >= JOIN_SYMBOL) && (LA329_2594 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2594 >= LEFT_SYMBOL) && (LA329_2594 <= LESS_THAN_OPERATOR)) || ((LA329_2594 >= LIKE_SYMBOL) && (LA329_2594 <= LIMIT_SYMBOL)) || LA329_2594 == LOCK_SYMBOL || LA329_2594 == LOGICAL_AND_OPERATOR || LA329_2594 == LOGICAL_OR_OPERATOR || LA329_2594 == MINUS_OPERATOR || ((LA329_2594 >= MOD_OPERATOR) && (LA329_2594 <= MOD_SYMBOL)) || ((LA329_2594 >= MULT_OPERATOR) && (LA329_2594 <= NATURAL_SYMBOL)) || ((LA329_2594 >= NOT_EQUAL2_OPERATOR) && (LA329_2594 <= NOT_SYMBOL)) || LA329_2594 == NULL_SAFE_EQUAL_OPERATOR || LA329_2594 == ON_SYMBOL || LA329_2594 == OPEN_PAR_SYMBOL || ((LA329_2594 >= ORDER_SYMBOL) && (LA329_2594 <= OR_SYMBOL)) || LA329_2594 == PLUS_OPERATOR || LA329_2594 == PROCEDURE_SYMBOL || LA329_2594 == REGEXP_SYMBOL || LA329_2594 == RIGHT_SYMBOL || LA329_2594 == SEMICOLON_SYMBOL || LA329_2594 == SET_SYMBOL || ((LA329_2594 >= SHIFT_LEFT_OPERATOR) && (LA329_2594 <= SHIFT_RIGHT_OPERATOR)) || LA329_2594 == SINGLE_QUOTED_TEXT || LA329_2594 == STRAIGHT_JOIN_SYMBOL || LA329_2594 == UNION_SYMBOL || LA329_2594 == USING_SYMBOL || LA329_2594 == WHERE_SYMBOL || LA329_2594 == WITH_SYMBOL || LA329_2594 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2594;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2052 >= ACTION_SYMBOL) && (LA329_2052 <= SHARE_SYMBOL)) || ((LA329_2052 >= SLOW_SYMBOL) && (LA329_2052 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2595 = LA(4);
                                        if ( (LA329_2595 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12509 = LA(5);
                                                if ( (LA329_12509 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12509 >= ACCOUNT_SYMBOL) && (LA329_12509 <= YEAR_SYMBOL)) || LA329_12509 == BACK_TICK_QUOTED_ID || LA329_12509 == DOUBLE_QUOTED_TEXT || LA329_12509 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12509;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2595 == EOF || ((LA329_2595 >= ACCOUNT_SYMBOL) && (LA329_2595 <= YEAR_SYMBOL)) || LA329_2595 == AND_SYMBOL || LA329_2595 == AS_SYMBOL || LA329_2595 == BACK_TICK_QUOTED_ID || LA329_2595 == BETWEEN_SYMBOL || LA329_2595 == BIN_NUMBER || LA329_2595 == BITWISE_AND_OPERATOR || ((LA329_2595 >= BITWISE_OR_OPERATOR) && (LA329_2595 <= BITWISE_XOR_OPERATOR)) || ((LA329_2595 >= CLOSE_CURLY_SYMBOL) && (LA329_2595 <= COLLATE_SYMBOL)) || LA329_2595 == COMMA_SYMBOL || LA329_2595 == CONCAT_PIPES_SYMBOL || LA329_2595 == CROSS_SYMBOL || ((LA329_2595 >= DIV_OPERATOR) && (LA329_2595 <= DIV_SYMBOL)) || LA329_2595 == DOUBLE_QUOTED_TEXT || LA329_2595 == EQUAL_OPERATOR || LA329_2595 == FOR_SYMBOL || LA329_2595 == FROM_SYMBOL || ((LA329_2595 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2595 <= GREATER_THAN_OPERATOR)) || ((LA329_2595 >= GROUP_SYMBOL) && (LA329_2595 <= HAVING_SYMBOL)) || LA329_2595 == HEX_NUMBER || LA329_2595 == IDENTIFIER || LA329_2595 == INNER_SYMBOL || LA329_2595 == INTO_SYMBOL || LA329_2595 == IN_SYMBOL || LA329_2595 == IS_SYMBOL || ((LA329_2595 >= JOIN_SYMBOL) && (LA329_2595 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2595 >= LEFT_SYMBOL) && (LA329_2595 <= LESS_THAN_OPERATOR)) || ((LA329_2595 >= LIKE_SYMBOL) && (LA329_2595 <= LIMIT_SYMBOL)) || LA329_2595 == LOCK_SYMBOL || LA329_2595 == LOGICAL_AND_OPERATOR || LA329_2595 == LOGICAL_OR_OPERATOR || LA329_2595 == MINUS_OPERATOR || ((LA329_2595 >= MOD_OPERATOR) && (LA329_2595 <= MOD_SYMBOL)) || ((LA329_2595 >= MULT_OPERATOR) && (LA329_2595 <= NATURAL_SYMBOL)) || ((LA329_2595 >= NOT_EQUAL2_OPERATOR) && (LA329_2595 <= NOT_SYMBOL)) || LA329_2595 == NULL_SAFE_EQUAL_OPERATOR || LA329_2595 == ON_SYMBOL || LA329_2595 == OPEN_PAR_SYMBOL || ((LA329_2595 >= ORDER_SYMBOL) && (LA329_2595 <= OR_SYMBOL)) || LA329_2595 == PLUS_OPERATOR || LA329_2595 == PROCEDURE_SYMBOL || LA329_2595 == REGEXP_SYMBOL || LA329_2595 == RIGHT_SYMBOL || LA329_2595 == SEMICOLON_SYMBOL || LA329_2595 == SET_SYMBOL || ((LA329_2595 >= SHIFT_LEFT_OPERATOR) && (LA329_2595 <= SHIFT_RIGHT_OPERATOR)) || LA329_2595 == SINGLE_QUOTED_TEXT || LA329_2595 == STRAIGHT_JOIN_SYMBOL || LA329_2595 == UNION_SYMBOL || LA329_2595 == USING_SYMBOL || LA329_2595 == WHERE_SYMBOL || LA329_2595 == WITH_SYMBOL || LA329_2595 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2595;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2052 >= ACCOUNT_SYMBOL) && (LA329_2052 <= XA_SYMBOL)) || LA329_2052 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2596 = LA(4);
                                        if ( (LA329_2596 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12563 = LA(5);
                                                if ( (LA329_12563 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12563 >= ACCOUNT_SYMBOL) && (LA329_12563 <= YEAR_SYMBOL)) || LA329_12563 == BACK_TICK_QUOTED_ID || LA329_12563 == DOUBLE_QUOTED_TEXT || LA329_12563 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12563;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2596 == EOF || ((LA329_2596 >= ACCOUNT_SYMBOL) && (LA329_2596 <= YEAR_SYMBOL)) || LA329_2596 == AND_SYMBOL || LA329_2596 == AS_SYMBOL || LA329_2596 == BACK_TICK_QUOTED_ID || LA329_2596 == BETWEEN_SYMBOL || LA329_2596 == BIN_NUMBER || LA329_2596 == BITWISE_AND_OPERATOR || ((LA329_2596 >= BITWISE_OR_OPERATOR) && (LA329_2596 <= BITWISE_XOR_OPERATOR)) || ((LA329_2596 >= CLOSE_CURLY_SYMBOL) && (LA329_2596 <= COLLATE_SYMBOL)) || LA329_2596 == COMMA_SYMBOL || LA329_2596 == CONCAT_PIPES_SYMBOL || LA329_2596 == CROSS_SYMBOL || ((LA329_2596 >= DIV_OPERATOR) && (LA329_2596 <= DIV_SYMBOL)) || LA329_2596 == DOUBLE_QUOTED_TEXT || LA329_2596 == EQUAL_OPERATOR || LA329_2596 == FOR_SYMBOL || LA329_2596 == FROM_SYMBOL || ((LA329_2596 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2596 <= GREATER_THAN_OPERATOR)) || ((LA329_2596 >= GROUP_SYMBOL) && (LA329_2596 <= HAVING_SYMBOL)) || LA329_2596 == HEX_NUMBER || LA329_2596 == IDENTIFIER || LA329_2596 == INNER_SYMBOL || LA329_2596 == INTO_SYMBOL || LA329_2596 == IN_SYMBOL || LA329_2596 == IS_SYMBOL || ((LA329_2596 >= JOIN_SYMBOL) && (LA329_2596 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2596 >= LEFT_SYMBOL) && (LA329_2596 <= LESS_THAN_OPERATOR)) || ((LA329_2596 >= LIKE_SYMBOL) && (LA329_2596 <= LIMIT_SYMBOL)) || LA329_2596 == LOCK_SYMBOL || LA329_2596 == LOGICAL_AND_OPERATOR || LA329_2596 == LOGICAL_OR_OPERATOR || LA329_2596 == MINUS_OPERATOR || ((LA329_2596 >= MOD_OPERATOR) && (LA329_2596 <= MOD_SYMBOL)) || ((LA329_2596 >= MULT_OPERATOR) && (LA329_2596 <= NATURAL_SYMBOL)) || ((LA329_2596 >= NOT_EQUAL2_OPERATOR) && (LA329_2596 <= NOT_SYMBOL)) || LA329_2596 == NULL_SAFE_EQUAL_OPERATOR || LA329_2596 == ON_SYMBOL || LA329_2596 == OPEN_PAR_SYMBOL || ((LA329_2596 >= ORDER_SYMBOL) && (LA329_2596 <= OR_SYMBOL)) || LA329_2596 == PLUS_OPERATOR || LA329_2596 == PROCEDURE_SYMBOL || LA329_2596 == REGEXP_SYMBOL || LA329_2596 == RIGHT_SYMBOL || LA329_2596 == SEMICOLON_SYMBOL || LA329_2596 == SET_SYMBOL || ((LA329_2596 >= SHIFT_LEFT_OPERATOR) && (LA329_2596 <= SHIFT_RIGHT_OPERATOR)) || LA329_2596 == SINGLE_QUOTED_TEXT || LA329_2596 == STRAIGHT_JOIN_SYMBOL || LA329_2596 == UNION_SYMBOL || LA329_2596 == USING_SYMBOL || LA329_2596 == WHERE_SYMBOL || LA329_2596 == WITH_SYMBOL || LA329_2596 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2596;


                                            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  = 329;
                                    EXCEPTION->state        = 2052;


                                    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  = 329;
                            EXCEPTION->state        = 72;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == POLYGON_SYMBOL))
                {
                    {
                        int LA329_73 = LA(2);
                        if ( (LA329_73 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2105 = LA(3);
                                if ( (LA329_2105 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_2105 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2598 = LA(4);
                                        if ( (LA329_2598 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12617 = LA(5);
                                                if ( (LA329_12617 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12617 >= ACCOUNT_SYMBOL) && (LA329_12617 <= YEAR_SYMBOL)) || LA329_12617 == BACK_TICK_QUOTED_ID || LA329_12617 == DOUBLE_QUOTED_TEXT || LA329_12617 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12617;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2598 == EOF || ((LA329_2598 >= ACCOUNT_SYMBOL) && (LA329_2598 <= YEAR_SYMBOL)) || LA329_2598 == AND_SYMBOL || LA329_2598 == AS_SYMBOL || LA329_2598 == BACK_TICK_QUOTED_ID || LA329_2598 == BETWEEN_SYMBOL || LA329_2598 == BIN_NUMBER || LA329_2598 == BITWISE_AND_OPERATOR || ((LA329_2598 >= BITWISE_OR_OPERATOR) && (LA329_2598 <= BITWISE_XOR_OPERATOR)) || ((LA329_2598 >= CLOSE_CURLY_SYMBOL) && (LA329_2598 <= COLLATE_SYMBOL)) || LA329_2598 == COMMA_SYMBOL || LA329_2598 == CONCAT_PIPES_SYMBOL || LA329_2598 == CROSS_SYMBOL || ((LA329_2598 >= DIV_OPERATOR) && (LA329_2598 <= DIV_SYMBOL)) || LA329_2598 == DOUBLE_QUOTED_TEXT || LA329_2598 == EQUAL_OPERATOR || LA329_2598 == FOR_SYMBOL || LA329_2598 == FROM_SYMBOL || ((LA329_2598 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2598 <= GREATER_THAN_OPERATOR)) || ((LA329_2598 >= GROUP_SYMBOL) && (LA329_2598 <= HAVING_SYMBOL)) || LA329_2598 == HEX_NUMBER || LA329_2598 == IDENTIFIER || LA329_2598 == INNER_SYMBOL || LA329_2598 == INTO_SYMBOL || LA329_2598 == IN_SYMBOL || LA329_2598 == IS_SYMBOL || ((LA329_2598 >= JOIN_SYMBOL) && (LA329_2598 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2598 >= LEFT_SYMBOL) && (LA329_2598 <= LESS_THAN_OPERATOR)) || ((LA329_2598 >= LIKE_SYMBOL) && (LA329_2598 <= LIMIT_SYMBOL)) || LA329_2598 == LOCK_SYMBOL || LA329_2598 == LOGICAL_AND_OPERATOR || LA329_2598 == LOGICAL_OR_OPERATOR || LA329_2598 == MINUS_OPERATOR || ((LA329_2598 >= MOD_OPERATOR) && (LA329_2598 <= MOD_SYMBOL)) || ((LA329_2598 >= MULT_OPERATOR) && (LA329_2598 <= NATURAL_SYMBOL)) || ((LA329_2598 >= NOT_EQUAL2_OPERATOR) && (LA329_2598 <= NOT_SYMBOL)) || LA329_2598 == NULL_SAFE_EQUAL_OPERATOR || LA329_2598 == ON_SYMBOL || LA329_2598 == OPEN_PAR_SYMBOL || ((LA329_2598 >= ORDER_SYMBOL) && (LA329_2598 <= OR_SYMBOL)) || LA329_2598 == PLUS_OPERATOR || LA329_2598 == PROCEDURE_SYMBOL || LA329_2598 == REGEXP_SYMBOL || LA329_2598 == RIGHT_SYMBOL || LA329_2598 == SEMICOLON_SYMBOL || LA329_2598 == SET_SYMBOL || ((LA329_2598 >= SHIFT_LEFT_OPERATOR) && (LA329_2598 <= SHIFT_RIGHT_OPERATOR)) || LA329_2598 == SINGLE_QUOTED_TEXT || LA329_2598 == STRAIGHT_JOIN_SYMBOL || LA329_2598 == UNION_SYMBOL || LA329_2598 == USING_SYMBOL || LA329_2598 == WHERE_SYMBOL || LA329_2598 == WITH_SYMBOL || LA329_2598 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2598;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2105 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2599 = LA(4);
                                        if ( (LA329_2599 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12671 = LA(5);
                                                if ( (LA329_12671 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12671 >= ACCOUNT_SYMBOL) && (LA329_12671 <= YEAR_SYMBOL)) || LA329_12671 == BACK_TICK_QUOTED_ID || LA329_12671 == DOUBLE_QUOTED_TEXT || LA329_12671 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12671;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2599 == EOF || ((LA329_2599 >= ACCOUNT_SYMBOL) && (LA329_2599 <= YEAR_SYMBOL)) || LA329_2599 == AND_SYMBOL || LA329_2599 == AS_SYMBOL || LA329_2599 == BACK_TICK_QUOTED_ID || LA329_2599 == BETWEEN_SYMBOL || LA329_2599 == BIN_NUMBER || LA329_2599 == BITWISE_AND_OPERATOR || ((LA329_2599 >= BITWISE_OR_OPERATOR) && (LA329_2599 <= BITWISE_XOR_OPERATOR)) || ((LA329_2599 >= CLOSE_CURLY_SYMBOL) && (LA329_2599 <= COLLATE_SYMBOL)) || LA329_2599 == COMMA_SYMBOL || LA329_2599 == CONCAT_PIPES_SYMBOL || LA329_2599 == CROSS_SYMBOL || ((LA329_2599 >= DIV_OPERATOR) && (LA329_2599 <= DIV_SYMBOL)) || LA329_2599 == DOUBLE_QUOTED_TEXT || LA329_2599 == EQUAL_OPERATOR || LA329_2599 == FOR_SYMBOL || LA329_2599 == FROM_SYMBOL || ((LA329_2599 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2599 <= GREATER_THAN_OPERATOR)) || ((LA329_2599 >= GROUP_SYMBOL) && (LA329_2599 <= HAVING_SYMBOL)) || LA329_2599 == HEX_NUMBER || LA329_2599 == IDENTIFIER || LA329_2599 == INNER_SYMBOL || LA329_2599 == INTO_SYMBOL || LA329_2599 == IN_SYMBOL || LA329_2599 == IS_SYMBOL || ((LA329_2599 >= JOIN_SYMBOL) && (LA329_2599 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2599 >= LEFT_SYMBOL) && (LA329_2599 <= LESS_THAN_OPERATOR)) || ((LA329_2599 >= LIKE_SYMBOL) && (LA329_2599 <= LIMIT_SYMBOL)) || LA329_2599 == LOCK_SYMBOL || LA329_2599 == LOGICAL_AND_OPERATOR || LA329_2599 == LOGICAL_OR_OPERATOR || LA329_2599 == MINUS_OPERATOR || ((LA329_2599 >= MOD_OPERATOR) && (LA329_2599 <= MOD_SYMBOL)) || ((LA329_2599 >= MULT_OPERATOR) && (LA329_2599 <= NATURAL_SYMBOL)) || ((LA329_2599 >= NOT_EQUAL2_OPERATOR) && (LA329_2599 <= NOT_SYMBOL)) || LA329_2599 == NULL_SAFE_EQUAL_OPERATOR || LA329_2599 == ON_SYMBOL || LA329_2599 == OPEN_PAR_SYMBOL || ((LA329_2599 >= ORDER_SYMBOL) && (LA329_2599 <= OR_SYMBOL)) || LA329_2599 == PLUS_OPERATOR || LA329_2599 == PROCEDURE_SYMBOL || LA329_2599 == REGEXP_SYMBOL || LA329_2599 == RIGHT_SYMBOL || LA329_2599 == SEMICOLON_SYMBOL || LA329_2599 == SET_SYMBOL || ((LA329_2599 >= SHIFT_LEFT_OPERATOR) && (LA329_2599 <= SHIFT_RIGHT_OPERATOR)) || LA329_2599 == SINGLE_QUOTED_TEXT || LA329_2599 == STRAIGHT_JOIN_SYMBOL || LA329_2599 == UNION_SYMBOL || LA329_2599 == USING_SYMBOL || LA329_2599 == WHERE_SYMBOL || LA329_2599 == WITH_SYMBOL || LA329_2599 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2599;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2105 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2600 = LA(4);
                                        if ( (LA329_2600 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12725 = LA(5);
                                                if ( (LA329_12725 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12725 >= ACCOUNT_SYMBOL) && (LA329_12725 <= YEAR_SYMBOL)) || LA329_12725 == BACK_TICK_QUOTED_ID || LA329_12725 == DOUBLE_QUOTED_TEXT || LA329_12725 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12725;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2600 == EOF || ((LA329_2600 >= ACCOUNT_SYMBOL) && (LA329_2600 <= YEAR_SYMBOL)) || LA329_2600 == AND_SYMBOL || LA329_2600 == AS_SYMBOL || LA329_2600 == BACK_TICK_QUOTED_ID || LA329_2600 == BETWEEN_SYMBOL || LA329_2600 == BIN_NUMBER || LA329_2600 == BITWISE_AND_OPERATOR || ((LA329_2600 >= BITWISE_OR_OPERATOR) && (LA329_2600 <= BITWISE_XOR_OPERATOR)) || ((LA329_2600 >= CLOSE_CURLY_SYMBOL) && (LA329_2600 <= COLLATE_SYMBOL)) || LA329_2600 == COMMA_SYMBOL || LA329_2600 == CONCAT_PIPES_SYMBOL || LA329_2600 == CROSS_SYMBOL || ((LA329_2600 >= DIV_OPERATOR) && (LA329_2600 <= DIV_SYMBOL)) || LA329_2600 == DOUBLE_QUOTED_TEXT || LA329_2600 == EQUAL_OPERATOR || LA329_2600 == FOR_SYMBOL || LA329_2600 == FROM_SYMBOL || ((LA329_2600 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2600 <= GREATER_THAN_OPERATOR)) || ((LA329_2600 >= GROUP_SYMBOL) && (LA329_2600 <= HAVING_SYMBOL)) || LA329_2600 == HEX_NUMBER || LA329_2600 == IDENTIFIER || LA329_2600 == INNER_SYMBOL || LA329_2600 == INTO_SYMBOL || LA329_2600 == IN_SYMBOL || LA329_2600 == IS_SYMBOL || ((LA329_2600 >= JOIN_SYMBOL) && (LA329_2600 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2600 >= LEFT_SYMBOL) && (LA329_2600 <= LESS_THAN_OPERATOR)) || ((LA329_2600 >= LIKE_SYMBOL) && (LA329_2600 <= LIMIT_SYMBOL)) || LA329_2600 == LOCK_SYMBOL || LA329_2600 == LOGICAL_AND_OPERATOR || LA329_2600 == LOGICAL_OR_OPERATOR || LA329_2600 == MINUS_OPERATOR || ((LA329_2600 >= MOD_OPERATOR) && (LA329_2600 <= MOD_SYMBOL)) || ((LA329_2600 >= MULT_OPERATOR) && (LA329_2600 <= NATURAL_SYMBOL)) || ((LA329_2600 >= NOT_EQUAL2_OPERATOR) && (LA329_2600 <= NOT_SYMBOL)) || LA329_2600 == NULL_SAFE_EQUAL_OPERATOR || LA329_2600 == ON_SYMBOL || LA329_2600 == OPEN_PAR_SYMBOL || ((LA329_2600 >= ORDER_SYMBOL) && (LA329_2600 <= OR_SYMBOL)) || LA329_2600 == PLUS_OPERATOR || LA329_2600 == PROCEDURE_SYMBOL || LA329_2600 == REGEXP_SYMBOL || LA329_2600 == RIGHT_SYMBOL || LA329_2600 == SEMICOLON_SYMBOL || LA329_2600 == SET_SYMBOL || ((LA329_2600 >= SHIFT_LEFT_OPERATOR) && (LA329_2600 <= SHIFT_RIGHT_OPERATOR)) || LA329_2600 == SINGLE_QUOTED_TEXT || LA329_2600 == STRAIGHT_JOIN_SYMBOL || LA329_2600 == UNION_SYMBOL || LA329_2600 == USING_SYMBOL || LA329_2600 == WHERE_SYMBOL || LA329_2600 == WITH_SYMBOL || LA329_2600 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2600;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2105 >= ACTION_SYMBOL) && (LA329_2105 <= SHARE_SYMBOL)) || ((LA329_2105 >= SLOW_SYMBOL) && (LA329_2105 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2601 = LA(4);
                                        if ( (LA329_2601 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12779 = LA(5);
                                                if ( (LA329_12779 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12779 >= ACCOUNT_SYMBOL) && (LA329_12779 <= YEAR_SYMBOL)) || LA329_12779 == BACK_TICK_QUOTED_ID || LA329_12779 == DOUBLE_QUOTED_TEXT || LA329_12779 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12779;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2601 == EOF || ((LA329_2601 >= ACCOUNT_SYMBOL) && (LA329_2601 <= YEAR_SYMBOL)) || LA329_2601 == AND_SYMBOL || LA329_2601 == AS_SYMBOL || LA329_2601 == BACK_TICK_QUOTED_ID || LA329_2601 == BETWEEN_SYMBOL || LA329_2601 == BIN_NUMBER || LA329_2601 == BITWISE_AND_OPERATOR || ((LA329_2601 >= BITWISE_OR_OPERATOR) && (LA329_2601 <= BITWISE_XOR_OPERATOR)) || ((LA329_2601 >= CLOSE_CURLY_SYMBOL) && (LA329_2601 <= COLLATE_SYMBOL)) || LA329_2601 == COMMA_SYMBOL || LA329_2601 == CONCAT_PIPES_SYMBOL || LA329_2601 == CROSS_SYMBOL || ((LA329_2601 >= DIV_OPERATOR) && (LA329_2601 <= DIV_SYMBOL)) || LA329_2601 == DOUBLE_QUOTED_TEXT || LA329_2601 == EQUAL_OPERATOR || LA329_2601 == FOR_SYMBOL || LA329_2601 == FROM_SYMBOL || ((LA329_2601 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2601 <= GREATER_THAN_OPERATOR)) || ((LA329_2601 >= GROUP_SYMBOL) && (LA329_2601 <= HAVING_SYMBOL)) || LA329_2601 == HEX_NUMBER || LA329_2601 == IDENTIFIER || LA329_2601 == INNER_SYMBOL || LA329_2601 == INTO_SYMBOL || LA329_2601 == IN_SYMBOL || LA329_2601 == IS_SYMBOL || ((LA329_2601 >= JOIN_SYMBOL) && (LA329_2601 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2601 >= LEFT_SYMBOL) && (LA329_2601 <= LESS_THAN_OPERATOR)) || ((LA329_2601 >= LIKE_SYMBOL) && (LA329_2601 <= LIMIT_SYMBOL)) || LA329_2601 == LOCK_SYMBOL || LA329_2601 == LOGICAL_AND_OPERATOR || LA329_2601 == LOGICAL_OR_OPERATOR || LA329_2601 == MINUS_OPERATOR || ((LA329_2601 >= MOD_OPERATOR) && (LA329_2601 <= MOD_SYMBOL)) || ((LA329_2601 >= MULT_OPERATOR) && (LA329_2601 <= NATURAL_SYMBOL)) || ((LA329_2601 >= NOT_EQUAL2_OPERATOR) && (LA329_2601 <= NOT_SYMBOL)) || LA329_2601 == NULL_SAFE_EQUAL_OPERATOR || LA329_2601 == ON_SYMBOL || LA329_2601 == OPEN_PAR_SYMBOL || ((LA329_2601 >= ORDER_SYMBOL) && (LA329_2601 <= OR_SYMBOL)) || LA329_2601 == PLUS_OPERATOR || LA329_2601 == PROCEDURE_SYMBOL || LA329_2601 == REGEXP_SYMBOL || LA329_2601 == RIGHT_SYMBOL || LA329_2601 == SEMICOLON_SYMBOL || LA329_2601 == SET_SYMBOL || ((LA329_2601 >= SHIFT_LEFT_OPERATOR) && (LA329_2601 <= SHIFT_RIGHT_OPERATOR)) || LA329_2601 == SINGLE_QUOTED_TEXT || LA329_2601 == STRAIGHT_JOIN_SYMBOL || LA329_2601 == UNION_SYMBOL || LA329_2601 == USING_SYMBOL || LA329_2601 == WHERE_SYMBOL || LA329_2601 == WITH_SYMBOL || LA329_2601 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2601;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2105 >= ACCOUNT_SYMBOL) && (LA329_2105 <= XA_SYMBOL)) || LA329_2105 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2602 = LA(4);
                                        if ( (LA329_2602 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12833 = LA(5);
                                                if ( (LA329_12833 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12833 >= ACCOUNT_SYMBOL) && (LA329_12833 <= YEAR_SYMBOL)) || LA329_12833 == BACK_TICK_QUOTED_ID || LA329_12833 == DOUBLE_QUOTED_TEXT || LA329_12833 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12833;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2602 == EOF || ((LA329_2602 >= ACCOUNT_SYMBOL) && (LA329_2602 <= YEAR_SYMBOL)) || LA329_2602 == AND_SYMBOL || LA329_2602 == AS_SYMBOL || LA329_2602 == BACK_TICK_QUOTED_ID || LA329_2602 == BETWEEN_SYMBOL || LA329_2602 == BIN_NUMBER || LA329_2602 == BITWISE_AND_OPERATOR || ((LA329_2602 >= BITWISE_OR_OPERATOR) && (LA329_2602 <= BITWISE_XOR_OPERATOR)) || ((LA329_2602 >= CLOSE_CURLY_SYMBOL) && (LA329_2602 <= COLLATE_SYMBOL)) || LA329_2602 == COMMA_SYMBOL || LA329_2602 == CONCAT_PIPES_SYMBOL || LA329_2602 == CROSS_SYMBOL || ((LA329_2602 >= DIV_OPERATOR) && (LA329_2602 <= DIV_SYMBOL)) || LA329_2602 == DOUBLE_QUOTED_TEXT || LA329_2602 == EQUAL_OPERATOR || LA329_2602 == FOR_SYMBOL || LA329_2602 == FROM_SYMBOL || ((LA329_2602 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2602 <= GREATER_THAN_OPERATOR)) || ((LA329_2602 >= GROUP_SYMBOL) && (LA329_2602 <= HAVING_SYMBOL)) || LA329_2602 == HEX_NUMBER || LA329_2602 == IDENTIFIER || LA329_2602 == INNER_SYMBOL || LA329_2602 == INTO_SYMBOL || LA329_2602 == IN_SYMBOL || LA329_2602 == IS_SYMBOL || ((LA329_2602 >= JOIN_SYMBOL) && (LA329_2602 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2602 >= LEFT_SYMBOL) && (LA329_2602 <= LESS_THAN_OPERATOR)) || ((LA329_2602 >= LIKE_SYMBOL) && (LA329_2602 <= LIMIT_SYMBOL)) || LA329_2602 == LOCK_SYMBOL || LA329_2602 == LOGICAL_AND_OPERATOR || LA329_2602 == LOGICAL_OR_OPERATOR || LA329_2602 == MINUS_OPERATOR || ((LA329_2602 >= MOD_OPERATOR) && (LA329_2602 <= MOD_SYMBOL)) || ((LA329_2602 >= MULT_OPERATOR) && (LA329_2602 <= NATURAL_SYMBOL)) || ((LA329_2602 >= NOT_EQUAL2_OPERATOR) && (LA329_2602 <= NOT_SYMBOL)) || LA329_2602 == NULL_SAFE_EQUAL_OPERATOR || LA329_2602 == ON_SYMBOL || LA329_2602 == OPEN_PAR_SYMBOL || ((LA329_2602 >= ORDER_SYMBOL) && (LA329_2602 <= OR_SYMBOL)) || LA329_2602 == PLUS_OPERATOR || LA329_2602 == PROCEDURE_SYMBOL || LA329_2602 == REGEXP_SYMBOL || LA329_2602 == RIGHT_SYMBOL || LA329_2602 == SEMICOLON_SYMBOL || LA329_2602 == SET_SYMBOL || ((LA329_2602 >= SHIFT_LEFT_OPERATOR) && (LA329_2602 <= SHIFT_RIGHT_OPERATOR)) || LA329_2602 == SINGLE_QUOTED_TEXT || LA329_2602 == STRAIGHT_JOIN_SYMBOL || LA329_2602 == UNION_SYMBOL || LA329_2602 == USING_SYMBOL || LA329_2602 == WHERE_SYMBOL || LA329_2602 == WITH_SYMBOL || LA329_2602 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2602;


                                            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  = 329;
                                    EXCEPTION->state        = 2105;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_73 == EOF || ((LA329_73 >= ACCOUNT_SYMBOL) && (LA329_73 <= YEAR_SYMBOL)) || LA329_73 == AND_SYMBOL || LA329_73 == AS_SYMBOL || LA329_73 == BACK_TICK_QUOTED_ID || LA329_73 == BETWEEN_SYMBOL || LA329_73 == BIN_NUMBER || LA329_73 == BITWISE_AND_OPERATOR || ((LA329_73 >= BITWISE_OR_OPERATOR) && (LA329_73 <= BITWISE_XOR_OPERATOR)) || ((LA329_73 >= CLOSE_CURLY_SYMBOL) && (LA329_73 <= COLLATE_SYMBOL)) || LA329_73 == COMMA_SYMBOL || LA329_73 == CONCAT_PIPES_SYMBOL || LA329_73 == CROSS_SYMBOL || ((LA329_73 >= DIV_OPERATOR) && (LA329_73 <= DIV_SYMBOL)) || LA329_73 == DOUBLE_QUOTED_TEXT || LA329_73 == EQUAL_OPERATOR || LA329_73 == FOR_SYMBOL || LA329_73 == FROM_SYMBOL || ((LA329_73 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_73 <= GREATER_THAN_OPERATOR)) || ((LA329_73 >= GROUP_SYMBOL) && (LA329_73 <= HAVING_SYMBOL)) || LA329_73 == HEX_NUMBER || LA329_73 == IDENTIFIER || LA329_73 == INNER_SYMBOL || LA329_73 == INTO_SYMBOL || LA329_73 == IN_SYMBOL || LA329_73 == IS_SYMBOL || ((LA329_73 >= JOIN_SYMBOL) && (LA329_73 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_73 >= LEFT_SYMBOL) && (LA329_73 <= LESS_THAN_OPERATOR)) || ((LA329_73 >= LIKE_SYMBOL) && (LA329_73 <= LIMIT_SYMBOL)) || LA329_73 == LOCK_SYMBOL || LA329_73 == LOGICAL_AND_OPERATOR || LA329_73 == LOGICAL_OR_OPERATOR || LA329_73 == MINUS_OPERATOR || ((LA329_73 >= MOD_OPERATOR) && (LA329_73 <= MOD_SYMBOL)) || ((LA329_73 >= MULT_OPERATOR) && (LA329_73 <= NATURAL_SYMBOL)) || ((LA329_73 >= NOT_EQUAL2_OPERATOR) && (LA329_73 <= NOT_SYMBOL)) || LA329_73 == NULL_SAFE_EQUAL_OPERATOR || LA329_73 == ON_SYMBOL || LA329_73 == OPEN_PAR_SYMBOL || ((LA329_73 >= ORDER_SYMBOL) && (LA329_73 <= OR_SYMBOL)) || LA329_73 == PLUS_OPERATOR || LA329_73 == PROCEDURE_SYMBOL || LA329_73 == REGEXP_SYMBOL || LA329_73 == RIGHT_SYMBOL || LA329_73 == SEMICOLON_SYMBOL || LA329_73 == SET_SYMBOL || ((LA329_73 >= SHIFT_LEFT_OPERATOR) && (LA329_73 <= SHIFT_RIGHT_OPERATOR)) || LA329_73 == SINGLE_QUOTED_TEXT || LA329_73 == STRAIGHT_JOIN_SYMBOL || LA329_73 == UNION_SYMBOL || LA329_73 == USING_SYMBOL || LA329_73 == WHERE_SYMBOL || LA329_73 == WITH_SYMBOL || LA329_73 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 73;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == AVG_SYMBOL))
                {
                    {
                        int LA329_74 = LA(2);
                        if ( (LA329_74 == EOF || ((LA329_74 >= ACCOUNT_SYMBOL) && (LA329_74 <= YEAR_SYMBOL)) || LA329_74 == AND_SYMBOL || LA329_74 == AS_SYMBOL || LA329_74 == BACK_TICK_QUOTED_ID || LA329_74 == BETWEEN_SYMBOL || LA329_74 == BIN_NUMBER || LA329_74 == BITWISE_AND_OPERATOR || ((LA329_74 >= BITWISE_OR_OPERATOR) && (LA329_74 <= BITWISE_XOR_OPERATOR)) || ((LA329_74 >= CLOSE_CURLY_SYMBOL) && (LA329_74 <= COLLATE_SYMBOL)) || LA329_74 == COMMA_SYMBOL || LA329_74 == CONCAT_PIPES_SYMBOL || LA329_74 == CROSS_SYMBOL || ((LA329_74 >= DIV_OPERATOR) && (LA329_74 <= DIV_SYMBOL)) || LA329_74 == DOUBLE_QUOTED_TEXT || LA329_74 == EQUAL_OPERATOR || LA329_74 == FOR_SYMBOL || LA329_74 == FROM_SYMBOL || ((LA329_74 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_74 <= GREATER_THAN_OPERATOR)) || ((LA329_74 >= GROUP_SYMBOL) && (LA329_74 <= HAVING_SYMBOL)) || LA329_74 == HEX_NUMBER || LA329_74 == IDENTIFIER || LA329_74 == INNER_SYMBOL || LA329_74 == INTO_SYMBOL || LA329_74 == IN_SYMBOL || LA329_74 == IS_SYMBOL || ((LA329_74 >= JOIN_SYMBOL) && (LA329_74 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_74 >= LEFT_SYMBOL) && (LA329_74 <= LESS_THAN_OPERATOR)) || ((LA329_74 >= LIKE_SYMBOL) && (LA329_74 <= LIMIT_SYMBOL)) || LA329_74 == LOCK_SYMBOL || LA329_74 == LOGICAL_AND_OPERATOR || LA329_74 == LOGICAL_OR_OPERATOR || LA329_74 == MINUS_OPERATOR || ((LA329_74 >= MOD_OPERATOR) && (LA329_74 <= MOD_SYMBOL)) || ((LA329_74 >= MULT_OPERATOR) && (LA329_74 <= NATURAL_SYMBOL)) || ((LA329_74 >= NOT_EQUAL2_OPERATOR) && (LA329_74 <= NOT_SYMBOL)) || LA329_74 == NULL_SAFE_EQUAL_OPERATOR || LA329_74 == ON_SYMBOL || LA329_74 == OPEN_PAR_SYMBOL || ((LA329_74 >= ORDER_SYMBOL) && (LA329_74 <= OR_SYMBOL)) || LA329_74 == PLUS_OPERATOR || LA329_74 == PROCEDURE_SYMBOL || LA329_74 == REGEXP_SYMBOL || LA329_74 == RIGHT_SYMBOL || LA329_74 == SEMICOLON_SYMBOL || LA329_74 == SET_SYMBOL || ((LA329_74 >= SHIFT_LEFT_OPERATOR) && (LA329_74 <= SHIFT_RIGHT_OPERATOR)) || LA329_74 == SINGLE_QUOTED_TEXT || LA329_74 == STRAIGHT_JOIN_SYMBOL || LA329_74 == UNION_SYMBOL || LA329_74 == USING_SYMBOL || LA329_74 == WHERE_SYMBOL || LA329_74 == WITH_SYMBOL || LA329_74 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_74 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2160 = LA(3);
                                if ( (LA329_2160 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_2160 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2604 = LA(4);
                                        if ( (LA329_2604 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12887 = LA(5);
                                                if ( (LA329_12887 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12887 >= ACCOUNT_SYMBOL) && (LA329_12887 <= YEAR_SYMBOL)) || LA329_12887 == BACK_TICK_QUOTED_ID || LA329_12887 == DOUBLE_QUOTED_TEXT || LA329_12887 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12887;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2604 == EOF || ((LA329_2604 >= ACCOUNT_SYMBOL) && (LA329_2604 <= YEAR_SYMBOL)) || LA329_2604 == AND_SYMBOL || LA329_2604 == AS_SYMBOL || LA329_2604 == BACK_TICK_QUOTED_ID || LA329_2604 == BETWEEN_SYMBOL || LA329_2604 == BIN_NUMBER || LA329_2604 == BITWISE_AND_OPERATOR || ((LA329_2604 >= BITWISE_OR_OPERATOR) && (LA329_2604 <= BITWISE_XOR_OPERATOR)) || ((LA329_2604 >= CLOSE_CURLY_SYMBOL) && (LA329_2604 <= COLLATE_SYMBOL)) || LA329_2604 == COMMA_SYMBOL || LA329_2604 == CONCAT_PIPES_SYMBOL || LA329_2604 == CROSS_SYMBOL || ((LA329_2604 >= DIV_OPERATOR) && (LA329_2604 <= DIV_SYMBOL)) || LA329_2604 == DOUBLE_QUOTED_TEXT || LA329_2604 == EQUAL_OPERATOR || LA329_2604 == FOR_SYMBOL || LA329_2604 == FROM_SYMBOL || ((LA329_2604 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2604 <= GREATER_THAN_OPERATOR)) || ((LA329_2604 >= GROUP_SYMBOL) && (LA329_2604 <= HAVING_SYMBOL)) || LA329_2604 == HEX_NUMBER || LA329_2604 == IDENTIFIER || LA329_2604 == INNER_SYMBOL || LA329_2604 == INTO_SYMBOL || LA329_2604 == IN_SYMBOL || LA329_2604 == IS_SYMBOL || ((LA329_2604 >= JOIN_SYMBOL) && (LA329_2604 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2604 >= LEFT_SYMBOL) && (LA329_2604 <= LESS_THAN_OPERATOR)) || ((LA329_2604 >= LIKE_SYMBOL) && (LA329_2604 <= LIMIT_SYMBOL)) || LA329_2604 == LOCK_SYMBOL || LA329_2604 == LOGICAL_AND_OPERATOR || LA329_2604 == LOGICAL_OR_OPERATOR || LA329_2604 == MINUS_OPERATOR || ((LA329_2604 >= MOD_OPERATOR) && (LA329_2604 <= MOD_SYMBOL)) || ((LA329_2604 >= MULT_OPERATOR) && (LA329_2604 <= NATURAL_SYMBOL)) || ((LA329_2604 >= NOT_EQUAL2_OPERATOR) && (LA329_2604 <= NOT_SYMBOL)) || LA329_2604 == NULL_SAFE_EQUAL_OPERATOR || LA329_2604 == ON_SYMBOL || LA329_2604 == OPEN_PAR_SYMBOL || ((LA329_2604 >= ORDER_SYMBOL) && (LA329_2604 <= OR_SYMBOL)) || LA329_2604 == PLUS_OPERATOR || LA329_2604 == PROCEDURE_SYMBOL || LA329_2604 == REGEXP_SYMBOL || LA329_2604 == RIGHT_SYMBOL || LA329_2604 == SEMICOLON_SYMBOL || LA329_2604 == SET_SYMBOL || ((LA329_2604 >= SHIFT_LEFT_OPERATOR) && (LA329_2604 <= SHIFT_RIGHT_OPERATOR)) || LA329_2604 == SINGLE_QUOTED_TEXT || LA329_2604 == STRAIGHT_JOIN_SYMBOL || LA329_2604 == UNION_SYMBOL || LA329_2604 == USING_SYMBOL || LA329_2604 == WHERE_SYMBOL || LA329_2604 == WITH_SYMBOL || LA329_2604 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2604;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2160 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2605 = LA(4);
                                        if ( (LA329_2605 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12941 = LA(5);
                                                if ( (LA329_12941 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12941 >= ACCOUNT_SYMBOL) && (LA329_12941 <= YEAR_SYMBOL)) || LA329_12941 == BACK_TICK_QUOTED_ID || LA329_12941 == DOUBLE_QUOTED_TEXT || LA329_12941 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12941;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2605 == EOF || ((LA329_2605 >= ACCOUNT_SYMBOL) && (LA329_2605 <= YEAR_SYMBOL)) || LA329_2605 == AND_SYMBOL || LA329_2605 == AS_SYMBOL || LA329_2605 == BACK_TICK_QUOTED_ID || LA329_2605 == BETWEEN_SYMBOL || LA329_2605 == BIN_NUMBER || LA329_2605 == BITWISE_AND_OPERATOR || ((LA329_2605 >= BITWISE_OR_OPERATOR) && (LA329_2605 <= BITWISE_XOR_OPERATOR)) || ((LA329_2605 >= CLOSE_CURLY_SYMBOL) && (LA329_2605 <= COLLATE_SYMBOL)) || LA329_2605 == COMMA_SYMBOL || LA329_2605 == CONCAT_PIPES_SYMBOL || LA329_2605 == CROSS_SYMBOL || ((LA329_2605 >= DIV_OPERATOR) && (LA329_2605 <= DIV_SYMBOL)) || LA329_2605 == DOUBLE_QUOTED_TEXT || LA329_2605 == EQUAL_OPERATOR || LA329_2605 == FOR_SYMBOL || LA329_2605 == FROM_SYMBOL || ((LA329_2605 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2605 <= GREATER_THAN_OPERATOR)) || ((LA329_2605 >= GROUP_SYMBOL) && (LA329_2605 <= HAVING_SYMBOL)) || LA329_2605 == HEX_NUMBER || LA329_2605 == IDENTIFIER || LA329_2605 == INNER_SYMBOL || LA329_2605 == INTO_SYMBOL || LA329_2605 == IN_SYMBOL || LA329_2605 == IS_SYMBOL || ((LA329_2605 >= JOIN_SYMBOL) && (LA329_2605 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2605 >= LEFT_SYMBOL) && (LA329_2605 <= LESS_THAN_OPERATOR)) || ((LA329_2605 >= LIKE_SYMBOL) && (LA329_2605 <= LIMIT_SYMBOL)) || LA329_2605 == LOCK_SYMBOL || LA329_2605 == LOGICAL_AND_OPERATOR || LA329_2605 == LOGICAL_OR_OPERATOR || LA329_2605 == MINUS_OPERATOR || ((LA329_2605 >= MOD_OPERATOR) && (LA329_2605 <= MOD_SYMBOL)) || ((LA329_2605 >= MULT_OPERATOR) && (LA329_2605 <= NATURAL_SYMBOL)) || ((LA329_2605 >= NOT_EQUAL2_OPERATOR) && (LA329_2605 <= NOT_SYMBOL)) || LA329_2605 == NULL_SAFE_EQUAL_OPERATOR || LA329_2605 == ON_SYMBOL || LA329_2605 == OPEN_PAR_SYMBOL || ((LA329_2605 >= ORDER_SYMBOL) && (LA329_2605 <= OR_SYMBOL)) || LA329_2605 == PLUS_OPERATOR || LA329_2605 == PROCEDURE_SYMBOL || LA329_2605 == REGEXP_SYMBOL || LA329_2605 == RIGHT_SYMBOL || LA329_2605 == SEMICOLON_SYMBOL || LA329_2605 == SET_SYMBOL || ((LA329_2605 >= SHIFT_LEFT_OPERATOR) && (LA329_2605 <= SHIFT_RIGHT_OPERATOR)) || LA329_2605 == SINGLE_QUOTED_TEXT || LA329_2605 == STRAIGHT_JOIN_SYMBOL || LA329_2605 == UNION_SYMBOL || LA329_2605 == USING_SYMBOL || LA329_2605 == WHERE_SYMBOL || LA329_2605 == WITH_SYMBOL || LA329_2605 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2605;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2160 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2606 = LA(4);
                                        if ( (LA329_2606 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_12995 = LA(5);
                                                if ( (LA329_12995 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_12995 >= ACCOUNT_SYMBOL) && (LA329_12995 <= YEAR_SYMBOL)) || LA329_12995 == BACK_TICK_QUOTED_ID || LA329_12995 == DOUBLE_QUOTED_TEXT || LA329_12995 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 12995;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2606 == EOF || ((LA329_2606 >= ACCOUNT_SYMBOL) && (LA329_2606 <= YEAR_SYMBOL)) || LA329_2606 == AND_SYMBOL || LA329_2606 == AS_SYMBOL || LA329_2606 == BACK_TICK_QUOTED_ID || LA329_2606 == BETWEEN_SYMBOL || LA329_2606 == BIN_NUMBER || LA329_2606 == BITWISE_AND_OPERATOR || ((LA329_2606 >= BITWISE_OR_OPERATOR) && (LA329_2606 <= BITWISE_XOR_OPERATOR)) || ((LA329_2606 >= CLOSE_CURLY_SYMBOL) && (LA329_2606 <= COLLATE_SYMBOL)) || LA329_2606 == COMMA_SYMBOL || LA329_2606 == CONCAT_PIPES_SYMBOL || LA329_2606 == CROSS_SYMBOL || ((LA329_2606 >= DIV_OPERATOR) && (LA329_2606 <= DIV_SYMBOL)) || LA329_2606 == DOUBLE_QUOTED_TEXT || LA329_2606 == EQUAL_OPERATOR || LA329_2606 == FOR_SYMBOL || LA329_2606 == FROM_SYMBOL || ((LA329_2606 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2606 <= GREATER_THAN_OPERATOR)) || ((LA329_2606 >= GROUP_SYMBOL) && (LA329_2606 <= HAVING_SYMBOL)) || LA329_2606 == HEX_NUMBER || LA329_2606 == IDENTIFIER || LA329_2606 == INNER_SYMBOL || LA329_2606 == INTO_SYMBOL || LA329_2606 == IN_SYMBOL || LA329_2606 == IS_SYMBOL || ((LA329_2606 >= JOIN_SYMBOL) && (LA329_2606 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2606 >= LEFT_SYMBOL) && (LA329_2606 <= LESS_THAN_OPERATOR)) || ((LA329_2606 >= LIKE_SYMBOL) && (LA329_2606 <= LIMIT_SYMBOL)) || LA329_2606 == LOCK_SYMBOL || LA329_2606 == LOGICAL_AND_OPERATOR || LA329_2606 == LOGICAL_OR_OPERATOR || LA329_2606 == MINUS_OPERATOR || ((LA329_2606 >= MOD_OPERATOR) && (LA329_2606 <= MOD_SYMBOL)) || ((LA329_2606 >= MULT_OPERATOR) && (LA329_2606 <= NATURAL_SYMBOL)) || ((LA329_2606 >= NOT_EQUAL2_OPERATOR) && (LA329_2606 <= NOT_SYMBOL)) || LA329_2606 == NULL_SAFE_EQUAL_OPERATOR || LA329_2606 == ON_SYMBOL || LA329_2606 == OPEN_PAR_SYMBOL || ((LA329_2606 >= ORDER_SYMBOL) && (LA329_2606 <= OR_SYMBOL)) || LA329_2606 == PLUS_OPERATOR || LA329_2606 == PROCEDURE_SYMBOL || LA329_2606 == REGEXP_SYMBOL || LA329_2606 == RIGHT_SYMBOL || LA329_2606 == SEMICOLON_SYMBOL || LA329_2606 == SET_SYMBOL || ((LA329_2606 >= SHIFT_LEFT_OPERATOR) && (LA329_2606 <= SHIFT_RIGHT_OPERATOR)) || LA329_2606 == SINGLE_QUOTED_TEXT || LA329_2606 == STRAIGHT_JOIN_SYMBOL || LA329_2606 == UNION_SYMBOL || LA329_2606 == USING_SYMBOL || LA329_2606 == WHERE_SYMBOL || LA329_2606 == WITH_SYMBOL || LA329_2606 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2606;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2160 >= ACTION_SYMBOL) && (LA329_2160 <= SHARE_SYMBOL)) || ((LA329_2160 >= SLOW_SYMBOL) && (LA329_2160 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2607 = LA(4);
                                        if ( (LA329_2607 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13049 = LA(5);
                                                if ( (LA329_13049 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13049 >= ACCOUNT_SYMBOL) && (LA329_13049 <= YEAR_SYMBOL)) || LA329_13049 == BACK_TICK_QUOTED_ID || LA329_13049 == DOUBLE_QUOTED_TEXT || LA329_13049 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13049;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2607 == EOF || ((LA329_2607 >= ACCOUNT_SYMBOL) && (LA329_2607 <= YEAR_SYMBOL)) || LA329_2607 == AND_SYMBOL || LA329_2607 == AS_SYMBOL || LA329_2607 == BACK_TICK_QUOTED_ID || LA329_2607 == BETWEEN_SYMBOL || LA329_2607 == BIN_NUMBER || LA329_2607 == BITWISE_AND_OPERATOR || ((LA329_2607 >= BITWISE_OR_OPERATOR) && (LA329_2607 <= BITWISE_XOR_OPERATOR)) || ((LA329_2607 >= CLOSE_CURLY_SYMBOL) && (LA329_2607 <= COLLATE_SYMBOL)) || LA329_2607 == COMMA_SYMBOL || LA329_2607 == CONCAT_PIPES_SYMBOL || LA329_2607 == CROSS_SYMBOL || ((LA329_2607 >= DIV_OPERATOR) && (LA329_2607 <= DIV_SYMBOL)) || LA329_2607 == DOUBLE_QUOTED_TEXT || LA329_2607 == EQUAL_OPERATOR || LA329_2607 == FOR_SYMBOL || LA329_2607 == FROM_SYMBOL || ((LA329_2607 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2607 <= GREATER_THAN_OPERATOR)) || ((LA329_2607 >= GROUP_SYMBOL) && (LA329_2607 <= HAVING_SYMBOL)) || LA329_2607 == HEX_NUMBER || LA329_2607 == IDENTIFIER || LA329_2607 == INNER_SYMBOL || LA329_2607 == INTO_SYMBOL || LA329_2607 == IN_SYMBOL || LA329_2607 == IS_SYMBOL || ((LA329_2607 >= JOIN_SYMBOL) && (LA329_2607 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2607 >= LEFT_SYMBOL) && (LA329_2607 <= LESS_THAN_OPERATOR)) || ((LA329_2607 >= LIKE_SYMBOL) && (LA329_2607 <= LIMIT_SYMBOL)) || LA329_2607 == LOCK_SYMBOL || LA329_2607 == LOGICAL_AND_OPERATOR || LA329_2607 == LOGICAL_OR_OPERATOR || LA329_2607 == MINUS_OPERATOR || ((LA329_2607 >= MOD_OPERATOR) && (LA329_2607 <= MOD_SYMBOL)) || ((LA329_2607 >= MULT_OPERATOR) && (LA329_2607 <= NATURAL_SYMBOL)) || ((LA329_2607 >= NOT_EQUAL2_OPERATOR) && (LA329_2607 <= NOT_SYMBOL)) || LA329_2607 == NULL_SAFE_EQUAL_OPERATOR || LA329_2607 == ON_SYMBOL || LA329_2607 == OPEN_PAR_SYMBOL || ((LA329_2607 >= ORDER_SYMBOL) && (LA329_2607 <= OR_SYMBOL)) || LA329_2607 == PLUS_OPERATOR || LA329_2607 == PROCEDURE_SYMBOL || LA329_2607 == REGEXP_SYMBOL || LA329_2607 == RIGHT_SYMBOL || LA329_2607 == SEMICOLON_SYMBOL || LA329_2607 == SET_SYMBOL || ((LA329_2607 >= SHIFT_LEFT_OPERATOR) && (LA329_2607 <= SHIFT_RIGHT_OPERATOR)) || LA329_2607 == SINGLE_QUOTED_TEXT || LA329_2607 == STRAIGHT_JOIN_SYMBOL || LA329_2607 == UNION_SYMBOL || LA329_2607 == USING_SYMBOL || LA329_2607 == WHERE_SYMBOL || LA329_2607 == WITH_SYMBOL || LA329_2607 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2607;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2160 >= ACCOUNT_SYMBOL) && (LA329_2160 <= XA_SYMBOL)) || LA329_2160 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2608 = LA(4);
                                        if ( (LA329_2608 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13103 = LA(5);
                                                if ( (LA329_13103 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13103 >= ACCOUNT_SYMBOL) && (LA329_13103 <= YEAR_SYMBOL)) || LA329_13103 == BACK_TICK_QUOTED_ID || LA329_13103 == DOUBLE_QUOTED_TEXT || LA329_13103 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13103;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2608 == EOF || ((LA329_2608 >= ACCOUNT_SYMBOL) && (LA329_2608 <= YEAR_SYMBOL)) || LA329_2608 == AND_SYMBOL || LA329_2608 == AS_SYMBOL || LA329_2608 == BACK_TICK_QUOTED_ID || LA329_2608 == BETWEEN_SYMBOL || LA329_2608 == BIN_NUMBER || LA329_2608 == BITWISE_AND_OPERATOR || ((LA329_2608 >= BITWISE_OR_OPERATOR) && (LA329_2608 <= BITWISE_XOR_OPERATOR)) || ((LA329_2608 >= CLOSE_CURLY_SYMBOL) && (LA329_2608 <= COLLATE_SYMBOL)) || LA329_2608 == COMMA_SYMBOL || LA329_2608 == CONCAT_PIPES_SYMBOL || LA329_2608 == CROSS_SYMBOL || ((LA329_2608 >= DIV_OPERATOR) && (LA329_2608 <= DIV_SYMBOL)) || LA329_2608 == DOUBLE_QUOTED_TEXT || LA329_2608 == EQUAL_OPERATOR || LA329_2608 == FOR_SYMBOL || LA329_2608 == FROM_SYMBOL || ((LA329_2608 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2608 <= GREATER_THAN_OPERATOR)) || ((LA329_2608 >= GROUP_SYMBOL) && (LA329_2608 <= HAVING_SYMBOL)) || LA329_2608 == HEX_NUMBER || LA329_2608 == IDENTIFIER || LA329_2608 == INNER_SYMBOL || LA329_2608 == INTO_SYMBOL || LA329_2608 == IN_SYMBOL || LA329_2608 == IS_SYMBOL || ((LA329_2608 >= JOIN_SYMBOL) && (LA329_2608 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2608 >= LEFT_SYMBOL) && (LA329_2608 <= LESS_THAN_OPERATOR)) || ((LA329_2608 >= LIKE_SYMBOL) && (LA329_2608 <= LIMIT_SYMBOL)) || LA329_2608 == LOCK_SYMBOL || LA329_2608 == LOGICAL_AND_OPERATOR || LA329_2608 == LOGICAL_OR_OPERATOR || LA329_2608 == MINUS_OPERATOR || ((LA329_2608 >= MOD_OPERATOR) && (LA329_2608 <= MOD_SYMBOL)) || ((LA329_2608 >= MULT_OPERATOR) && (LA329_2608 <= NATURAL_SYMBOL)) || ((LA329_2608 >= NOT_EQUAL2_OPERATOR) && (LA329_2608 <= NOT_SYMBOL)) || LA329_2608 == NULL_SAFE_EQUAL_OPERATOR || LA329_2608 == ON_SYMBOL || LA329_2608 == OPEN_PAR_SYMBOL || ((LA329_2608 >= ORDER_SYMBOL) && (LA329_2608 <= OR_SYMBOL)) || LA329_2608 == PLUS_OPERATOR || LA329_2608 == PROCEDURE_SYMBOL || LA329_2608 == REGEXP_SYMBOL || LA329_2608 == RIGHT_SYMBOL || LA329_2608 == SEMICOLON_SYMBOL || LA329_2608 == SET_SYMBOL || ((LA329_2608 >= SHIFT_LEFT_OPERATOR) && (LA329_2608 <= SHIFT_RIGHT_OPERATOR)) || LA329_2608 == SINGLE_QUOTED_TEXT || LA329_2608 == STRAIGHT_JOIN_SYMBOL || LA329_2608 == UNION_SYMBOL || LA329_2608 == USING_SYMBOL || LA329_2608 == WHERE_SYMBOL || LA329_2608 == WITH_SYMBOL || LA329_2608 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2608;


                                            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  = 329;
                                    EXCEPTION->state        = 2160;


                                    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  = 329;
                            EXCEPTION->state        = 74;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == ACCOUNT_SYMBOL || ((LA329_0 >= ALWAYS_SYMBOL) && (LA329_0 <= CACHE_SYMBOL)) || ((LA329_0 >= CHECKSUM_SYMBOL) && (LA329_0 <= COMMIT_SYMBOL)) || ((LA329_0 >= DEALLOCATE_SYMBOL) && (LA329_0 <= FOLLOWS_SYMBOL)) || ((LA329_0 >= GROUP_REPLICATION_SYMBOL) && (LA329_0 <= STOP_SYMBOL)) || ((LA329_0 >= UNICODE_SYMBOL) && (LA329_0 <= XA_SYMBOL)) || LA329_0 == SHUTDOWN_SYMBOL))
                {
                    {
                        int LA329_75 = LA(2);
                        if ( (LA329_75 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2213 = LA(3);
                                if ( (LA329_2213 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_2213 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2610 = LA(4);
                                        if ( (LA329_2610 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13157 = LA(5);
                                                if ( (LA329_13157 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13157 >= ACCOUNT_SYMBOL) && (LA329_13157 <= YEAR_SYMBOL)) || LA329_13157 == BACK_TICK_QUOTED_ID || LA329_13157 == DOUBLE_QUOTED_TEXT || LA329_13157 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13157;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2610 == EOF || ((LA329_2610 >= ACCOUNT_SYMBOL) && (LA329_2610 <= YEAR_SYMBOL)) || LA329_2610 == AND_SYMBOL || LA329_2610 == AS_SYMBOL || LA329_2610 == BACK_TICK_QUOTED_ID || LA329_2610 == BETWEEN_SYMBOL || LA329_2610 == BIN_NUMBER || LA329_2610 == BITWISE_AND_OPERATOR || ((LA329_2610 >= BITWISE_OR_OPERATOR) && (LA329_2610 <= BITWISE_XOR_OPERATOR)) || ((LA329_2610 >= CLOSE_CURLY_SYMBOL) && (LA329_2610 <= COLLATE_SYMBOL)) || LA329_2610 == COMMA_SYMBOL || LA329_2610 == CONCAT_PIPES_SYMBOL || LA329_2610 == CROSS_SYMBOL || ((LA329_2610 >= DIV_OPERATOR) && (LA329_2610 <= DIV_SYMBOL)) || LA329_2610 == DOUBLE_QUOTED_TEXT || LA329_2610 == EQUAL_OPERATOR || LA329_2610 == FOR_SYMBOL || LA329_2610 == FROM_SYMBOL || ((LA329_2610 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2610 <= GREATER_THAN_OPERATOR)) || ((LA329_2610 >= GROUP_SYMBOL) && (LA329_2610 <= HAVING_SYMBOL)) || LA329_2610 == HEX_NUMBER || LA329_2610 == IDENTIFIER || LA329_2610 == INNER_SYMBOL || LA329_2610 == INTO_SYMBOL || LA329_2610 == IN_SYMBOL || LA329_2610 == IS_SYMBOL || ((LA329_2610 >= JOIN_SYMBOL) && (LA329_2610 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2610 >= LEFT_SYMBOL) && (LA329_2610 <= LESS_THAN_OPERATOR)) || ((LA329_2610 >= LIKE_SYMBOL) && (LA329_2610 <= LIMIT_SYMBOL)) || LA329_2610 == LOCK_SYMBOL || LA329_2610 == LOGICAL_AND_OPERATOR || LA329_2610 == LOGICAL_OR_OPERATOR || LA329_2610 == MINUS_OPERATOR || ((LA329_2610 >= MOD_OPERATOR) && (LA329_2610 <= MOD_SYMBOL)) || ((LA329_2610 >= MULT_OPERATOR) && (LA329_2610 <= NATURAL_SYMBOL)) || ((LA329_2610 >= NOT_EQUAL2_OPERATOR) && (LA329_2610 <= NOT_SYMBOL)) || LA329_2610 == NULL_SAFE_EQUAL_OPERATOR || LA329_2610 == ON_SYMBOL || LA329_2610 == OPEN_PAR_SYMBOL || ((LA329_2610 >= ORDER_SYMBOL) && (LA329_2610 <= OR_SYMBOL)) || LA329_2610 == PLUS_OPERATOR || LA329_2610 == PROCEDURE_SYMBOL || LA329_2610 == REGEXP_SYMBOL || LA329_2610 == RIGHT_SYMBOL || LA329_2610 == SEMICOLON_SYMBOL || LA329_2610 == SET_SYMBOL || ((LA329_2610 >= SHIFT_LEFT_OPERATOR) && (LA329_2610 <= SHIFT_RIGHT_OPERATOR)) || LA329_2610 == SINGLE_QUOTED_TEXT || LA329_2610 == STRAIGHT_JOIN_SYMBOL || LA329_2610 == UNION_SYMBOL || LA329_2610 == USING_SYMBOL || LA329_2610 == WHERE_SYMBOL || LA329_2610 == WITH_SYMBOL || LA329_2610 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2610;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2213 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2611 = LA(4);
                                        if ( (LA329_2611 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13211 = LA(5);
                                                if ( (LA329_13211 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13211 >= ACCOUNT_SYMBOL) && (LA329_13211 <= YEAR_SYMBOL)) || LA329_13211 == BACK_TICK_QUOTED_ID || LA329_13211 == DOUBLE_QUOTED_TEXT || LA329_13211 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13211;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2611 == EOF || ((LA329_2611 >= ACCOUNT_SYMBOL) && (LA329_2611 <= YEAR_SYMBOL)) || LA329_2611 == AND_SYMBOL || LA329_2611 == AS_SYMBOL || LA329_2611 == BACK_TICK_QUOTED_ID || LA329_2611 == BETWEEN_SYMBOL || LA329_2611 == BIN_NUMBER || LA329_2611 == BITWISE_AND_OPERATOR || ((LA329_2611 >= BITWISE_OR_OPERATOR) && (LA329_2611 <= BITWISE_XOR_OPERATOR)) || ((LA329_2611 >= CLOSE_CURLY_SYMBOL) && (LA329_2611 <= COLLATE_SYMBOL)) || LA329_2611 == COMMA_SYMBOL || LA329_2611 == CONCAT_PIPES_SYMBOL || LA329_2611 == CROSS_SYMBOL || ((LA329_2611 >= DIV_OPERATOR) && (LA329_2611 <= DIV_SYMBOL)) || LA329_2611 == DOUBLE_QUOTED_TEXT || LA329_2611 == EQUAL_OPERATOR || LA329_2611 == FOR_SYMBOL || LA329_2611 == FROM_SYMBOL || ((LA329_2611 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2611 <= GREATER_THAN_OPERATOR)) || ((LA329_2611 >= GROUP_SYMBOL) && (LA329_2611 <= HAVING_SYMBOL)) || LA329_2611 == HEX_NUMBER || LA329_2611 == IDENTIFIER || LA329_2611 == INNER_SYMBOL || LA329_2611 == INTO_SYMBOL || LA329_2611 == IN_SYMBOL || LA329_2611 == IS_SYMBOL || ((LA329_2611 >= JOIN_SYMBOL) && (LA329_2611 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2611 >= LEFT_SYMBOL) && (LA329_2611 <= LESS_THAN_OPERATOR)) || ((LA329_2611 >= LIKE_SYMBOL) && (LA329_2611 <= LIMIT_SYMBOL)) || LA329_2611 == LOCK_SYMBOL || LA329_2611 == LOGICAL_AND_OPERATOR || LA329_2611 == LOGICAL_OR_OPERATOR || LA329_2611 == MINUS_OPERATOR || ((LA329_2611 >= MOD_OPERATOR) && (LA329_2611 <= MOD_SYMBOL)) || ((LA329_2611 >= MULT_OPERATOR) && (LA329_2611 <= NATURAL_SYMBOL)) || ((LA329_2611 >= NOT_EQUAL2_OPERATOR) && (LA329_2611 <= NOT_SYMBOL)) || LA329_2611 == NULL_SAFE_EQUAL_OPERATOR || LA329_2611 == ON_SYMBOL || LA329_2611 == OPEN_PAR_SYMBOL || ((LA329_2611 >= ORDER_SYMBOL) && (LA329_2611 <= OR_SYMBOL)) || LA329_2611 == PLUS_OPERATOR || LA329_2611 == PROCEDURE_SYMBOL || LA329_2611 == REGEXP_SYMBOL || LA329_2611 == RIGHT_SYMBOL || LA329_2611 == SEMICOLON_SYMBOL || LA329_2611 == SET_SYMBOL || ((LA329_2611 >= SHIFT_LEFT_OPERATOR) && (LA329_2611 <= SHIFT_RIGHT_OPERATOR)) || LA329_2611 == SINGLE_QUOTED_TEXT || LA329_2611 == STRAIGHT_JOIN_SYMBOL || LA329_2611 == UNION_SYMBOL || LA329_2611 == USING_SYMBOL || LA329_2611 == WHERE_SYMBOL || LA329_2611 == WITH_SYMBOL || LA329_2611 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2611;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2213 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2612 = LA(4);
                                        if ( (LA329_2612 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13265 = LA(5);
                                                if ( (LA329_13265 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13265 >= ACCOUNT_SYMBOL) && (LA329_13265 <= YEAR_SYMBOL)) || LA329_13265 == BACK_TICK_QUOTED_ID || LA329_13265 == DOUBLE_QUOTED_TEXT || LA329_13265 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13265;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2612 == EOF || ((LA329_2612 >= ACCOUNT_SYMBOL) && (LA329_2612 <= YEAR_SYMBOL)) || LA329_2612 == AND_SYMBOL || LA329_2612 == AS_SYMBOL || LA329_2612 == BACK_TICK_QUOTED_ID || LA329_2612 == BETWEEN_SYMBOL || LA329_2612 == BIN_NUMBER || LA329_2612 == BITWISE_AND_OPERATOR || ((LA329_2612 >= BITWISE_OR_OPERATOR) && (LA329_2612 <= BITWISE_XOR_OPERATOR)) || ((LA329_2612 >= CLOSE_CURLY_SYMBOL) && (LA329_2612 <= COLLATE_SYMBOL)) || LA329_2612 == COMMA_SYMBOL || LA329_2612 == CONCAT_PIPES_SYMBOL || LA329_2612 == CROSS_SYMBOL || ((LA329_2612 >= DIV_OPERATOR) && (LA329_2612 <= DIV_SYMBOL)) || LA329_2612 == DOUBLE_QUOTED_TEXT || LA329_2612 == EQUAL_OPERATOR || LA329_2612 == FOR_SYMBOL || LA329_2612 == FROM_SYMBOL || ((LA329_2612 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2612 <= GREATER_THAN_OPERATOR)) || ((LA329_2612 >= GROUP_SYMBOL) && (LA329_2612 <= HAVING_SYMBOL)) || LA329_2612 == HEX_NUMBER || LA329_2612 == IDENTIFIER || LA329_2612 == INNER_SYMBOL || LA329_2612 == INTO_SYMBOL || LA329_2612 == IN_SYMBOL || LA329_2612 == IS_SYMBOL || ((LA329_2612 >= JOIN_SYMBOL) && (LA329_2612 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2612 >= LEFT_SYMBOL) && (LA329_2612 <= LESS_THAN_OPERATOR)) || ((LA329_2612 >= LIKE_SYMBOL) && (LA329_2612 <= LIMIT_SYMBOL)) || LA329_2612 == LOCK_SYMBOL || LA329_2612 == LOGICAL_AND_OPERATOR || LA329_2612 == LOGICAL_OR_OPERATOR || LA329_2612 == MINUS_OPERATOR || ((LA329_2612 >= MOD_OPERATOR) && (LA329_2612 <= MOD_SYMBOL)) || ((LA329_2612 >= MULT_OPERATOR) && (LA329_2612 <= NATURAL_SYMBOL)) || ((LA329_2612 >= NOT_EQUAL2_OPERATOR) && (LA329_2612 <= NOT_SYMBOL)) || LA329_2612 == NULL_SAFE_EQUAL_OPERATOR || LA329_2612 == ON_SYMBOL || LA329_2612 == OPEN_PAR_SYMBOL || ((LA329_2612 >= ORDER_SYMBOL) && (LA329_2612 <= OR_SYMBOL)) || LA329_2612 == PLUS_OPERATOR || LA329_2612 == PROCEDURE_SYMBOL || LA329_2612 == REGEXP_SYMBOL || LA329_2612 == RIGHT_SYMBOL || LA329_2612 == SEMICOLON_SYMBOL || LA329_2612 == SET_SYMBOL || ((LA329_2612 >= SHIFT_LEFT_OPERATOR) && (LA329_2612 <= SHIFT_RIGHT_OPERATOR)) || LA329_2612 == SINGLE_QUOTED_TEXT || LA329_2612 == STRAIGHT_JOIN_SYMBOL || LA329_2612 == UNION_SYMBOL || LA329_2612 == USING_SYMBOL || LA329_2612 == WHERE_SYMBOL || LA329_2612 == WITH_SYMBOL || LA329_2612 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2612;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2213 >= ACTION_SYMBOL) && (LA329_2213 <= SHARE_SYMBOL)) || ((LA329_2213 >= SLOW_SYMBOL) && (LA329_2213 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2613 = LA(4);
                                        if ( (LA329_2613 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13319 = LA(5);
                                                if ( (LA329_13319 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13319 >= ACCOUNT_SYMBOL) && (LA329_13319 <= YEAR_SYMBOL)) || LA329_13319 == BACK_TICK_QUOTED_ID || LA329_13319 == DOUBLE_QUOTED_TEXT || LA329_13319 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13319;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2613 == EOF || ((LA329_2613 >= ACCOUNT_SYMBOL) && (LA329_2613 <= YEAR_SYMBOL)) || LA329_2613 == AND_SYMBOL || LA329_2613 == AS_SYMBOL || LA329_2613 == BACK_TICK_QUOTED_ID || LA329_2613 == BETWEEN_SYMBOL || LA329_2613 == BIN_NUMBER || LA329_2613 == BITWISE_AND_OPERATOR || ((LA329_2613 >= BITWISE_OR_OPERATOR) && (LA329_2613 <= BITWISE_XOR_OPERATOR)) || ((LA329_2613 >= CLOSE_CURLY_SYMBOL) && (LA329_2613 <= COLLATE_SYMBOL)) || LA329_2613 == COMMA_SYMBOL || LA329_2613 == CONCAT_PIPES_SYMBOL || LA329_2613 == CROSS_SYMBOL || ((LA329_2613 >= DIV_OPERATOR) && (LA329_2613 <= DIV_SYMBOL)) || LA329_2613 == DOUBLE_QUOTED_TEXT || LA329_2613 == EQUAL_OPERATOR || LA329_2613 == FOR_SYMBOL || LA329_2613 == FROM_SYMBOL || ((LA329_2613 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2613 <= GREATER_THAN_OPERATOR)) || ((LA329_2613 >= GROUP_SYMBOL) && (LA329_2613 <= HAVING_SYMBOL)) || LA329_2613 == HEX_NUMBER || LA329_2613 == IDENTIFIER || LA329_2613 == INNER_SYMBOL || LA329_2613 == INTO_SYMBOL || LA329_2613 == IN_SYMBOL || LA329_2613 == IS_SYMBOL || ((LA329_2613 >= JOIN_SYMBOL) && (LA329_2613 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2613 >= LEFT_SYMBOL) && (LA329_2613 <= LESS_THAN_OPERATOR)) || ((LA329_2613 >= LIKE_SYMBOL) && (LA329_2613 <= LIMIT_SYMBOL)) || LA329_2613 == LOCK_SYMBOL || LA329_2613 == LOGICAL_AND_OPERATOR || LA329_2613 == LOGICAL_OR_OPERATOR || LA329_2613 == MINUS_OPERATOR || ((LA329_2613 >= MOD_OPERATOR) && (LA329_2613 <= MOD_SYMBOL)) || ((LA329_2613 >= MULT_OPERATOR) && (LA329_2613 <= NATURAL_SYMBOL)) || ((LA329_2613 >= NOT_EQUAL2_OPERATOR) && (LA329_2613 <= NOT_SYMBOL)) || LA329_2613 == NULL_SAFE_EQUAL_OPERATOR || LA329_2613 == ON_SYMBOL || LA329_2613 == OPEN_PAR_SYMBOL || ((LA329_2613 >= ORDER_SYMBOL) && (LA329_2613 <= OR_SYMBOL)) || LA329_2613 == PLUS_OPERATOR || LA329_2613 == PROCEDURE_SYMBOL || LA329_2613 == REGEXP_SYMBOL || LA329_2613 == RIGHT_SYMBOL || LA329_2613 == SEMICOLON_SYMBOL || LA329_2613 == SET_SYMBOL || ((LA329_2613 >= SHIFT_LEFT_OPERATOR) && (LA329_2613 <= SHIFT_RIGHT_OPERATOR)) || LA329_2613 == SINGLE_QUOTED_TEXT || LA329_2613 == STRAIGHT_JOIN_SYMBOL || LA329_2613 == UNION_SYMBOL || LA329_2613 == USING_SYMBOL || LA329_2613 == WHERE_SYMBOL || LA329_2613 == WITH_SYMBOL || LA329_2613 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2613;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2213 >= ACCOUNT_SYMBOL) && (LA329_2213 <= XA_SYMBOL)) || LA329_2213 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2614 = LA(4);
                                        if ( (LA329_2614 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13373 = LA(5);
                                                if ( (LA329_13373 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13373 >= ACCOUNT_SYMBOL) && (LA329_13373 <= YEAR_SYMBOL)) || LA329_13373 == BACK_TICK_QUOTED_ID || LA329_13373 == DOUBLE_QUOTED_TEXT || LA329_13373 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13373;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2614 == EOF || ((LA329_2614 >= ACCOUNT_SYMBOL) && (LA329_2614 <= YEAR_SYMBOL)) || LA329_2614 == AND_SYMBOL || LA329_2614 == AS_SYMBOL || LA329_2614 == BACK_TICK_QUOTED_ID || LA329_2614 == BETWEEN_SYMBOL || LA329_2614 == BIN_NUMBER || LA329_2614 == BITWISE_AND_OPERATOR || ((LA329_2614 >= BITWISE_OR_OPERATOR) && (LA329_2614 <= BITWISE_XOR_OPERATOR)) || ((LA329_2614 >= CLOSE_CURLY_SYMBOL) && (LA329_2614 <= COLLATE_SYMBOL)) || LA329_2614 == COMMA_SYMBOL || LA329_2614 == CONCAT_PIPES_SYMBOL || LA329_2614 == CROSS_SYMBOL || ((LA329_2614 >= DIV_OPERATOR) && (LA329_2614 <= DIV_SYMBOL)) || LA329_2614 == DOUBLE_QUOTED_TEXT || LA329_2614 == EQUAL_OPERATOR || LA329_2614 == FOR_SYMBOL || LA329_2614 == FROM_SYMBOL || ((LA329_2614 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2614 <= GREATER_THAN_OPERATOR)) || ((LA329_2614 >= GROUP_SYMBOL) && (LA329_2614 <= HAVING_SYMBOL)) || LA329_2614 == HEX_NUMBER || LA329_2614 == IDENTIFIER || LA329_2614 == INNER_SYMBOL || LA329_2614 == INTO_SYMBOL || LA329_2614 == IN_SYMBOL || LA329_2614 == IS_SYMBOL || ((LA329_2614 >= JOIN_SYMBOL) && (LA329_2614 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2614 >= LEFT_SYMBOL) && (LA329_2614 <= LESS_THAN_OPERATOR)) || ((LA329_2614 >= LIKE_SYMBOL) && (LA329_2614 <= LIMIT_SYMBOL)) || LA329_2614 == LOCK_SYMBOL || LA329_2614 == LOGICAL_AND_OPERATOR || LA329_2614 == LOGICAL_OR_OPERATOR || LA329_2614 == MINUS_OPERATOR || ((LA329_2614 >= MOD_OPERATOR) && (LA329_2614 <= MOD_SYMBOL)) || ((LA329_2614 >= MULT_OPERATOR) && (LA329_2614 <= NATURAL_SYMBOL)) || ((LA329_2614 >= NOT_EQUAL2_OPERATOR) && (LA329_2614 <= NOT_SYMBOL)) || LA329_2614 == NULL_SAFE_EQUAL_OPERATOR || LA329_2614 == ON_SYMBOL || LA329_2614 == OPEN_PAR_SYMBOL || ((LA329_2614 >= ORDER_SYMBOL) && (LA329_2614 <= OR_SYMBOL)) || LA329_2614 == PLUS_OPERATOR || LA329_2614 == PROCEDURE_SYMBOL || LA329_2614 == REGEXP_SYMBOL || LA329_2614 == RIGHT_SYMBOL || LA329_2614 == SEMICOLON_SYMBOL || LA329_2614 == SET_SYMBOL || ((LA329_2614 >= SHIFT_LEFT_OPERATOR) && (LA329_2614 <= SHIFT_RIGHT_OPERATOR)) || LA329_2614 == SINGLE_QUOTED_TEXT || LA329_2614 == STRAIGHT_JOIN_SYMBOL || LA329_2614 == UNION_SYMBOL || LA329_2614 == USING_SYMBOL || LA329_2614 == WHERE_SYMBOL || LA329_2614 == WITH_SYMBOL || LA329_2614 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2614;


                                            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  = 329;
                                    EXCEPTION->state        = 2213;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_75 == EOF || ((LA329_75 >= ACCOUNT_SYMBOL) && (LA329_75 <= YEAR_SYMBOL)) || LA329_75 == AND_SYMBOL || LA329_75 == AS_SYMBOL || LA329_75 == BACK_TICK_QUOTED_ID || LA329_75 == BETWEEN_SYMBOL || LA329_75 == BIN_NUMBER || LA329_75 == BITWISE_AND_OPERATOR || ((LA329_75 >= BITWISE_OR_OPERATOR) && (LA329_75 <= BITWISE_XOR_OPERATOR)) || ((LA329_75 >= CLOSE_CURLY_SYMBOL) && (LA329_75 <= COLLATE_SYMBOL)) || LA329_75 == COMMA_SYMBOL || LA329_75 == CONCAT_PIPES_SYMBOL || LA329_75 == CROSS_SYMBOL || ((LA329_75 >= DIV_OPERATOR) && (LA329_75 <= DIV_SYMBOL)) || LA329_75 == DOUBLE_QUOTED_TEXT || LA329_75 == EQUAL_OPERATOR || LA329_75 == FOR_SYMBOL || LA329_75 == FROM_SYMBOL || ((LA329_75 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_75 <= GREATER_THAN_OPERATOR)) || ((LA329_75 >= GROUP_SYMBOL) && (LA329_75 <= HAVING_SYMBOL)) || LA329_75 == HEX_NUMBER || LA329_75 == IDENTIFIER || LA329_75 == INNER_SYMBOL || LA329_75 == INTO_SYMBOL || LA329_75 == IN_SYMBOL || LA329_75 == IS_SYMBOL || ((LA329_75 >= JOIN_SYMBOL) && (LA329_75 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_75 >= LEFT_SYMBOL) && (LA329_75 <= LESS_THAN_OPERATOR)) || ((LA329_75 >= LIKE_SYMBOL) && (LA329_75 <= LIMIT_SYMBOL)) || LA329_75 == LOCK_SYMBOL || LA329_75 == LOGICAL_AND_OPERATOR || LA329_75 == LOGICAL_OR_OPERATOR || LA329_75 == MINUS_OPERATOR || ((LA329_75 >= MOD_OPERATOR) && (LA329_75 <= MOD_SYMBOL)) || ((LA329_75 >= MULT_OPERATOR) && (LA329_75 <= NATURAL_SYMBOL)) || ((LA329_75 >= NOT_EQUAL2_OPERATOR) && (LA329_75 <= NOT_SYMBOL)) || LA329_75 == NULL_SAFE_EQUAL_OPERATOR || LA329_75 == ON_SYMBOL || LA329_75 == OPEN_PAR_SYMBOL || ((LA329_75 >= ORDER_SYMBOL) && (LA329_75 <= OR_SYMBOL)) || LA329_75 == PLUS_OPERATOR || LA329_75 == PROCEDURE_SYMBOL || LA329_75 == REGEXP_SYMBOL || LA329_75 == RIGHT_SYMBOL || LA329_75 == SEMICOLON_SYMBOL || LA329_75 == SET_SYMBOL || ((LA329_75 >= SHIFT_LEFT_OPERATOR) && (LA329_75 <= SHIFT_RIGHT_OPERATOR)) || LA329_75 == SINGLE_QUOTED_TEXT || LA329_75 == STRAIGHT_JOIN_SYMBOL || LA329_75 == UNION_SYMBOL || LA329_75 == USING_SYMBOL || LA329_75 == WHERE_SYMBOL || LA329_75 == WITH_SYMBOL || LA329_75 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 75;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == ROW_SYMBOL))
                {
                    {
                        int LA329_76 = LA(2);
                        if ( (LA329_76 == EOF || ((LA329_76 >= ACCOUNT_SYMBOL) && (LA329_76 <= YEAR_SYMBOL)) || LA329_76 == AND_SYMBOL || LA329_76 == AS_SYMBOL || LA329_76 == BACK_TICK_QUOTED_ID || LA329_76 == BETWEEN_SYMBOL || LA329_76 == BIN_NUMBER || LA329_76 == BITWISE_AND_OPERATOR || ((LA329_76 >= BITWISE_OR_OPERATOR) && (LA329_76 <= BITWISE_XOR_OPERATOR)) || ((LA329_76 >= CLOSE_CURLY_SYMBOL) && (LA329_76 <= COLLATE_SYMBOL)) || LA329_76 == COMMA_SYMBOL || LA329_76 == CONCAT_PIPES_SYMBOL || LA329_76 == CROSS_SYMBOL || ((LA329_76 >= DIV_OPERATOR) && (LA329_76 <= DIV_SYMBOL)) || LA329_76 == DOUBLE_QUOTED_TEXT || LA329_76 == EQUAL_OPERATOR || LA329_76 == FOR_SYMBOL || LA329_76 == FROM_SYMBOL || ((LA329_76 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_76 <= GREATER_THAN_OPERATOR)) || ((LA329_76 >= GROUP_SYMBOL) && (LA329_76 <= HAVING_SYMBOL)) || LA329_76 == HEX_NUMBER || LA329_76 == IDENTIFIER || LA329_76 == INNER_SYMBOL || LA329_76 == INTO_SYMBOL || LA329_76 == IN_SYMBOL || LA329_76 == IS_SYMBOL || ((LA329_76 >= JOIN_SYMBOL) && (LA329_76 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_76 >= LEFT_SYMBOL) && (LA329_76 <= LESS_THAN_OPERATOR)) || ((LA329_76 >= LIKE_SYMBOL) && (LA329_76 <= LIMIT_SYMBOL)) || LA329_76 == LOCK_SYMBOL || LA329_76 == LOGICAL_AND_OPERATOR || LA329_76 == LOGICAL_OR_OPERATOR || LA329_76 == MINUS_OPERATOR || ((LA329_76 >= MOD_OPERATOR) && (LA329_76 <= MOD_SYMBOL)) || ((LA329_76 >= MULT_OPERATOR) && (LA329_76 <= NATURAL_SYMBOL)) || ((LA329_76 >= NOT_EQUAL2_OPERATOR) && (LA329_76 <= NOT_SYMBOL)) || LA329_76 == NULL_SAFE_EQUAL_OPERATOR || LA329_76 == ON_SYMBOL || LA329_76 == OPEN_PAR_SYMBOL || ((LA329_76 >= ORDER_SYMBOL) && (LA329_76 <= OR_SYMBOL)) || LA329_76 == PLUS_OPERATOR || LA329_76 == PROCEDURE_SYMBOL || LA329_76 == REGEXP_SYMBOL || LA329_76 == RIGHT_SYMBOL || LA329_76 == SEMICOLON_SYMBOL || LA329_76 == SET_SYMBOL || ((LA329_76 >= SHIFT_LEFT_OPERATOR) && (LA329_76 <= SHIFT_RIGHT_OPERATOR)) || LA329_76 == SINGLE_QUOTED_TEXT || LA329_76 == STRAIGHT_JOIN_SYMBOL || LA329_76 == UNION_SYMBOL || LA329_76 == USING_SYMBOL || LA329_76 == WHERE_SYMBOL || LA329_76 == WITH_SYMBOL || LA329_76 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else if ( (LA329_76 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2268 = LA(3);
                                if ( (LA329_2268 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_2268 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2616 = LA(4);
                                        if ( (LA329_2616 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13427 = LA(5);
                                                if ( (LA329_13427 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13427 >= ACCOUNT_SYMBOL) && (LA329_13427 <= YEAR_SYMBOL)) || LA329_13427 == BACK_TICK_QUOTED_ID || LA329_13427 == DOUBLE_QUOTED_TEXT || LA329_13427 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13427;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2616 == EOF || ((LA329_2616 >= ACCOUNT_SYMBOL) && (LA329_2616 <= YEAR_SYMBOL)) || LA329_2616 == AND_SYMBOL || LA329_2616 == AS_SYMBOL || LA329_2616 == BACK_TICK_QUOTED_ID || LA329_2616 == BETWEEN_SYMBOL || LA329_2616 == BIN_NUMBER || LA329_2616 == BITWISE_AND_OPERATOR || ((LA329_2616 >= BITWISE_OR_OPERATOR) && (LA329_2616 <= BITWISE_XOR_OPERATOR)) || ((LA329_2616 >= CLOSE_CURLY_SYMBOL) && (LA329_2616 <= COLLATE_SYMBOL)) || LA329_2616 == COMMA_SYMBOL || LA329_2616 == CONCAT_PIPES_SYMBOL || LA329_2616 == CROSS_SYMBOL || ((LA329_2616 >= DIV_OPERATOR) && (LA329_2616 <= DIV_SYMBOL)) || LA329_2616 == DOUBLE_QUOTED_TEXT || LA329_2616 == EQUAL_OPERATOR || LA329_2616 == FOR_SYMBOL || LA329_2616 == FROM_SYMBOL || ((LA329_2616 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2616 <= GREATER_THAN_OPERATOR)) || ((LA329_2616 >= GROUP_SYMBOL) && (LA329_2616 <= HAVING_SYMBOL)) || LA329_2616 == HEX_NUMBER || LA329_2616 == IDENTIFIER || LA329_2616 == INNER_SYMBOL || LA329_2616 == INTO_SYMBOL || LA329_2616 == IN_SYMBOL || LA329_2616 == IS_SYMBOL || ((LA329_2616 >= JOIN_SYMBOL) && (LA329_2616 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2616 >= LEFT_SYMBOL) && (LA329_2616 <= LESS_THAN_OPERATOR)) || ((LA329_2616 >= LIKE_SYMBOL) && (LA329_2616 <= LIMIT_SYMBOL)) || LA329_2616 == LOCK_SYMBOL || LA329_2616 == LOGICAL_AND_OPERATOR || LA329_2616 == LOGICAL_OR_OPERATOR || LA329_2616 == MINUS_OPERATOR || ((LA329_2616 >= MOD_OPERATOR) && (LA329_2616 <= MOD_SYMBOL)) || ((LA329_2616 >= MULT_OPERATOR) && (LA329_2616 <= NATURAL_SYMBOL)) || ((LA329_2616 >= NOT_EQUAL2_OPERATOR) && (LA329_2616 <= NOT_SYMBOL)) || LA329_2616 == NULL_SAFE_EQUAL_OPERATOR || LA329_2616 == ON_SYMBOL || LA329_2616 == OPEN_PAR_SYMBOL || ((LA329_2616 >= ORDER_SYMBOL) && (LA329_2616 <= OR_SYMBOL)) || LA329_2616 == PLUS_OPERATOR || LA329_2616 == PROCEDURE_SYMBOL || LA329_2616 == REGEXP_SYMBOL || LA329_2616 == RIGHT_SYMBOL || LA329_2616 == SEMICOLON_SYMBOL || LA329_2616 == SET_SYMBOL || ((LA329_2616 >= SHIFT_LEFT_OPERATOR) && (LA329_2616 <= SHIFT_RIGHT_OPERATOR)) || LA329_2616 == SINGLE_QUOTED_TEXT || LA329_2616 == STRAIGHT_JOIN_SYMBOL || LA329_2616 == UNION_SYMBOL || LA329_2616 == USING_SYMBOL || LA329_2616 == WHERE_SYMBOL || LA329_2616 == WITH_SYMBOL || LA329_2616 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2616;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2268 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2617 = LA(4);
                                        if ( (LA329_2617 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13481 = LA(5);
                                                if ( (LA329_13481 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13481 >= ACCOUNT_SYMBOL) && (LA329_13481 <= YEAR_SYMBOL)) || LA329_13481 == BACK_TICK_QUOTED_ID || LA329_13481 == DOUBLE_QUOTED_TEXT || LA329_13481 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13481;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2617 == EOF || ((LA329_2617 >= ACCOUNT_SYMBOL) && (LA329_2617 <= YEAR_SYMBOL)) || LA329_2617 == AND_SYMBOL || LA329_2617 == AS_SYMBOL || LA329_2617 == BACK_TICK_QUOTED_ID || LA329_2617 == BETWEEN_SYMBOL || LA329_2617 == BIN_NUMBER || LA329_2617 == BITWISE_AND_OPERATOR || ((LA329_2617 >= BITWISE_OR_OPERATOR) && (LA329_2617 <= BITWISE_XOR_OPERATOR)) || ((LA329_2617 >= CLOSE_CURLY_SYMBOL) && (LA329_2617 <= COLLATE_SYMBOL)) || LA329_2617 == COMMA_SYMBOL || LA329_2617 == CONCAT_PIPES_SYMBOL || LA329_2617 == CROSS_SYMBOL || ((LA329_2617 >= DIV_OPERATOR) && (LA329_2617 <= DIV_SYMBOL)) || LA329_2617 == DOUBLE_QUOTED_TEXT || LA329_2617 == EQUAL_OPERATOR || LA329_2617 == FOR_SYMBOL || LA329_2617 == FROM_SYMBOL || ((LA329_2617 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2617 <= GREATER_THAN_OPERATOR)) || ((LA329_2617 >= GROUP_SYMBOL) && (LA329_2617 <= HAVING_SYMBOL)) || LA329_2617 == HEX_NUMBER || LA329_2617 == IDENTIFIER || LA329_2617 == INNER_SYMBOL || LA329_2617 == INTO_SYMBOL || LA329_2617 == IN_SYMBOL || LA329_2617 == IS_SYMBOL || ((LA329_2617 >= JOIN_SYMBOL) && (LA329_2617 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2617 >= LEFT_SYMBOL) && (LA329_2617 <= LESS_THAN_OPERATOR)) || ((LA329_2617 >= LIKE_SYMBOL) && (LA329_2617 <= LIMIT_SYMBOL)) || LA329_2617 == LOCK_SYMBOL || LA329_2617 == LOGICAL_AND_OPERATOR || LA329_2617 == LOGICAL_OR_OPERATOR || LA329_2617 == MINUS_OPERATOR || ((LA329_2617 >= MOD_OPERATOR) && (LA329_2617 <= MOD_SYMBOL)) || ((LA329_2617 >= MULT_OPERATOR) && (LA329_2617 <= NATURAL_SYMBOL)) || ((LA329_2617 >= NOT_EQUAL2_OPERATOR) && (LA329_2617 <= NOT_SYMBOL)) || LA329_2617 == NULL_SAFE_EQUAL_OPERATOR || LA329_2617 == ON_SYMBOL || LA329_2617 == OPEN_PAR_SYMBOL || ((LA329_2617 >= ORDER_SYMBOL) && (LA329_2617 <= OR_SYMBOL)) || LA329_2617 == PLUS_OPERATOR || LA329_2617 == PROCEDURE_SYMBOL || LA329_2617 == REGEXP_SYMBOL || LA329_2617 == RIGHT_SYMBOL || LA329_2617 == SEMICOLON_SYMBOL || LA329_2617 == SET_SYMBOL || ((LA329_2617 >= SHIFT_LEFT_OPERATOR) && (LA329_2617 <= SHIFT_RIGHT_OPERATOR)) || LA329_2617 == SINGLE_QUOTED_TEXT || LA329_2617 == STRAIGHT_JOIN_SYMBOL || LA329_2617 == UNION_SYMBOL || LA329_2617 == USING_SYMBOL || LA329_2617 == WHERE_SYMBOL || LA329_2617 == WITH_SYMBOL || LA329_2617 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2617;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2268 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2618 = LA(4);
                                        if ( (LA329_2618 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13535 = LA(5);
                                                if ( (LA329_13535 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13535 >= ACCOUNT_SYMBOL) && (LA329_13535 <= YEAR_SYMBOL)) || LA329_13535 == BACK_TICK_QUOTED_ID || LA329_13535 == DOUBLE_QUOTED_TEXT || LA329_13535 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13535;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2618 == EOF || ((LA329_2618 >= ACCOUNT_SYMBOL) && (LA329_2618 <= YEAR_SYMBOL)) || LA329_2618 == AND_SYMBOL || LA329_2618 == AS_SYMBOL || LA329_2618 == BACK_TICK_QUOTED_ID || LA329_2618 == BETWEEN_SYMBOL || LA329_2618 == BIN_NUMBER || LA329_2618 == BITWISE_AND_OPERATOR || ((LA329_2618 >= BITWISE_OR_OPERATOR) && (LA329_2618 <= BITWISE_XOR_OPERATOR)) || ((LA329_2618 >= CLOSE_CURLY_SYMBOL) && (LA329_2618 <= COLLATE_SYMBOL)) || LA329_2618 == COMMA_SYMBOL || LA329_2618 == CONCAT_PIPES_SYMBOL || LA329_2618 == CROSS_SYMBOL || ((LA329_2618 >= DIV_OPERATOR) && (LA329_2618 <= DIV_SYMBOL)) || LA329_2618 == DOUBLE_QUOTED_TEXT || LA329_2618 == EQUAL_OPERATOR || LA329_2618 == FOR_SYMBOL || LA329_2618 == FROM_SYMBOL || ((LA329_2618 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2618 <= GREATER_THAN_OPERATOR)) || ((LA329_2618 >= GROUP_SYMBOL) && (LA329_2618 <= HAVING_SYMBOL)) || LA329_2618 == HEX_NUMBER || LA329_2618 == IDENTIFIER || LA329_2618 == INNER_SYMBOL || LA329_2618 == INTO_SYMBOL || LA329_2618 == IN_SYMBOL || LA329_2618 == IS_SYMBOL || ((LA329_2618 >= JOIN_SYMBOL) && (LA329_2618 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2618 >= LEFT_SYMBOL) && (LA329_2618 <= LESS_THAN_OPERATOR)) || ((LA329_2618 >= LIKE_SYMBOL) && (LA329_2618 <= LIMIT_SYMBOL)) || LA329_2618 == LOCK_SYMBOL || LA329_2618 == LOGICAL_AND_OPERATOR || LA329_2618 == LOGICAL_OR_OPERATOR || LA329_2618 == MINUS_OPERATOR || ((LA329_2618 >= MOD_OPERATOR) && (LA329_2618 <= MOD_SYMBOL)) || ((LA329_2618 >= MULT_OPERATOR) && (LA329_2618 <= NATURAL_SYMBOL)) || ((LA329_2618 >= NOT_EQUAL2_OPERATOR) && (LA329_2618 <= NOT_SYMBOL)) || LA329_2618 == NULL_SAFE_EQUAL_OPERATOR || LA329_2618 == ON_SYMBOL || LA329_2618 == OPEN_PAR_SYMBOL || ((LA329_2618 >= ORDER_SYMBOL) && (LA329_2618 <= OR_SYMBOL)) || LA329_2618 == PLUS_OPERATOR || LA329_2618 == PROCEDURE_SYMBOL || LA329_2618 == REGEXP_SYMBOL || LA329_2618 == RIGHT_SYMBOL || LA329_2618 == SEMICOLON_SYMBOL || LA329_2618 == SET_SYMBOL || ((LA329_2618 >= SHIFT_LEFT_OPERATOR) && (LA329_2618 <= SHIFT_RIGHT_OPERATOR)) || LA329_2618 == SINGLE_QUOTED_TEXT || LA329_2618 == STRAIGHT_JOIN_SYMBOL || LA329_2618 == UNION_SYMBOL || LA329_2618 == USING_SYMBOL || LA329_2618 == WHERE_SYMBOL || LA329_2618 == WITH_SYMBOL || LA329_2618 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2618;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2268 >= ACTION_SYMBOL) && (LA329_2268 <= SHARE_SYMBOL)) || ((LA329_2268 >= SLOW_SYMBOL) && (LA329_2268 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2619 = LA(4);
                                        if ( (LA329_2619 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13589 = LA(5);
                                                if ( (LA329_13589 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13589 >= ACCOUNT_SYMBOL) && (LA329_13589 <= YEAR_SYMBOL)) || LA329_13589 == BACK_TICK_QUOTED_ID || LA329_13589 == DOUBLE_QUOTED_TEXT || LA329_13589 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13589;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2619 == EOF || ((LA329_2619 >= ACCOUNT_SYMBOL) && (LA329_2619 <= YEAR_SYMBOL)) || LA329_2619 == AND_SYMBOL || LA329_2619 == AS_SYMBOL || LA329_2619 == BACK_TICK_QUOTED_ID || LA329_2619 == BETWEEN_SYMBOL || LA329_2619 == BIN_NUMBER || LA329_2619 == BITWISE_AND_OPERATOR || ((LA329_2619 >= BITWISE_OR_OPERATOR) && (LA329_2619 <= BITWISE_XOR_OPERATOR)) || ((LA329_2619 >= CLOSE_CURLY_SYMBOL) && (LA329_2619 <= COLLATE_SYMBOL)) || LA329_2619 == COMMA_SYMBOL || LA329_2619 == CONCAT_PIPES_SYMBOL || LA329_2619 == CROSS_SYMBOL || ((LA329_2619 >= DIV_OPERATOR) && (LA329_2619 <= DIV_SYMBOL)) || LA329_2619 == DOUBLE_QUOTED_TEXT || LA329_2619 == EQUAL_OPERATOR || LA329_2619 == FOR_SYMBOL || LA329_2619 == FROM_SYMBOL || ((LA329_2619 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2619 <= GREATER_THAN_OPERATOR)) || ((LA329_2619 >= GROUP_SYMBOL) && (LA329_2619 <= HAVING_SYMBOL)) || LA329_2619 == HEX_NUMBER || LA329_2619 == IDENTIFIER || LA329_2619 == INNER_SYMBOL || LA329_2619 == INTO_SYMBOL || LA329_2619 == IN_SYMBOL || LA329_2619 == IS_SYMBOL || ((LA329_2619 >= JOIN_SYMBOL) && (LA329_2619 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2619 >= LEFT_SYMBOL) && (LA329_2619 <= LESS_THAN_OPERATOR)) || ((LA329_2619 >= LIKE_SYMBOL) && (LA329_2619 <= LIMIT_SYMBOL)) || LA329_2619 == LOCK_SYMBOL || LA329_2619 == LOGICAL_AND_OPERATOR || LA329_2619 == LOGICAL_OR_OPERATOR || LA329_2619 == MINUS_OPERATOR || ((LA329_2619 >= MOD_OPERATOR) && (LA329_2619 <= MOD_SYMBOL)) || ((LA329_2619 >= MULT_OPERATOR) && (LA329_2619 <= NATURAL_SYMBOL)) || ((LA329_2619 >= NOT_EQUAL2_OPERATOR) && (LA329_2619 <= NOT_SYMBOL)) || LA329_2619 == NULL_SAFE_EQUAL_OPERATOR || LA329_2619 == ON_SYMBOL || LA329_2619 == OPEN_PAR_SYMBOL || ((LA329_2619 >= ORDER_SYMBOL) && (LA329_2619 <= OR_SYMBOL)) || LA329_2619 == PLUS_OPERATOR || LA329_2619 == PROCEDURE_SYMBOL || LA329_2619 == REGEXP_SYMBOL || LA329_2619 == RIGHT_SYMBOL || LA329_2619 == SEMICOLON_SYMBOL || LA329_2619 == SET_SYMBOL || ((LA329_2619 >= SHIFT_LEFT_OPERATOR) && (LA329_2619 <= SHIFT_RIGHT_OPERATOR)) || LA329_2619 == SINGLE_QUOTED_TEXT || LA329_2619 == STRAIGHT_JOIN_SYMBOL || LA329_2619 == UNION_SYMBOL || LA329_2619 == USING_SYMBOL || LA329_2619 == WHERE_SYMBOL || LA329_2619 == WITH_SYMBOL || LA329_2619 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2619;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2268 >= ACCOUNT_SYMBOL) && (LA329_2268 <= XA_SYMBOL)) || LA329_2268 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2620 = LA(4);
                                        if ( (LA329_2620 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13643 = LA(5);
                                                if ( (LA329_13643 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13643 >= ACCOUNT_SYMBOL) && (LA329_13643 <= YEAR_SYMBOL)) || LA329_13643 == BACK_TICK_QUOTED_ID || LA329_13643 == DOUBLE_QUOTED_TEXT || LA329_13643 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13643;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2620 == EOF || ((LA329_2620 >= ACCOUNT_SYMBOL) && (LA329_2620 <= YEAR_SYMBOL)) || LA329_2620 == AND_SYMBOL || LA329_2620 == AS_SYMBOL || LA329_2620 == BACK_TICK_QUOTED_ID || LA329_2620 == BETWEEN_SYMBOL || LA329_2620 == BIN_NUMBER || LA329_2620 == BITWISE_AND_OPERATOR || ((LA329_2620 >= BITWISE_OR_OPERATOR) && (LA329_2620 <= BITWISE_XOR_OPERATOR)) || ((LA329_2620 >= CLOSE_CURLY_SYMBOL) && (LA329_2620 <= COLLATE_SYMBOL)) || LA329_2620 == COMMA_SYMBOL || LA329_2620 == CONCAT_PIPES_SYMBOL || LA329_2620 == CROSS_SYMBOL || ((LA329_2620 >= DIV_OPERATOR) && (LA329_2620 <= DIV_SYMBOL)) || LA329_2620 == DOUBLE_QUOTED_TEXT || LA329_2620 == EQUAL_OPERATOR || LA329_2620 == FOR_SYMBOL || LA329_2620 == FROM_SYMBOL || ((LA329_2620 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2620 <= GREATER_THAN_OPERATOR)) || ((LA329_2620 >= GROUP_SYMBOL) && (LA329_2620 <= HAVING_SYMBOL)) || LA329_2620 == HEX_NUMBER || LA329_2620 == IDENTIFIER || LA329_2620 == INNER_SYMBOL || LA329_2620 == INTO_SYMBOL || LA329_2620 == IN_SYMBOL || LA329_2620 == IS_SYMBOL || ((LA329_2620 >= JOIN_SYMBOL) && (LA329_2620 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2620 >= LEFT_SYMBOL) && (LA329_2620 <= LESS_THAN_OPERATOR)) || ((LA329_2620 >= LIKE_SYMBOL) && (LA329_2620 <= LIMIT_SYMBOL)) || LA329_2620 == LOCK_SYMBOL || LA329_2620 == LOGICAL_AND_OPERATOR || LA329_2620 == LOGICAL_OR_OPERATOR || LA329_2620 == MINUS_OPERATOR || ((LA329_2620 >= MOD_OPERATOR) && (LA329_2620 <= MOD_SYMBOL)) || ((LA329_2620 >= MULT_OPERATOR) && (LA329_2620 <= NATURAL_SYMBOL)) || ((LA329_2620 >= NOT_EQUAL2_OPERATOR) && (LA329_2620 <= NOT_SYMBOL)) || LA329_2620 == NULL_SAFE_EQUAL_OPERATOR || LA329_2620 == ON_SYMBOL || LA329_2620 == OPEN_PAR_SYMBOL || ((LA329_2620 >= ORDER_SYMBOL) && (LA329_2620 <= OR_SYMBOL)) || LA329_2620 == PLUS_OPERATOR || LA329_2620 == PROCEDURE_SYMBOL || LA329_2620 == REGEXP_SYMBOL || LA329_2620 == RIGHT_SYMBOL || LA329_2620 == SEMICOLON_SYMBOL || LA329_2620 == SET_SYMBOL || ((LA329_2620 >= SHIFT_LEFT_OPERATOR) && (LA329_2620 <= SHIFT_RIGHT_OPERATOR)) || LA329_2620 == SINGLE_QUOTED_TEXT || LA329_2620 == STRAIGHT_JOIN_SYMBOL || LA329_2620 == UNION_SYMBOL || LA329_2620 == USING_SYMBOL || LA329_2620 == WHERE_SYMBOL || LA329_2620 == WITH_SYMBOL || LA329_2620 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2620;


                                            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  = 329;
                                    EXCEPTION->state        = 2268;


                                    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  = 329;
                            EXCEPTION->state        = 76;


                            goto ruleselect_itemEx;

                        }
                    }
                }
                else if ( (LA329_0 == ACTION_SYMBOL || ((LA329_0 >= AFTER_SYMBOL) && (LA329_0 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA329_0 >= BINLOG_SYMBOL) && (LA329_0 <= CLASS_ORIGIN_SYMBOL)) || LA329_0 == CODE_SYMBOL || ((LA329_0 >= COLUMN_NAME_SYMBOL) && (LA329_0 <= DATETIME_SYMBOL)) || ((LA329_0 >= DEFAULT_AUTH_SYMBOL) && (LA329_0 <= GEOMETRY_SYMBOL)) || ((LA329_0 >= GRANTS_SYMBOL) && (LA329_0 <= HOSTS_SYMBOL)) || ((LA329_0 >= IDENTIFIED_SYMBOL) && (LA329_0 <= LEVEL_SYMBOL)) || ((LA329_0 >= LIST_SYMBOL) && (LA329_0 <= MESSAGE_TEXT_SYMBOL)) || LA329_0 == MIGRATE_SYMBOL || ((LA329_0 >= MIN_ROWS_SYMBOL) && (LA329_0 <= MODE_SYMBOL)) || ((LA329_0 >= MUTEX_SYMBOL) && (LA329_0 <= OFFSET_SYMBOL)) || ((LA329_0 >= ONE_SHOT_SYMBOL) && (LA329_0 <= PARTITIONS_SYMBOL)) || ((LA329_0 >= PHASE_SYMBOL) && (LA329_0 <= PLUGINS_SYMBOL)) || ((LA329_0 >= PRESERVE_SYMBOL) && (LA329_0 <= PROXY_SYMBOL)) || ((LA329_0 >= QUERY_SYMBOL) && (LA329_0 <= RETURNS_SYMBOL)) || ((LA329_0 >= ROLLUP_SYMBOL) && (LA329_0 <= ROWS_SYMBOL)) || LA329_0 == ROW_FORMAT_SYMBOL || ((LA329_0 >= RTREE_SYMBOL) && (LA329_0 <= SCHEMA_NAME_SYMBOL)) || ((LA329_0 >= SERIAL_SYMBOL) && (LA329_0 <= SHARE_SYMBOL)) || ((LA329_0 >= SLOW_SYMBOL) && (LA329_0 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA329_0 >= SUBJECT_SYMBOL) && (LA329_0 <= TRIGGERS_SYMBOL)) || ((LA329_0 >= TYPES_SYMBOL) && (LA329_0 <= USER_RESOURCES_SYMBOL)) || ((LA329_0 >= USE_FRM_SYMBOL) && (LA329_0 <= WAIT_SYMBOL)) || LA329_0 == WORK_SYMBOL || ((LA329_0 >= X509_SYMBOL) && (LA329_0 <= XML_SYMBOL))))
                {
                    {
                        int LA329_96 = LA(2);
                        if ( (LA329_96 == DOT_SYMBOL))
                        {
                            {
                                int LA329_2321 = LA(3);
                                if ( (LA329_2321 == MULT_OPERATOR))
                                {
                                    alt329=1;
                                }
                                else if ( (LA329_2321 == IDENTIFIER))
                                {
                                    {
                                        int LA329_2622 = LA(4);
                                        if ( (LA329_2622 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13697 = LA(5);
                                                if ( (LA329_13697 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13697 >= ACCOUNT_SYMBOL) && (LA329_13697 <= YEAR_SYMBOL)) || LA329_13697 == BACK_TICK_QUOTED_ID || LA329_13697 == DOUBLE_QUOTED_TEXT || LA329_13697 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13697;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2622 == EOF || ((LA329_2622 >= ACCOUNT_SYMBOL) && (LA329_2622 <= YEAR_SYMBOL)) || LA329_2622 == AND_SYMBOL || LA329_2622 == AS_SYMBOL || LA329_2622 == BACK_TICK_QUOTED_ID || LA329_2622 == BETWEEN_SYMBOL || LA329_2622 == BIN_NUMBER || LA329_2622 == BITWISE_AND_OPERATOR || ((LA329_2622 >= BITWISE_OR_OPERATOR) && (LA329_2622 <= BITWISE_XOR_OPERATOR)) || ((LA329_2622 >= CLOSE_CURLY_SYMBOL) && (LA329_2622 <= COLLATE_SYMBOL)) || LA329_2622 == COMMA_SYMBOL || LA329_2622 == CONCAT_PIPES_SYMBOL || LA329_2622 == CROSS_SYMBOL || ((LA329_2622 >= DIV_OPERATOR) && (LA329_2622 <= DIV_SYMBOL)) || LA329_2622 == DOUBLE_QUOTED_TEXT || LA329_2622 == EQUAL_OPERATOR || LA329_2622 == FOR_SYMBOL || LA329_2622 == FROM_SYMBOL || ((LA329_2622 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2622 <= GREATER_THAN_OPERATOR)) || ((LA329_2622 >= GROUP_SYMBOL) && (LA329_2622 <= HAVING_SYMBOL)) || LA329_2622 == HEX_NUMBER || LA329_2622 == IDENTIFIER || LA329_2622 == INNER_SYMBOL || LA329_2622 == INTO_SYMBOL || LA329_2622 == IN_SYMBOL || LA329_2622 == IS_SYMBOL || ((LA329_2622 >= JOIN_SYMBOL) && (LA329_2622 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2622 >= LEFT_SYMBOL) && (LA329_2622 <= LESS_THAN_OPERATOR)) || ((LA329_2622 >= LIKE_SYMBOL) && (LA329_2622 <= LIMIT_SYMBOL)) || LA329_2622 == LOCK_SYMBOL || LA329_2622 == LOGICAL_AND_OPERATOR || LA329_2622 == LOGICAL_OR_OPERATOR || LA329_2622 == MINUS_OPERATOR || ((LA329_2622 >= MOD_OPERATOR) && (LA329_2622 <= MOD_SYMBOL)) || ((LA329_2622 >= MULT_OPERATOR) && (LA329_2622 <= NATURAL_SYMBOL)) || ((LA329_2622 >= NOT_EQUAL2_OPERATOR) && (LA329_2622 <= NOT_SYMBOL)) || LA329_2622 == NULL_SAFE_EQUAL_OPERATOR || LA329_2622 == ON_SYMBOL || LA329_2622 == OPEN_PAR_SYMBOL || ((LA329_2622 >= ORDER_SYMBOL) && (LA329_2622 <= OR_SYMBOL)) || LA329_2622 == PLUS_OPERATOR || LA329_2622 == PROCEDURE_SYMBOL || LA329_2622 == REGEXP_SYMBOL || LA329_2622 == RIGHT_SYMBOL || LA329_2622 == SEMICOLON_SYMBOL || LA329_2622 == SET_SYMBOL || ((LA329_2622 >= SHIFT_LEFT_OPERATOR) && (LA329_2622 <= SHIFT_RIGHT_OPERATOR)) || LA329_2622 == SINGLE_QUOTED_TEXT || LA329_2622 == STRAIGHT_JOIN_SYMBOL || LA329_2622 == UNION_SYMBOL || LA329_2622 == USING_SYMBOL || LA329_2622 == WHERE_SYMBOL || LA329_2622 == WITH_SYMBOL || LA329_2622 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2622;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2321 == BACK_TICK_QUOTED_ID))
                                {
                                    {
                                        int LA329_2623 = LA(4);
                                        if ( (LA329_2623 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13751 = LA(5);
                                                if ( (LA329_13751 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13751 >= ACCOUNT_SYMBOL) && (LA329_13751 <= YEAR_SYMBOL)) || LA329_13751 == BACK_TICK_QUOTED_ID || LA329_13751 == DOUBLE_QUOTED_TEXT || LA329_13751 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13751;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2623 == EOF || ((LA329_2623 >= ACCOUNT_SYMBOL) && (LA329_2623 <= YEAR_SYMBOL)) || LA329_2623 == AND_SYMBOL || LA329_2623 == AS_SYMBOL || LA329_2623 == BACK_TICK_QUOTED_ID || LA329_2623 == BETWEEN_SYMBOL || LA329_2623 == BIN_NUMBER || LA329_2623 == BITWISE_AND_OPERATOR || ((LA329_2623 >= BITWISE_OR_OPERATOR) && (LA329_2623 <= BITWISE_XOR_OPERATOR)) || ((LA329_2623 >= CLOSE_CURLY_SYMBOL) && (LA329_2623 <= COLLATE_SYMBOL)) || LA329_2623 == COMMA_SYMBOL || LA329_2623 == CONCAT_PIPES_SYMBOL || LA329_2623 == CROSS_SYMBOL || ((LA329_2623 >= DIV_OPERATOR) && (LA329_2623 <= DIV_SYMBOL)) || LA329_2623 == DOUBLE_QUOTED_TEXT || LA329_2623 == EQUAL_OPERATOR || LA329_2623 == FOR_SYMBOL || LA329_2623 == FROM_SYMBOL || ((LA329_2623 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2623 <= GREATER_THAN_OPERATOR)) || ((LA329_2623 >= GROUP_SYMBOL) && (LA329_2623 <= HAVING_SYMBOL)) || LA329_2623 == HEX_NUMBER || LA329_2623 == IDENTIFIER || LA329_2623 == INNER_SYMBOL || LA329_2623 == INTO_SYMBOL || LA329_2623 == IN_SYMBOL || LA329_2623 == IS_SYMBOL || ((LA329_2623 >= JOIN_SYMBOL) && (LA329_2623 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2623 >= LEFT_SYMBOL) && (LA329_2623 <= LESS_THAN_OPERATOR)) || ((LA329_2623 >= LIKE_SYMBOL) && (LA329_2623 <= LIMIT_SYMBOL)) || LA329_2623 == LOCK_SYMBOL || LA329_2623 == LOGICAL_AND_OPERATOR || LA329_2623 == LOGICAL_OR_OPERATOR || LA329_2623 == MINUS_OPERATOR || ((LA329_2623 >= MOD_OPERATOR) && (LA329_2623 <= MOD_SYMBOL)) || ((LA329_2623 >= MULT_OPERATOR) && (LA329_2623 <= NATURAL_SYMBOL)) || ((LA329_2623 >= NOT_EQUAL2_OPERATOR) && (LA329_2623 <= NOT_SYMBOL)) || LA329_2623 == NULL_SAFE_EQUAL_OPERATOR || LA329_2623 == ON_SYMBOL || LA329_2623 == OPEN_PAR_SYMBOL || ((LA329_2623 >= ORDER_SYMBOL) && (LA329_2623 <= OR_SYMBOL)) || LA329_2623 == PLUS_OPERATOR || LA329_2623 == PROCEDURE_SYMBOL || LA329_2623 == REGEXP_SYMBOL || LA329_2623 == RIGHT_SYMBOL || LA329_2623 == SEMICOLON_SYMBOL || LA329_2623 == SET_SYMBOL || ((LA329_2623 >= SHIFT_LEFT_OPERATOR) && (LA329_2623 <= SHIFT_RIGHT_OPERATOR)) || LA329_2623 == SINGLE_QUOTED_TEXT || LA329_2623 == STRAIGHT_JOIN_SYMBOL || LA329_2623 == UNION_SYMBOL || LA329_2623 == USING_SYMBOL || LA329_2623 == WHERE_SYMBOL || LA329_2623 == WITH_SYMBOL || LA329_2623 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2623;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (LA329_2321 == DOUBLE_QUOTED_TEXT))
                                {
                                    {
                                        int LA329_2624 = LA(4);
                                        if ( (LA329_2624 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13805 = LA(5);
                                                if ( (LA329_13805 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13805 >= ACCOUNT_SYMBOL) && (LA329_13805 <= YEAR_SYMBOL)) || LA329_13805 == BACK_TICK_QUOTED_ID || LA329_13805 == DOUBLE_QUOTED_TEXT || LA329_13805 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13805;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2624 == EOF || ((LA329_2624 >= ACCOUNT_SYMBOL) && (LA329_2624 <= YEAR_SYMBOL)) || LA329_2624 == AND_SYMBOL || LA329_2624 == AS_SYMBOL || LA329_2624 == BACK_TICK_QUOTED_ID || LA329_2624 == BETWEEN_SYMBOL || LA329_2624 == BIN_NUMBER || LA329_2624 == BITWISE_AND_OPERATOR || ((LA329_2624 >= BITWISE_OR_OPERATOR) && (LA329_2624 <= BITWISE_XOR_OPERATOR)) || ((LA329_2624 >= CLOSE_CURLY_SYMBOL) && (LA329_2624 <= COLLATE_SYMBOL)) || LA329_2624 == COMMA_SYMBOL || LA329_2624 == CONCAT_PIPES_SYMBOL || LA329_2624 == CROSS_SYMBOL || ((LA329_2624 >= DIV_OPERATOR) && (LA329_2624 <= DIV_SYMBOL)) || LA329_2624 == DOUBLE_QUOTED_TEXT || LA329_2624 == EQUAL_OPERATOR || LA329_2624 == FOR_SYMBOL || LA329_2624 == FROM_SYMBOL || ((LA329_2624 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2624 <= GREATER_THAN_OPERATOR)) || ((LA329_2624 >= GROUP_SYMBOL) && (LA329_2624 <= HAVING_SYMBOL)) || LA329_2624 == HEX_NUMBER || LA329_2624 == IDENTIFIER || LA329_2624 == INNER_SYMBOL || LA329_2624 == INTO_SYMBOL || LA329_2624 == IN_SYMBOL || LA329_2624 == IS_SYMBOL || ((LA329_2624 >= JOIN_SYMBOL) && (LA329_2624 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2624 >= LEFT_SYMBOL) && (LA329_2624 <= LESS_THAN_OPERATOR)) || ((LA329_2624 >= LIKE_SYMBOL) && (LA329_2624 <= LIMIT_SYMBOL)) || LA329_2624 == LOCK_SYMBOL || LA329_2624 == LOGICAL_AND_OPERATOR || LA329_2624 == LOGICAL_OR_OPERATOR || LA329_2624 == MINUS_OPERATOR || ((LA329_2624 >= MOD_OPERATOR) && (LA329_2624 <= MOD_SYMBOL)) || ((LA329_2624 >= MULT_OPERATOR) && (LA329_2624 <= NATURAL_SYMBOL)) || ((LA329_2624 >= NOT_EQUAL2_OPERATOR) && (LA329_2624 <= NOT_SYMBOL)) || LA329_2624 == NULL_SAFE_EQUAL_OPERATOR || LA329_2624 == ON_SYMBOL || LA329_2624 == OPEN_PAR_SYMBOL || ((LA329_2624 >= ORDER_SYMBOL) && (LA329_2624 <= OR_SYMBOL)) || LA329_2624 == PLUS_OPERATOR || LA329_2624 == PROCEDURE_SYMBOL || LA329_2624 == REGEXP_SYMBOL || LA329_2624 == RIGHT_SYMBOL || LA329_2624 == SEMICOLON_SYMBOL || LA329_2624 == SET_SYMBOL || ((LA329_2624 >= SHIFT_LEFT_OPERATOR) && (LA329_2624 <= SHIFT_RIGHT_OPERATOR)) || LA329_2624 == SINGLE_QUOTED_TEXT || LA329_2624 == STRAIGHT_JOIN_SYMBOL || LA329_2624 == UNION_SYMBOL || LA329_2624 == USING_SYMBOL || LA329_2624 == WHERE_SYMBOL || LA329_2624 == WITH_SYMBOL || LA329_2624 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2624;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2321 >= ACTION_SYMBOL) && (LA329_2321 <= SHARE_SYMBOL)) || ((LA329_2321 >= SLOW_SYMBOL) && (LA329_2321 <= YEAR_SYMBOL))))
                                {
                                    {
                                        int LA329_2625 = LA(4);
                                        if ( (LA329_2625 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13859 = LA(5);
                                                if ( (LA329_13859 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13859 >= ACCOUNT_SYMBOL) && (LA329_13859 <= YEAR_SYMBOL)) || LA329_13859 == BACK_TICK_QUOTED_ID || LA329_13859 == DOUBLE_QUOTED_TEXT || LA329_13859 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13859;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2625 == EOF || ((LA329_2625 >= ACCOUNT_SYMBOL) && (LA329_2625 <= YEAR_SYMBOL)) || LA329_2625 == AND_SYMBOL || LA329_2625 == AS_SYMBOL || LA329_2625 == BACK_TICK_QUOTED_ID || LA329_2625 == BETWEEN_SYMBOL || LA329_2625 == BIN_NUMBER || LA329_2625 == BITWISE_AND_OPERATOR || ((LA329_2625 >= BITWISE_OR_OPERATOR) && (LA329_2625 <= BITWISE_XOR_OPERATOR)) || ((LA329_2625 >= CLOSE_CURLY_SYMBOL) && (LA329_2625 <= COLLATE_SYMBOL)) || LA329_2625 == COMMA_SYMBOL || LA329_2625 == CONCAT_PIPES_SYMBOL || LA329_2625 == CROSS_SYMBOL || ((LA329_2625 >= DIV_OPERATOR) && (LA329_2625 <= DIV_SYMBOL)) || LA329_2625 == DOUBLE_QUOTED_TEXT || LA329_2625 == EQUAL_OPERATOR || LA329_2625 == FOR_SYMBOL || LA329_2625 == FROM_SYMBOL || ((LA329_2625 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2625 <= GREATER_THAN_OPERATOR)) || ((LA329_2625 >= GROUP_SYMBOL) && (LA329_2625 <= HAVING_SYMBOL)) || LA329_2625 == HEX_NUMBER || LA329_2625 == IDENTIFIER || LA329_2625 == INNER_SYMBOL || LA329_2625 == INTO_SYMBOL || LA329_2625 == IN_SYMBOL || LA329_2625 == IS_SYMBOL || ((LA329_2625 >= JOIN_SYMBOL) && (LA329_2625 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2625 >= LEFT_SYMBOL) && (LA329_2625 <= LESS_THAN_OPERATOR)) || ((LA329_2625 >= LIKE_SYMBOL) && (LA329_2625 <= LIMIT_SYMBOL)) || LA329_2625 == LOCK_SYMBOL || LA329_2625 == LOGICAL_AND_OPERATOR || LA329_2625 == LOGICAL_OR_OPERATOR || LA329_2625 == MINUS_OPERATOR || ((LA329_2625 >= MOD_OPERATOR) && (LA329_2625 <= MOD_SYMBOL)) || ((LA329_2625 >= MULT_OPERATOR) && (LA329_2625 <= NATURAL_SYMBOL)) || ((LA329_2625 >= NOT_EQUAL2_OPERATOR) && (LA329_2625 <= NOT_SYMBOL)) || LA329_2625 == NULL_SAFE_EQUAL_OPERATOR || LA329_2625 == ON_SYMBOL || LA329_2625 == OPEN_PAR_SYMBOL || ((LA329_2625 >= ORDER_SYMBOL) && (LA329_2625 <= OR_SYMBOL)) || LA329_2625 == PLUS_OPERATOR || LA329_2625 == PROCEDURE_SYMBOL || LA329_2625 == REGEXP_SYMBOL || LA329_2625 == RIGHT_SYMBOL || LA329_2625 == SEMICOLON_SYMBOL || LA329_2625 == SET_SYMBOL || ((LA329_2625 >= SHIFT_LEFT_OPERATOR) && (LA329_2625 <= SHIFT_RIGHT_OPERATOR)) || LA329_2625 == SINGLE_QUOTED_TEXT || LA329_2625 == STRAIGHT_JOIN_SYMBOL || LA329_2625 == UNION_SYMBOL || LA329_2625 == USING_SYMBOL || LA329_2625 == WHERE_SYMBOL || LA329_2625 == WITH_SYMBOL || LA329_2625 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2625;


                                            goto ruleselect_itemEx;

                                        }
                                    }
                                }
                                else if ( (((LA329_2321 >= ACCOUNT_SYMBOL) && (LA329_2321 <= XA_SYMBOL)) || LA329_2321 == SHUTDOWN_SYMBOL))
                                {
                                    {
                                        int LA329_2626 = LA(4);
                                        if ( (LA329_2626 == DOT_SYMBOL))
                                        {
                                            {
                                                int LA329_13913 = LA(5);
                                                if ( (LA329_13913 == MULT_OPERATOR))
                                                {
                                                    alt329=1;
                                                }
                                                else if ( (((LA329_13913 >= ACCOUNT_SYMBOL) && (LA329_13913 <= YEAR_SYMBOL)) || LA329_13913 == BACK_TICK_QUOTED_ID || LA329_13913 == DOUBLE_QUOTED_TEXT || LA329_13913 == IDENTIFIER))
                                                {
                                                    alt329=2;
                                                }
                                                else
                                                {
                                                    if (BACKTRACKING>0)
                                                    {
                                                        FAILEDFLAG = ANTLR3_TRUE;
                                                        return retval;
                                                    }


                                                    CONSTRUCTEX();
                                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                                    EXCEPTION->message      = (void *)"";
                                                    EXCEPTION->decisionNum  = 329;
                                                    EXCEPTION->state        = 13913;


                                                    goto ruleselect_itemEx;

                                                }
                                            }
                                        }
                                        else if ( (LA329_2626 == EOF || ((LA329_2626 >= ACCOUNT_SYMBOL) && (LA329_2626 <= YEAR_SYMBOL)) || LA329_2626 == AND_SYMBOL || LA329_2626 == AS_SYMBOL || LA329_2626 == BACK_TICK_QUOTED_ID || LA329_2626 == BETWEEN_SYMBOL || LA329_2626 == BIN_NUMBER || LA329_2626 == BITWISE_AND_OPERATOR || ((LA329_2626 >= BITWISE_OR_OPERATOR) && (LA329_2626 <= BITWISE_XOR_OPERATOR)) || ((LA329_2626 >= CLOSE_CURLY_SYMBOL) && (LA329_2626 <= COLLATE_SYMBOL)) || LA329_2626 == COMMA_SYMBOL || LA329_2626 == CONCAT_PIPES_SYMBOL || LA329_2626 == CROSS_SYMBOL || ((LA329_2626 >= DIV_OPERATOR) && (LA329_2626 <= DIV_SYMBOL)) || LA329_2626 == DOUBLE_QUOTED_TEXT || LA329_2626 == EQUAL_OPERATOR || LA329_2626 == FOR_SYMBOL || LA329_2626 == FROM_SYMBOL || ((LA329_2626 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_2626 <= GREATER_THAN_OPERATOR)) || ((LA329_2626 >= GROUP_SYMBOL) && (LA329_2626 <= HAVING_SYMBOL)) || LA329_2626 == HEX_NUMBER || LA329_2626 == IDENTIFIER || LA329_2626 == INNER_SYMBOL || LA329_2626 == INTO_SYMBOL || LA329_2626 == IN_SYMBOL || LA329_2626 == IS_SYMBOL || ((LA329_2626 >= JOIN_SYMBOL) && (LA329_2626 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_2626 >= LEFT_SYMBOL) && (LA329_2626 <= LESS_THAN_OPERATOR)) || ((LA329_2626 >= LIKE_SYMBOL) && (LA329_2626 <= LIMIT_SYMBOL)) || LA329_2626 == LOCK_SYMBOL || LA329_2626 == LOGICAL_AND_OPERATOR || LA329_2626 == LOGICAL_OR_OPERATOR || LA329_2626 == MINUS_OPERATOR || ((LA329_2626 >= MOD_OPERATOR) && (LA329_2626 <= MOD_SYMBOL)) || ((LA329_2626 >= MULT_OPERATOR) && (LA329_2626 <= NATURAL_SYMBOL)) || ((LA329_2626 >= NOT_EQUAL2_OPERATOR) && (LA329_2626 <= NOT_SYMBOL)) || LA329_2626 == NULL_SAFE_EQUAL_OPERATOR || LA329_2626 == ON_SYMBOL || LA329_2626 == OPEN_PAR_SYMBOL || ((LA329_2626 >= ORDER_SYMBOL) && (LA329_2626 <= OR_SYMBOL)) || LA329_2626 == PLUS_OPERATOR || LA329_2626 == PROCEDURE_SYMBOL || LA329_2626 == REGEXP_SYMBOL || LA329_2626 == RIGHT_SYMBOL || LA329_2626 == SEMICOLON_SYMBOL || LA329_2626 == SET_SYMBOL || ((LA329_2626 >= SHIFT_LEFT_OPERATOR) && (LA329_2626 <= SHIFT_RIGHT_OPERATOR)) || LA329_2626 == SINGLE_QUOTED_TEXT || LA329_2626 == STRAIGHT_JOIN_SYMBOL || LA329_2626 == UNION_SYMBOL || LA329_2626 == USING_SYMBOL || LA329_2626 == WHERE_SYMBOL || LA329_2626 == WITH_SYMBOL || LA329_2626 == XOR_SYMBOL))
                                        {
                                            alt329=2;
                                        }
                                        else
                                        {
                                            if (BACKTRACKING>0)
                                            {
                                                FAILEDFLAG = ANTLR3_TRUE;
                                                return retval;
                                            }


                                            CONSTRUCTEX();
                                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                            EXCEPTION->message      = (void *)"";
                                            EXCEPTION->decisionNum  = 329;
                                            EXCEPTION->state        = 2626;


                                            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  = 329;
                                    EXCEPTION->state        = 2321;


                                    goto ruleselect_itemEx;

                                }
                            }
                        }
                        else if ( (LA329_96 == EOF || ((LA329_96 >= ACCOUNT_SYMBOL) && (LA329_96 <= YEAR_SYMBOL)) || LA329_96 == AND_SYMBOL || LA329_96 == AS_SYMBOL || LA329_96 == BACK_TICK_QUOTED_ID || LA329_96 == BETWEEN_SYMBOL || LA329_96 == BIN_NUMBER || LA329_96 == BITWISE_AND_OPERATOR || ((LA329_96 >= BITWISE_OR_OPERATOR) && (LA329_96 <= BITWISE_XOR_OPERATOR)) || ((LA329_96 >= CLOSE_CURLY_SYMBOL) && (LA329_96 <= COLLATE_SYMBOL)) || LA329_96 == COMMA_SYMBOL || LA329_96 == CONCAT_PIPES_SYMBOL || LA329_96 == CROSS_SYMBOL || ((LA329_96 >= DIV_OPERATOR) && (LA329_96 <= DIV_SYMBOL)) || LA329_96 == DOUBLE_QUOTED_TEXT || LA329_96 == EQUAL_OPERATOR || LA329_96 == FOR_SYMBOL || LA329_96 == FROM_SYMBOL || ((LA329_96 >= GREATER_OR_EQUAL_OPERATOR) && (LA329_96 <= GREATER_THAN_OPERATOR)) || ((LA329_96 >= GROUP_SYMBOL) && (LA329_96 <= HAVING_SYMBOL)) || LA329_96 == HEX_NUMBER || LA329_96 == IDENTIFIER || LA329_96 == INNER_SYMBOL || LA329_96 == INTO_SYMBOL || LA329_96 == IN_SYMBOL || LA329_96 == IS_SYMBOL || ((LA329_96 >= JOIN_SYMBOL) && (LA329_96 <= JSON_SEPARATOR_SYMBOL)) || ((LA329_96 >= LEFT_SYMBOL) && (LA329_96 <= LESS_THAN_OPERATOR)) || ((LA329_96 >= LIKE_SYMBOL) && (LA329_96 <= LIMIT_SYMBOL)) || LA329_96 == LOCK_SYMBOL || LA329_96 == LOGICAL_AND_OPERATOR || LA329_96 == LOGICAL_OR_OPERATOR || LA329_96 == MINUS_OPERATOR || ((LA329_96 >= MOD_OPERATOR) && (LA329_96 <= MOD_SYMBOL)) || ((LA329_96 >= MULT_OPERATOR) && (LA329_96 <= NATURAL_SYMBOL)) || ((LA329_96 >= NOT_EQUAL2_OPERATOR) && (LA329_96 <= NOT_SYMBOL)) || LA329_96 == NULL_SAFE_EQUAL_OPERATOR || LA329_96 == ON_SYMBOL || LA329_96 == OPEN_PAR_SYMBOL || ((LA329_96 >= ORDER_SYMBOL) && (LA329_96 <= OR_SYMBOL)) || LA329_96 == PLUS_OPERATOR || LA329_96 == PROCEDURE_SYMBOL || LA329_96 == REGEXP_SYMBOL || LA329_96 == RIGHT_SYMBOL || LA329_96 == SEMICOLON_SYMBOL || LA329_96 == SET_SYMBOL || ((LA329_96 >= SHIFT_LEFT_OPERATOR) && (LA329_96 <= SHIFT_RIGHT_OPERATOR)) || LA329_96 == SINGLE_QUOTED_TEXT || LA329_96 == STRAIGHT_JOIN_SYMBOL || LA329_96 == UNION_SYMBOL || LA329_96 == USING_SYMBOL || LA329_96 == WHERE_SYMBOL || LA329_96 == WITH_SYMBOL || LA329_96 == XOR_SYMBOL))
                        {
                            alt329=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 329;
                            EXCEPTION->state        = 96;


                            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  = 329;
                    EXCEPTION->state        = 0;


                    goto ruleselect_itemEx;

                }
            }
            switch (alt329)
            {
        	case 1:
        	    // MySQL.g:1211:2: table_wild
        	    {
        	        FOLLOWPUSH(FOLLOW_table_wild_in_select_item5331);
        	        table_wild942=table_wild(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) { CREATE_stream_table_wild; stream_table_wild->add(stream_table_wild, table_wild942.tree, NULL); }

        	        /* AST REWRITE
        	         * elements          : table_wild
        	         * 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;
        	        	// 1211:13: -> ^( COLUMN_REF_TOKEN table_wild )
        	        	{
        	        	    // MySQL.g:1211:16: ^( COLUMN_REF_TOKEN table_wild )
        	        	    {
        	        	        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, COLUMN_REF_TOKEN, (pANTLR3_UINT8)"COLUMN_REF_TOKEN")
        	        	        , root_1));

        	        	        ADAPTOR->addChild(ADAPTOR, root_1, stream_table_wild == NULL ? NULL : stream_table_wild->nextTree(stream_table_wild));

        	        	        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:1212:4: expression ( select_alias )?
        	    {
        	        FOLLOWPUSH(FOLLOW_expression_in_select_item5344);
        	        expression943=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_itemEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression943.tree, NULL); }

        	        // MySQL.g:1212:15: ( select_alias )?
        	        {
        	            int alt328=2;
        	            {
        	                int LA328_0 = LA(1);
        	                if ( (((LA328_0 >= ACCOUNT_SYMBOL) && (LA328_0 <= YEAR_SYMBOL)) || LA328_0 == AS_SYMBOL || LA328_0 == BACK_TICK_QUOTED_ID || LA328_0 == BIN_NUMBER || LA328_0 == DOUBLE_QUOTED_TEXT || LA328_0 == HEX_NUMBER || LA328_0 == IDENTIFIER || LA328_0 == SINGLE_QUOTED_TEXT))
        	                {
        	                    alt328=1;
        	                }
        	            }
        	            switch (alt328)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1212:15: select_alias
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_select_alias_in_select_item5346);
        	        	        select_alias944=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_alias944.tree, NULL); }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        /* AST REWRITE
        	         * elements          : select_alias, expression
        	         * 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;
        	        	// 1212:29: -> ^( SELECT_EXPR_TOKEN expression ( select_alias )? )
        	        	{
        	        	    // MySQL.g:1212:32: ^( SELECT_EXPR_TOKEN 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_TOKEN, (pANTLR3_UINT8)"SELECT_EXPR_TOKEN")
        	        	        , root_1));

        	        	        ADAPTOR->addChild(ADAPTOR, root_1, stream_expression == NULL ? NULL : stream_expression->nextTree(stream_expression));

        	        	        // MySQL.g:1212:63: ( 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_table_wild != NULL) stream_table_wild->free(stream_table_wild);
    }


            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:1215:1: select_alias : ( AS_SYMBOL )? ( identifier | text_string ) ;
 */
static MySQLParser_select_alias_return
select_alias(pMySQLParser ctx)
{
    MySQLParser_select_alias_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AS_SYMBOL945;
    MySQLParser_identifier_return identifier946;
    #undef	RETURN_TYPE_identifier946
    #define	RETURN_TYPE_identifier946 MySQLParser_identifier_return

    MySQLParser_text_string_return text_string947;
    #undef	RETURN_TYPE_text_string947
    #define	RETURN_TYPE_text_string947 MySQLParser_text_string_return

    pANTLR3_BASE_TREE AS_SYMBOL945_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AS_SYMBOL945       = NULL;
    identifier946.tree = NULL;

    text_string947.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AS_SYMBOL945_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1215:13: ( ( AS_SYMBOL )? ( identifier | text_string ) )
        // MySQL.g:1216:2: ( AS_SYMBOL )? ( identifier | text_string )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1216:2: ( AS_SYMBOL )?
            {
                int alt330=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    	{
                    		alt330=1;
                    	}
                        break;
                }

                switch (alt330)
                {
            	case 1:
            	    // MySQL.g:1216:2: AS_SYMBOL
            	    {
            	        AS_SYMBOL945 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_select_alias5367);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_aliasEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AS_SYMBOL945_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL945));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL945_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1216:13: ( identifier | text_string )
            {
                int alt331=2;
                {
                    int LA331_0 = LA(1);
                    if ( (((LA331_0 >= ACCOUNT_SYMBOL) && (LA331_0 <= YEAR_SYMBOL)) || LA331_0 == BACK_TICK_QUOTED_ID || LA331_0 == DOUBLE_QUOTED_TEXT || LA331_0 == IDENTIFIER))
                    {
                        alt331=1;
                    }
                    else if ( (LA331_0 == BIN_NUMBER || LA331_0 == HEX_NUMBER || LA331_0 == SINGLE_QUOTED_TEXT))
                    {
                        alt331=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 331;
                        EXCEPTION->state        = 0;


                        goto ruleselect_aliasEx;

                    }
                }
                switch (alt331)
                {
            	case 1:
            	    // MySQL.g:1216:14: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_select_alias5371);
            	        identifier946=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_aliasEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier946.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1216:27: text_string
            	    {
            	        FOLLOWPUSH(FOLLOW_text_string_in_select_alias5375);
            	        text_string947=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_aliasEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string947.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // 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 limit_clause
 * MySQL.g:1219: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_SYMBOL948;
    MySQLParser_limit_options_return limit_options949;
    #undef	RETURN_TYPE_limit_options949
    #define	RETURN_TYPE_limit_options949 MySQLParser_limit_options_return

    pANTLR3_BASE_TREE LIMIT_SYMBOL948_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LIMIT_SYMBOL948       = NULL;
    limit_options949.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LIMIT_SYMBOL948_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1219:13: ( LIMIT_SYMBOL limit_options )
        // MySQL.g:1220:2: LIMIT_SYMBOL limit_options
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LIMIT_SYMBOL948 = (pANTLR3_COMMON_TOKEN) MATCHT(LIMIT_SYMBOL, &FOLLOW_LIMIT_SYMBOL_in_limit_clause5395);
            if  (HASEXCEPTION())
            {
                goto rulelimit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LIMIT_SYMBOL948_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIMIT_SYMBOL948));
            ADAPTOR->addChild(ADAPTOR, root_0, LIMIT_SYMBOL948_tree);
            }

            FOLLOWPUSH(FOLLOW_limit_options_in_limit_clause5397);
            limit_options949=limit_options(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelimit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_options949.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 simple_limit_clause
 * MySQL.g:1223:1: simple_limit_clause : LIMIT_SYMBOL limit_option ;
 */
static MySQLParser_simple_limit_clause_return
simple_limit_clause(pMySQLParser ctx)
{
    MySQLParser_simple_limit_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LIMIT_SYMBOL950;
    MySQLParser_limit_option_return limit_option951;
    #undef	RETURN_TYPE_limit_option951
    #define	RETURN_TYPE_limit_option951 MySQLParser_limit_option_return

    pANTLR3_BASE_TREE LIMIT_SYMBOL950_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LIMIT_SYMBOL950       = NULL;
    limit_option951.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LIMIT_SYMBOL950_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1223:20: ( LIMIT_SYMBOL limit_option )
        // MySQL.g:1224:2: LIMIT_SYMBOL limit_option
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LIMIT_SYMBOL950 = (pANTLR3_COMMON_TOKEN) MATCHT(LIMIT_SYMBOL, &FOLLOW_LIMIT_SYMBOL_in_simple_limit_clause5406);
            if  (HASEXCEPTION())
            {
                goto rulesimple_limit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LIMIT_SYMBOL950_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIMIT_SYMBOL950));
            ADAPTOR->addChild(ADAPTOR, root_0, LIMIT_SYMBOL950_tree);
            }

            FOLLOWPUSH(FOLLOW_limit_option_in_simple_limit_clause5408);
            limit_option951=limit_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesimple_limit_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_option951.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesimple_limit_clauseEx; /* Prevent compiler warnings */
    rulesimple_limit_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 simple_limit_clause */

/**
 * $ANTLR start limit_options
 * MySQL.g:1227:1: limit_options : limit_option ( options {greedy=true; } : ( 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    set953;
    MySQLParser_limit_option_return limit_option952;
    #undef	RETURN_TYPE_limit_option952
    #define	RETURN_TYPE_limit_option952 MySQLParser_limit_option_return

    MySQLParser_limit_option_return limit_option954;
    #undef	RETURN_TYPE_limit_option954
    #define	RETURN_TYPE_limit_option954 MySQLParser_limit_option_return

    pANTLR3_BASE_TREE set953_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set953       = NULL;
    limit_option952.tree = NULL;

    limit_option954.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set953_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1227:14: ( limit_option ( options {greedy=true; } : ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option )? )
        // MySQL.g:1228:2: limit_option ( options {greedy=true; } : ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_limit_option_in_limit_options5417);
            limit_option952=limit_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelimit_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_option952.tree);

            // MySQL.g:1228:15: ( options {greedy=true; } : ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option )?
            {
                int alt332=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    	{
                    		{
                    		    int LA332_1 = LA(2);
                    		    if ( (LA332_1 == IDENTIFIER))
                    		    {
                    		        alt332=1;
                    		    }
                    		    else if ( (LA332_1 == BACK_TICK_QUOTED_ID))
                    		    {
                    		        alt332=1;
                    		    }
                    		    else if ( (LA332_1 == DOUBLE_QUOTED_TEXT))
                    		    {
                    		        alt332=1;
                    		    }
                    		    else if ( (((LA332_1 >= ACTION_SYMBOL) && (LA332_1 <= SHARE_SYMBOL)) || ((LA332_1 >= SLOW_SYMBOL) && (LA332_1 <= YEAR_SYMBOL))))
                    		    {
                    		        alt332=1;
                    		    }
                    		    else if ( (((LA332_1 >= ACCOUNT_SYMBOL) && (LA332_1 <= XA_SYMBOL)) || LA332_1 == SHUTDOWN_SYMBOL || LA332_1 == INT_NUMBER || LA332_1 == LONG_NUMBER || LA332_1 == PARAM_MARKER || LA332_1 == ULONGLONG_NUMBER))
                    		    {
                    		        alt332=1;
                    		    }
                    		}
                    	}
                        break;
                    case OFFSET_SYMBOL:
                    	{
                    		alt332=1;
                    	}
                        break;
                }

                switch (alt332)
                {
            	case 1:
            	    // MySQL.g:1228:45: ( COMMA_SYMBOL | OFFSET_SYMBOL ) limit_option
            	    {
            	        set953=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == OFFSET_SYMBOL || LA(1) == COMMA_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set953))
            	            );
            	            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_options5441);
            	        limit_option954=limit_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelimit_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_option954.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:1231:1: limit_option : ( identifier | PARAM_MARKER | ULONGLONG_NUMBER | LONG_NUMBER | INT_NUMBER );
 */
static MySQLParser_limit_option_return
limit_option(pMySQLParser ctx)
{
    MySQLParser_limit_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARAM_MARKER956;
    pANTLR3_COMMON_TOKEN    ULONGLONG_NUMBER957;
    pANTLR3_COMMON_TOKEN    LONG_NUMBER958;
    pANTLR3_COMMON_TOKEN    INT_NUMBER959;
    MySQLParser_identifier_return identifier955;
    #undef	RETURN_TYPE_identifier955
    #define	RETURN_TYPE_identifier955 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PARAM_MARKER956_tree;
    pANTLR3_BASE_TREE ULONGLONG_NUMBER957_tree;
    pANTLR3_BASE_TREE LONG_NUMBER958_tree;
    pANTLR3_BASE_TREE INT_NUMBER959_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARAM_MARKER956       = NULL;
    ULONGLONG_NUMBER957       = NULL;
    LONG_NUMBER958       = NULL;
    INT_NUMBER959       = NULL;
    identifier955.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARAM_MARKER956_tree   = NULL;
    ULONGLONG_NUMBER957_tree   = NULL;
    LONG_NUMBER958_tree   = NULL;
    INT_NUMBER959_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1231:13: ( identifier | PARAM_MARKER | ULONGLONG_NUMBER | LONG_NUMBER | INT_NUMBER )

            ANTLR3_UINT32 alt333;

            alt333=5;

            {
                int LA333_0 = LA(1);
                if ( (((LA333_0 >= ACCOUNT_SYMBOL) && (LA333_0 <= YEAR_SYMBOL)) || LA333_0 == BACK_TICK_QUOTED_ID || LA333_0 == DOUBLE_QUOTED_TEXT || LA333_0 == IDENTIFIER))
                {
                    alt333=1;
                }
                else if ( (LA333_0 == PARAM_MARKER))
                {
                    alt333=2;
                }
                else if ( (LA333_0 == ULONGLONG_NUMBER))
                {
                    alt333=3;
                }
                else if ( (LA333_0 == LONG_NUMBER))
                {
                    alt333=4;
                }
                else if ( (LA333_0 == INT_NUMBER))
                {
                    alt333=5;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 333;
                    EXCEPTION->state        = 0;


                    goto rulelimit_optionEx;

                }
            }
            switch (alt333)
            {
        	case 1:
        	    // MySQL.g:1232:2: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_limit_option5452);
        	        identifier955=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier955.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1233:4: PARAM_MARKER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PARAM_MARKER956 = (pANTLR3_COMMON_TOKEN) MATCHT(PARAM_MARKER, &FOLLOW_PARAM_MARKER_in_limit_option5457);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARAM_MARKER956_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARAM_MARKER956));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARAM_MARKER956_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1234:4: ULONGLONG_NUMBER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ULONGLONG_NUMBER957 = (pANTLR3_COMMON_TOKEN) MATCHT(ULONGLONG_NUMBER, &FOLLOW_ULONGLONG_NUMBER_in_limit_option5462);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ULONGLONG_NUMBER957_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ULONGLONG_NUMBER957));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ULONGLONG_NUMBER957_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1235:4: LONG_NUMBER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONG_NUMBER958 = (pANTLR3_COMMON_TOKEN) MATCHT(LONG_NUMBER, &FOLLOW_LONG_NUMBER_in_limit_option5467);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONG_NUMBER958_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONG_NUMBER958));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONG_NUMBER958_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1236:4: INT_NUMBER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INT_NUMBER959 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_limit_option5472);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelimit_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INT_NUMBER959_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER959));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER959_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:1239:1: into_clause : INTO_SYMBOL ( OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )? | DUMPFILE_SYMBOL string_literal | ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) )* ) ;
 */
static MySQLParser_into_clause_return
into_clause(pMySQLParser ctx)
{
    MySQLParser_into_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INTO_SYMBOL960;
    pANTLR3_COMMON_TOKEN    OUTFILE_SYMBOL961;
    pANTLR3_COMMON_TOKEN    DUMPFILE_SYMBOL966;
    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL968;
    pANTLR3_COMMON_TOKEN    AT_TEXT_SUFFIX970;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL971;
    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL972;
    pANTLR3_COMMON_TOKEN    AT_TEXT_SUFFIX974;
    MySQLParser_string_literal_return string_literal962;
    #undef	RETURN_TYPE_string_literal962
    #define	RETURN_TYPE_string_literal962 MySQLParser_string_literal_return

    MySQLParser_charset_clause_return charset_clause963;
    #undef	RETURN_TYPE_charset_clause963
    #define	RETURN_TYPE_charset_clause963 MySQLParser_charset_clause_return

    MySQLParser_fields_clause_return fields_clause964;
    #undef	RETURN_TYPE_fields_clause964
    #define	RETURN_TYPE_fields_clause964 MySQLParser_fields_clause_return

    MySQLParser_lines_clause_return lines_clause965;
    #undef	RETURN_TYPE_lines_clause965
    #define	RETURN_TYPE_lines_clause965 MySQLParser_lines_clause_return

    MySQLParser_string_literal_return string_literal967;
    #undef	RETURN_TYPE_string_literal967
    #define	RETURN_TYPE_string_literal967 MySQLParser_string_literal_return

    MySQLParser_text_or_identifier_return text_or_identifier969;
    #undef	RETURN_TYPE_text_or_identifier969
    #define	RETURN_TYPE_text_or_identifier969 MySQLParser_text_or_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier973;
    #undef	RETURN_TYPE_text_or_identifier973
    #define	RETURN_TYPE_text_or_identifier973 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE INTO_SYMBOL960_tree;
    pANTLR3_BASE_TREE OUTFILE_SYMBOL961_tree;
    pANTLR3_BASE_TREE DUMPFILE_SYMBOL966_tree;
    pANTLR3_BASE_TREE AT_SIGN_SYMBOL968_tree;
    pANTLR3_BASE_TREE AT_TEXT_SUFFIX970_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL971_tree;
    pANTLR3_BASE_TREE AT_SIGN_SYMBOL972_tree;
    pANTLR3_BASE_TREE AT_TEXT_SUFFIX974_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTO_SYMBOL960       = NULL;
    OUTFILE_SYMBOL961       = NULL;
    DUMPFILE_SYMBOL966       = NULL;
    AT_SIGN_SYMBOL968       = NULL;
    AT_TEXT_SUFFIX970       = NULL;
    COMMA_SYMBOL971       = NULL;
    AT_SIGN_SYMBOL972       = NULL;
    AT_TEXT_SUFFIX974       = NULL;
    string_literal962.tree = NULL;

    charset_clause963.tree = NULL;

    fields_clause964.tree = NULL;

    lines_clause965.tree = NULL;

    string_literal967.tree = NULL;

    text_or_identifier969.tree = NULL;

    text_or_identifier973.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTO_SYMBOL960_tree   = NULL;
    OUTFILE_SYMBOL961_tree   = NULL;
    DUMPFILE_SYMBOL966_tree   = NULL;
    AT_SIGN_SYMBOL968_tree   = NULL;
    AT_TEXT_SUFFIX970_tree   = NULL;
    COMMA_SYMBOL971_tree   = NULL;
    AT_SIGN_SYMBOL972_tree   = NULL;
    AT_TEXT_SUFFIX974_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1239:12: ( INTO_SYMBOL ( OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )? | DUMPFILE_SYMBOL string_literal | ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) )* ) )
        // MySQL.g:1240:2: INTO_SYMBOL ( OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )? | DUMPFILE_SYMBOL string_literal | ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) )* )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            INTO_SYMBOL960 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_into_clause5481);
            if  (HASEXCEPTION())
            {
                goto ruleinto_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL960_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL960));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL960_tree);
            }

            // MySQL.g:1241:2: ( OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )? | DUMPFILE_SYMBOL string_literal | ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) )* )
            {
                int alt342=3;
                {
                    int LA342_0 = LA(1);
                    if ( (LA342_0 == OUTFILE_SYMBOL))
                    {
                        alt342=1;
                    }
                    else if ( (LA342_0 == DUMPFILE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case DOUBLE_QUOTED_TEXT:
                        case NCHAR_TEXT:
                        case SINGLE_QUOTED_TEXT:
                        case UNDERSCORE_CHARSET:
                        	{
                        		alt342=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:
                        	{
                        		alt342=3;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 342;
                            EXCEPTION->state        = 2;


                            goto ruleinto_clauseEx;

                        }

                    }
                    else if ( (((LA342_0 >= ACCOUNT_SYMBOL) && (LA342_0 <= DISK_SYMBOL)) || ((LA342_0 >= DUPLICATE_SYMBOL) && (LA342_0 <= YEAR_SYMBOL)) || ((LA342_0 >= AT_SIGN_SYMBOL) && (LA342_0 <= AT_TEXT_SUFFIX)) || LA342_0 == BACK_TICK_QUOTED_ID || LA342_0 == DOUBLE_QUOTED_TEXT || LA342_0 == IDENTIFIER || LA342_0 == SINGLE_QUOTED_TEXT))
                    {
                        alt342=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 342;
                        EXCEPTION->state        = 0;


                        goto ruleinto_clauseEx;

                    }
                }
                switch (alt342)
                {
            	case 1:
            	    // MySQL.g:1242:3: OUTFILE_SYMBOL string_literal ( charset_clause )? ( fields_clause )? ( lines_clause )?
            	    {
            	        OUTFILE_SYMBOL961 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTFILE_SYMBOL, &FOLLOW_OUTFILE_SYMBOL_in_into_clause5488);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OUTFILE_SYMBOL961_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTFILE_SYMBOL961));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OUTFILE_SYMBOL961_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_into_clause5490);
            	        string_literal962=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal962.tree);

            	        // MySQL.g:1242:33: ( charset_clause )?
            	        {
            	            int alt334=2;
            	            switch ( LA(1) )
            	            {
            	                case CHARSET_SYMBOL:
            	                case CHAR_SYMBOL:
            	                	{
            	                		alt334=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt334)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1242:33: charset_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_charset_clause_in_into_clause5492);
            	        	        charset_clause963=charset_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause963.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1242:49: ( fields_clause )?
            	        {
            	            int alt335=2;
            	            switch ( LA(1) )
            	            {
            	                case COLUMNS_SYMBOL:
            	                	{
            	                		alt335=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt335)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1242:49: fields_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_fields_clause_in_into_clause5495);
            	        	        fields_clause964=fields_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fields_clause964.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1242:64: ( lines_clause )?
            	        {
            	            int alt336=2;
            	            switch ( LA(1) )
            	            {
            	                case LINES_SYMBOL:
            	                	{
            	                		alt336=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt336)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1242:64: lines_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_lines_clause_in_into_clause5498);
            	        	        lines_clause965=lines_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lines_clause965.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1243:5: DUMPFILE_SYMBOL string_literal
            	    {
            	        DUMPFILE_SYMBOL966 = (pANTLR3_COMMON_TOKEN) MATCHT(DUMPFILE_SYMBOL, &FOLLOW_DUMPFILE_SYMBOL_in_into_clause5505);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DUMPFILE_SYMBOL966_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DUMPFILE_SYMBOL966));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DUMPFILE_SYMBOL966_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_string_literal_in_into_clause5507);
            	        string_literal967=string_literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleinto_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal967.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1244:5: ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) )*
            	    {
            	        // MySQL.g:1244:5: ( AT_SIGN_SYMBOL )?
            	        {
            	            int alt337=2;
            	            switch ( LA(1) )
            	            {
            	                case AT_SIGN_SYMBOL:
            	                	{
            	                		alt337=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt337)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1244:5: AT_SIGN_SYMBOL
            	        	    {
            	        	        AT_SIGN_SYMBOL968 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_into_clause5513);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AT_SIGN_SYMBOL968_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL968));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL968_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1244:21: ( text_or_identifier | AT_TEXT_SUFFIX )
            	        {
            	            int alt338=2;
            	            {
            	                int LA338_0 = LA(1);
            	                if ( (((LA338_0 >= ACCOUNT_SYMBOL) && (LA338_0 <= YEAR_SYMBOL)) || LA338_0 == BACK_TICK_QUOTED_ID || LA338_0 == DOUBLE_QUOTED_TEXT || LA338_0 == IDENTIFIER || LA338_0 == SINGLE_QUOTED_TEXT))
            	                {
            	                    alt338=1;
            	                }
            	                else if ( (LA338_0 == AT_TEXT_SUFFIX))
            	                {
            	                    alt338=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 338;
            	                    EXCEPTION->state        = 0;


            	                    goto ruleinto_clauseEx;

            	                }
            	            }
            	            switch (alt338)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1244:22: text_or_identifier
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_into_clause5517);
            	        	        text_or_identifier969=text_or_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier969.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1244:43: AT_TEXT_SUFFIX
            	        	    {
            	        	        AT_TEXT_SUFFIX970 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_TEXT_SUFFIX, &FOLLOW_AT_TEXT_SUFFIX_in_into_clause5521);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AT_TEXT_SUFFIX970_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_TEXT_SUFFIX970));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_TEXT_SUFFIX970_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1244:59: ( COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX ) )*

            	        for (;;)
            	        {
            	            int alt341=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt341=1;
            	            	}
            	                break;

            	            }

            	            switch (alt341)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1244:60: COMMA_SYMBOL ( AT_SIGN_SYMBOL )? ( text_or_identifier | AT_TEXT_SUFFIX )
            	        	    {
            	        	        COMMA_SYMBOL971 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_into_clause5525);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleinto_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL971_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL971));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL971_tree);
            	        	        }

            	        	        // MySQL.g:1244:73: ( AT_SIGN_SYMBOL )?
            	        	        {
            	        	            int alt339=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AT_SIGN_SYMBOL:
            	        	                	{
            	        	                		alt339=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt339)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1244:73: AT_SIGN_SYMBOL
            	        	        	    {
            	        	        	        AT_SIGN_SYMBOL972 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_into_clause5527);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleinto_clauseEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AT_SIGN_SYMBOL972_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL972));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL972_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:1244:89: ( text_or_identifier | AT_TEXT_SUFFIX )
            	        	        {
            	        	            int alt340=2;
            	        	            {
            	        	                int LA340_0 = LA(1);
            	        	                if ( (((LA340_0 >= ACCOUNT_SYMBOL) && (LA340_0 <= YEAR_SYMBOL)) || LA340_0 == BACK_TICK_QUOTED_ID || LA340_0 == DOUBLE_QUOTED_TEXT || LA340_0 == IDENTIFIER || LA340_0 == SINGLE_QUOTED_TEXT))
            	        	                {
            	        	                    alt340=1;
            	        	                }
            	        	                else if ( (LA340_0 == AT_TEXT_SUFFIX))
            	        	                {
            	        	                    alt340=2;
            	        	                }
            	        	                else
            	        	                {
            	        	                    if (BACKTRACKING>0)
            	        	                    {
            	        	                        FAILEDFLAG = ANTLR3_TRUE;
            	        	                        return retval;
            	        	                    }


            	        	                    CONSTRUCTEX();
            	        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                    EXCEPTION->message      = (void *)"";
            	        	                    EXCEPTION->decisionNum  = 340;
            	        	                    EXCEPTION->state        = 0;


            	        	                    goto ruleinto_clauseEx;

            	        	                }
            	        	            }
            	        	            switch (alt340)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1244:90: text_or_identifier
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_into_clause5531);
            	        	        	        text_or_identifier973=text_or_identifier(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleinto_clauseEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier973.tree);

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:1244:111: AT_TEXT_SUFFIX
            	        	        	    {
            	        	        	        AT_TEXT_SUFFIX974 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_TEXT_SUFFIX, &FOLLOW_AT_TEXT_SUFFIX_in_into_clause5535);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleinto_clauseEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        AT_TEXT_SUFFIX974_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_TEXT_SUFFIX974));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_TEXT_SUFFIX974_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop341;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop341: ; /* 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 procedure_analyse_clause
 * MySQL.g:1248:1: procedure_analyse_clause : PROCEDURE_SYMBOL ^ ANALYSE_SYMBOL OPEN_PAR_SYMBOL ( INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? )? 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_SYMBOL975;
    pANTLR3_COMMON_TOKEN    ANALYSE_SYMBOL976;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL977;
    pANTLR3_COMMON_TOKEN    INT_NUMBER978;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL979;
    pANTLR3_COMMON_TOKEN    INT_NUMBER980;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL981;

    pANTLR3_BASE_TREE PROCEDURE_SYMBOL975_tree;
    pANTLR3_BASE_TREE ANALYSE_SYMBOL976_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL977_tree;
    pANTLR3_BASE_TREE INT_NUMBER978_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL979_tree;
    pANTLR3_BASE_TREE INT_NUMBER980_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL981_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PROCEDURE_SYMBOL975       = NULL;
    ANALYSE_SYMBOL976       = NULL;
    OPEN_PAR_SYMBOL977       = NULL;
    INT_NUMBER978       = NULL;
    COMMA_SYMBOL979       = NULL;
    INT_NUMBER980       = NULL;
    CLOSE_PAR_SYMBOL981       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PROCEDURE_SYMBOL975_tree   = NULL;
    ANALYSE_SYMBOL976_tree   = NULL;
    OPEN_PAR_SYMBOL977_tree   = NULL;
    INT_NUMBER978_tree   = NULL;
    COMMA_SYMBOL979_tree   = NULL;
    INT_NUMBER980_tree   = NULL;
    CLOSE_PAR_SYMBOL981_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1248:25: ( PROCEDURE_SYMBOL ^ ANALYSE_SYMBOL OPEN_PAR_SYMBOL ( INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1249:2: PROCEDURE_SYMBOL ^ ANALYSE_SYMBOL OPEN_PAR_SYMBOL ( INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            PROCEDURE_SYMBOL975 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_procedure_analyse_clause5550);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PROCEDURE_SYMBOL975_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL975))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PROCEDURE_SYMBOL975_tree, root_0));
            }

            ANALYSE_SYMBOL976 = (pANTLR3_COMMON_TOKEN) MATCHT(ANALYSE_SYMBOL, &FOLLOW_ANALYSE_SYMBOL_in_procedure_analyse_clause5553);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ANALYSE_SYMBOL976_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ANALYSE_SYMBOL976));
            ADAPTOR->addChild(ADAPTOR, root_0, ANALYSE_SYMBOL976_tree);
            }

            OPEN_PAR_SYMBOL977 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_procedure_analyse_clause5555);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL977_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL977));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL977_tree);
            }

            // MySQL.g:1249:51: ( INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? )?
            {
                int alt344=2;
                switch ( LA(1) )
                {
                    case INT_NUMBER:
                    	{
                    		alt344=1;
                    	}
                        break;
                }

                switch (alt344)
                {
            	case 1:
            	    // MySQL.g:1249:52: INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )?
            	    {
            	        INT_NUMBER978 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_procedure_analyse_clause5558);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprocedure_analyse_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INT_NUMBER978_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER978));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER978_tree);
            	        }

            	        // MySQL.g:1249:63: ( COMMA_SYMBOL INT_NUMBER )?
            	        {
            	            int alt343=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt343=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt343)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1249:64: COMMA_SYMBOL INT_NUMBER
            	        	    {
            	        	        COMMA_SYMBOL979 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_procedure_analyse_clause5561);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_analyse_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL979_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL979));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL979_tree);
            	        	        }

            	        	        INT_NUMBER980 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_procedure_analyse_clause5563);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleprocedure_analyse_clauseEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INT_NUMBER980_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER980));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER980_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL981 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_procedure_analyse_clause5569);
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_analyse_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL981_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL981));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL981_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:1252: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_SYMBOL982;
    MySQLParser_expression_return expression983;
    #undef	RETURN_TYPE_expression983
    #define	RETURN_TYPE_expression983 MySQLParser_expression_return

    pANTLR3_BASE_TREE HAVING_SYMBOL982_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    HAVING_SYMBOL982       = NULL;
    expression983.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    HAVING_SYMBOL982_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1252:14: ( HAVING_SYMBOL ^ expression )
        // MySQL.g:1253:2: HAVING_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            HAVING_SYMBOL982 = (pANTLR3_COMMON_TOKEN) MATCHT(HAVING_SYMBOL, &FOLLOW_HAVING_SYMBOL_in_having_clause5578);
            if  (HASEXCEPTION())
            {
                goto rulehaving_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HAVING_SYMBOL982_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HAVING_SYMBOL982))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, HAVING_SYMBOL982_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_having_clause5581);
            expression983=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehaving_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression983.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:1256: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_SYMBOL984;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL985;
    MySQLParser_expression_list_with_direction_return expression_list_with_direction986;
    #undef	RETURN_TYPE_expression_list_with_direction986
    #define	RETURN_TYPE_expression_list_with_direction986 MySQLParser_expression_list_with_direction_return

    MySQLParser_olap_option_return olap_option987;
    #undef	RETURN_TYPE_olap_option987
    #define	RETURN_TYPE_olap_option987 MySQLParser_olap_option_return

    pANTLR3_BASE_TREE GROUP_SYMBOL984_tree;
    pANTLR3_BASE_TREE BY_SYMBOL985_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GROUP_SYMBOL984       = NULL;
    BY_SYMBOL985       = NULL;
    expression_list_with_direction986.tree = NULL;

    olap_option987.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GROUP_SYMBOL984_tree   = NULL;
    BY_SYMBOL985_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1256:16: ( GROUP_SYMBOL ^ BY_SYMBOL expression_list_with_direction ( olap_option )? )
        // MySQL.g:1257:2: GROUP_SYMBOL ^ BY_SYMBOL expression_list_with_direction ( olap_option )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GROUP_SYMBOL984 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_group_by_clause5590);
            if  (HASEXCEPTION())
            {
                goto rulegroup_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_SYMBOL984_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL984))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, GROUP_SYMBOL984_tree, root_0));
            }

            BY_SYMBOL985 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_group_by_clause5593);
            if  (HASEXCEPTION())
            {
                goto rulegroup_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL985_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL985));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL985_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_list_with_direction_in_group_by_clause5595);
            expression_list_with_direction986=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_direction986.tree);

            // MySQL.g:1257:57: ( olap_option )?
            {
                int alt345=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case CUBE_SYMBOL:
                    		    case ROLLUP_SYMBOL:
                    		    	{
                    		    		alt345=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt345)
                {
            	case 1:
            	    // MySQL.g:1257:57: olap_option
            	    {
            	        FOLLOWPUSH(FOLLOW_olap_option_in_group_by_clause5597);
            	        olap_option987=olap_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegroup_by_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, olap_option987.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:1260: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_SYMBOL988;
    pANTLR3_COMMON_TOKEN    CUBE_SYMBOL989;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL990;
    pANTLR3_COMMON_TOKEN    ROLLUP_SYMBOL991;

    pANTLR3_BASE_TREE WITH_SYMBOL988_tree;
    pANTLR3_BASE_TREE CUBE_SYMBOL989_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL990_tree;
    pANTLR3_BASE_TREE ROLLUP_SYMBOL991_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL988       = NULL;
    CUBE_SYMBOL989       = NULL;
    WITH_SYMBOL990       = NULL;
    ROLLUP_SYMBOL991       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL988_tree   = NULL;
    CUBE_SYMBOL989_tree   = NULL;
    WITH_SYMBOL990_tree   = NULL;
    ROLLUP_SYMBOL991_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1260:12: ( WITH_SYMBOL CUBE_SYMBOL | WITH_SYMBOL ROLLUP_SYMBOL )

            ANTLR3_UINT32 alt346;

            alt346=2;

            switch ( LA(1) )
            {
            case WITH_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case CUBE_SYMBOL:
            			{
            				alt346=1;
            			}
            		    break;
            		case ROLLUP_SYMBOL:
            			{
            				alt346=2;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 346;
            		    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  = 346;
                EXCEPTION->state        = 0;


                goto ruleolap_optionEx;

            }

            switch (alt346)
            {
        	case 1:
        	    // MySQL.g:1261:2: WITH_SYMBOL CUBE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL988 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_olap_option5607);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL988_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL988));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL988_tree);
        	        }

        	        CUBE_SYMBOL989 = (pANTLR3_COMMON_TOKEN) MATCHT(CUBE_SYMBOL, &FOLLOW_CUBE_SYMBOL_in_olap_option5609);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CUBE_SYMBOL989_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CUBE_SYMBOL989));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CUBE_SYMBOL989_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1262:4: WITH_SYMBOL ROLLUP_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL990 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_olap_option5614);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL990_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL990));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL990_tree);
        	        }

        	        ROLLUP_SYMBOL991 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLUP_SYMBOL, &FOLLOW_ROLLUP_SYMBOL_in_olap_option5616);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleolap_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROLLUP_SYMBOL991_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLUP_SYMBOL991));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROLLUP_SYMBOL991_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:1265: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_SYMBOL992;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL993;
    MySQLParser_expression_list_with_direction_return expression_list_with_direction994;
    #undef	RETURN_TYPE_expression_list_with_direction994
    #define	RETURN_TYPE_expression_list_with_direction994 MySQLParser_expression_list_with_direction_return

    pANTLR3_BASE_TREE ORDER_SYMBOL992_tree;
    pANTLR3_BASE_TREE BY_SYMBOL993_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ORDER_SYMBOL992       = NULL;
    BY_SYMBOL993       = NULL;
    expression_list_with_direction994.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ORDER_SYMBOL992_tree   = NULL;
    BY_SYMBOL993_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1265:16: ( ORDER_SYMBOL ^ BY_SYMBOL expression_list_with_direction )
        // MySQL.g:1266:2: ORDER_SYMBOL ^ BY_SYMBOL expression_list_with_direction
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ORDER_SYMBOL992 = (pANTLR3_COMMON_TOKEN) MATCHT(ORDER_SYMBOL, &FOLLOW_ORDER_SYMBOL_in_order_by_clause5625);
            if  (HASEXCEPTION())
            {
                goto ruleorder_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ORDER_SYMBOL992_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ORDER_SYMBOL992))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ORDER_SYMBOL992_tree, root_0));
            }

            BY_SYMBOL993 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_order_by_clause5628);
            if  (HASEXCEPTION())
            {
                goto ruleorder_by_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL993_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL993));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL993_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_list_with_direction_in_order_by_clause5630);
            expression_list_with_direction994=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_direction994.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 order_by_or_limit
 * MySQL.g:1269:1: order_by_or_limit : ( order_by_clause ( limit_clause )? | limit_clause );
 */
static MySQLParser_order_by_or_limit_return
order_by_or_limit(pMySQLParser ctx)
{
    MySQLParser_order_by_or_limit_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_order_by_clause_return order_by_clause995;
    #undef	RETURN_TYPE_order_by_clause995
    #define	RETURN_TYPE_order_by_clause995 MySQLParser_order_by_clause_return

    MySQLParser_limit_clause_return limit_clause996;
    #undef	RETURN_TYPE_limit_clause996
    #define	RETURN_TYPE_limit_clause996 MySQLParser_limit_clause_return

    MySQLParser_limit_clause_return limit_clause997;
    #undef	RETURN_TYPE_limit_clause997
    #define	RETURN_TYPE_limit_clause997 MySQLParser_limit_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    order_by_clause995.tree = NULL;

    limit_clause996.tree = NULL;

    limit_clause997.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1269:18: ( order_by_clause ( limit_clause )? | limit_clause )

            ANTLR3_UINT32 alt348;

            alt348=2;

            switch ( LA(1) )
            {
            case ORDER_SYMBOL:
            	{
            		alt348=1;
            	}
                break;
            case LIMIT_SYMBOL:
            	{
            		alt348=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 348;
                EXCEPTION->state        = 0;


                goto ruleorder_by_or_limitEx;

            }

            switch (alt348)
            {
        	case 1:
        	    // MySQL.g:1270:2: order_by_clause ( limit_clause )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_order_by_or_limit5639);
        	        order_by_clause995=order_by_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleorder_by_or_limitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause995.tree);

        	        // MySQL.g:1270:18: ( limit_clause )?
        	        {
        	            int alt347=2;
        	            switch ( LA(1) )
        	            {
        	                case LIMIT_SYMBOL:
        	                	{
        	                		alt347=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt347)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1270:18: limit_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_order_by_or_limit5641);
        	        	        limit_clause996=limit_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleorder_by_or_limitEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause996.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1271:4: limit_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_limit_clause_in_order_by_or_limit5647);
        	        limit_clause997=limit_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleorder_by_or_limitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause997.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleorder_by_or_limitEx; /* Prevent compiler warnings */
    ruleorder_by_or_limitEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_or_limit */

/**
 * $ANTLR start direction
 * MySQL.g:1274: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    set998;

    pANTLR3_BASE_TREE set998_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set998       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set998_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1274:10: ( ASC_SYMBOL | DESC_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set998=(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, set998))
                );
                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 from_clause
 * MySQL.g:1279:1: from_clause : FROM_SYMBOL table_reference_list ;
 */
static MySQLParser_from_clause_return
from_clause(pMySQLParser ctx)
{
    MySQLParser_from_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FROM_SYMBOL999;
    MySQLParser_table_reference_list_return table_reference_list1000;
    #undef	RETURN_TYPE_table_reference_list1000
    #define	RETURN_TYPE_table_reference_list1000 MySQLParser_table_reference_list_return

    pANTLR3_BASE_TREE FROM_SYMBOL999_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FROM_SYMBOL999       = NULL;
    table_reference_list1000.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FROM_SYMBOL999_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1279:12: ( FROM_SYMBOL table_reference_list )
        // MySQL.g:1280:2: FROM_SYMBOL table_reference_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FROM_SYMBOL999 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_from_clause5670);
            if  (HASEXCEPTION())
            {
                goto rulefrom_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FROM_SYMBOL999_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL999));
            ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL999_tree);
            }

            FOLLOWPUSH(FOLLOW_table_reference_list_in_from_clause5672);
            table_reference_list1000=table_reference_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefrom_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference_list1000.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefrom_clauseEx; /* Prevent compiler warnings */
    rulefrom_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 from_clause */

/**
 * $ANTLR start where_clause
 * MySQL.g:1283: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_SYMBOL1001;
    MySQLParser_expression_return expression1002;
    #undef	RETURN_TYPE_expression1002
    #define	RETURN_TYPE_expression1002 MySQLParser_expression_return

    pANTLR3_BASE_TREE WHERE_SYMBOL1001_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHERE_SYMBOL1001       = NULL;
    expression1002.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHERE_SYMBOL1001_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1283:13: ( WHERE_SYMBOL ^ expression )
        // MySQL.g:1284:2: WHERE_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHERE_SYMBOL1001 = (pANTLR3_COMMON_TOKEN) MATCHT(WHERE_SYMBOL, &FOLLOW_WHERE_SYMBOL_in_where_clause5681);
            if  (HASEXCEPTION())
            {
                goto rulewhere_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHERE_SYMBOL1001_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHERE_SYMBOL1001))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, WHERE_SYMBOL1001_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_where_clause5684);
            expression1002=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhere_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1002.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_reference_list
 * MySQL.g:1287:1: table_reference_list : ( join_table_list | DUAL_SYMBOL );
 */
static MySQLParser_table_reference_list_return
table_reference_list(pMySQLParser ctx)
{
    MySQLParser_table_reference_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DUAL_SYMBOL1004;
    MySQLParser_join_table_list_return join_table_list1003;
    #undef	RETURN_TYPE_join_table_list1003
    #define	RETURN_TYPE_join_table_list1003 MySQLParser_join_table_list_return

    pANTLR3_BASE_TREE DUAL_SYMBOL1004_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DUAL_SYMBOL1004       = NULL;
    join_table_list1003.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DUAL_SYMBOL1004_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1287:21: ( join_table_list | DUAL_SYMBOL )

            ANTLR3_UINT32 alt349;

            alt349=2;

            {
                int LA349_0 = LA(1);
                if ( (((LA349_0 >= ACCOUNT_SYMBOL) && (LA349_0 <= YEAR_SYMBOL)) || LA349_0 == BACK_TICK_QUOTED_ID || LA349_0 == DOT_SYMBOL || LA349_0 == DOUBLE_QUOTED_TEXT || LA349_0 == IDENTIFIER || ((LA349_0 >= OPEN_CURLY_SYMBOL) && (LA349_0 <= OPEN_PAR_SYMBOL)) || LA349_0 == SELECT_SYMBOL))
                {
                    alt349=1;
                }
                else if ( (LA349_0 == DUAL_SYMBOL))
                {
                    alt349=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 349;
                    EXCEPTION->state        = 0;


                    goto ruletable_reference_listEx;

                }
            }
            switch (alt349)
            {
        	case 1:
        	    // MySQL.g:1288:2: join_table_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_join_table_list_in_table_reference_list5693);
        	        join_table_list1003=join_table_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_reference_listEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_table_list1003.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1289:4: DUAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DUAL_SYMBOL1004 = (pANTLR3_COMMON_TOKEN) MATCHT(DUAL_SYMBOL, &FOLLOW_DUAL_SYMBOL_in_table_reference_list5698);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_reference_listEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DUAL_SYMBOL1004_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DUAL_SYMBOL1004));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DUAL_SYMBOL1004_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletable_reference_listEx; /* Prevent compiler warnings */
    ruletable_reference_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_reference_list */

/**
 * $ANTLR start join_table_list
 * MySQL.g:1292:1: join_table_list : escaped_table_reference ( options {greedy=true; } : COMMA_SYMBOL escaped_table_reference )* ;
 */
static MySQLParser_join_table_list_return
join_table_list(pMySQLParser ctx)
{
    MySQLParser_join_table_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1006;
    MySQLParser_escaped_table_reference_return escaped_table_reference1005;
    #undef	RETURN_TYPE_escaped_table_reference1005
    #define	RETURN_TYPE_escaped_table_reference1005 MySQLParser_escaped_table_reference_return

    MySQLParser_escaped_table_reference_return escaped_table_reference1007;
    #undef	RETURN_TYPE_escaped_table_reference1007
    #define	RETURN_TYPE_escaped_table_reference1007 MySQLParser_escaped_table_reference_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1006_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1006       = NULL;
    escaped_table_reference1005.tree = NULL;

    escaped_table_reference1007.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1006_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1292:16: ( escaped_table_reference ( options {greedy=true; } : COMMA_SYMBOL escaped_table_reference )* )
        // MySQL.g:1293:3: escaped_table_reference ( options {greedy=true; } : COMMA_SYMBOL escaped_table_reference )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_escaped_table_reference_in_join_table_list5709);
            escaped_table_reference1005=escaped_table_reference(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulejoin_table_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, escaped_table_reference1005.tree);

            // MySQL.g:1293:27: ( options {greedy=true; } : COMMA_SYMBOL escaped_table_reference )*

            for (;;)
            {
                int alt350=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt350=1;
                	}
                    break;

                }

                switch (alt350)
                {
            	case 1:
            	    // MySQL.g:1293:57: COMMA_SYMBOL escaped_table_reference
            	    {
            	        COMMA_SYMBOL1006 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_join_table_list5725);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulejoin_table_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1006_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1006));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1006_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_escaped_table_reference_in_join_table_list5727);
            	        escaped_table_reference1007=escaped_table_reference(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulejoin_table_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, escaped_table_reference1007.tree);

            	    }
            	    break;

            	default:
            	    goto loop350;	/* break out of the loop */
            	    break;
                }
            }
            loop350: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulejoin_table_listEx; /* Prevent compiler warnings */
    rulejoin_table_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 join_table_list */

/**
 * $ANTLR start escaped_table_reference
 * MySQL.g:1302:1: escaped_table_reference : ( table_reference | OPEN_CURLY_SYMBOL identifier table_reference CLOSE_CURLY_SYMBOL );
 */
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    OPEN_CURLY_SYMBOL1009;
    pANTLR3_COMMON_TOKEN    CLOSE_CURLY_SYMBOL1012;
    MySQLParser_table_reference_return table_reference1008;
    #undef	RETURN_TYPE_table_reference1008
    #define	RETURN_TYPE_table_reference1008 MySQLParser_table_reference_return

    MySQLParser_identifier_return identifier1010;
    #undef	RETURN_TYPE_identifier1010
    #define	RETURN_TYPE_identifier1010 MySQLParser_identifier_return

    MySQLParser_table_reference_return table_reference1011;
    #undef	RETURN_TYPE_table_reference1011
    #define	RETURN_TYPE_table_reference1011 MySQLParser_table_reference_return

    pANTLR3_BASE_TREE OPEN_CURLY_SYMBOL1009_tree;
    pANTLR3_BASE_TREE CLOSE_CURLY_SYMBOL1012_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_CURLY_SYMBOL1009       = NULL;
    CLOSE_CURLY_SYMBOL1012       = NULL;
    table_reference1008.tree = NULL;

    identifier1010.tree = NULL;

    table_reference1011.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_CURLY_SYMBOL1009_tree   = NULL;
    CLOSE_CURLY_SYMBOL1012_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1302:24: ( table_reference | OPEN_CURLY_SYMBOL identifier table_reference CLOSE_CURLY_SYMBOL )

            ANTLR3_UINT32 alt351;

            alt351=2;

            {
                int LA351_0 = LA(1);
                if ( (((LA351_0 >= ACCOUNT_SYMBOL) && (LA351_0 <= YEAR_SYMBOL)) || LA351_0 == BACK_TICK_QUOTED_ID || LA351_0 == DOT_SYMBOL || LA351_0 == DOUBLE_QUOTED_TEXT || LA351_0 == IDENTIFIER || LA351_0 == OPEN_PAR_SYMBOL || LA351_0 == SELECT_SYMBOL))
                {
                    alt351=1;
                }
                else if ( (LA351_0 == OPEN_CURLY_SYMBOL))
                {
                    alt351=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 351;
                    EXCEPTION->state        = 0;


                    goto ruleescaped_table_referenceEx;

                }
            }
            switch (alt351)
            {
        	case 1:
        	    // MySQL.g:1303:2: table_reference
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_table_reference_in_escaped_table_reference5744);
        	        table_reference1008=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference1008.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1304:4: OPEN_CURLY_SYMBOL identifier table_reference CLOSE_CURLY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_CURLY_SYMBOL1009 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_CURLY_SYMBOL, &FOLLOW_OPEN_CURLY_SYMBOL_in_escaped_table_reference5749);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_CURLY_SYMBOL1009_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_CURLY_SYMBOL1009));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_CURLY_SYMBOL1009_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_escaped_table_reference5751);
        	        identifier1010=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1010.tree);

        	        FOLLOWPUSH(FOLLOW_table_reference_in_escaped_table_reference5753);
        	        table_reference1011=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference1011.tree);

        	        CLOSE_CURLY_SYMBOL1012 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_CURLY_SYMBOL, &FOLLOW_CLOSE_CURLY_SYMBOL_in_escaped_table_reference5755);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleescaped_table_referenceEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_CURLY_SYMBOL1012_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_CURLY_SYMBOL1012));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_CURLY_SYMBOL1012_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:1307:1: table_reference : table_factor ( options {greedy=true; } : 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_factor1013;
    #undef	RETURN_TYPE_table_factor1013
    #define	RETURN_TYPE_table_factor1013 MySQLParser_table_factor_return

    MySQLParser_join_return join1014;
    #undef	RETURN_TYPE_join1014
    #define	RETURN_TYPE_join1014 MySQLParser_join_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    table_factor1013.tree = NULL;

    join1014.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1307:16: ( table_factor ( options {greedy=true; } : join )* )
        // MySQL.g:1308:2: table_factor ( options {greedy=true; } : join )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_factor_in_table_reference5765);
            table_factor1013=table_factor(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_referenceEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_factor1013.tree);

            // MySQL.g:1308:15: ( options {greedy=true; } : join )*

            for (;;)
            {
                int alt352=2;
                switch ( LA(1) )
                {
                case CROSS_SYMBOL:
                case INNER_SYMBOL:
                	{
                		alt352=1;
                	}
                    break;
                case JOIN_SYMBOL:
                	{
                		alt352=1;
                	}
                    break;
                case STRAIGHT_JOIN_SYMBOL:
                	{
                		alt352=1;
                	}
                    break;
                case LEFT_SYMBOL:
                case RIGHT_SYMBOL:
                	{
                		alt352=1;
                	}
                    break;
                case NATURAL_SYMBOL:
                	{
                		alt352=1;
                	}
                    break;

                }

                switch (alt352)
                {
            	case 1:
            	    // MySQL.g:1308:45: join
            	    {
            	        FOLLOWPUSH(FOLLOW_join_in_table_reference5781);
            	        join1014=join(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_referenceEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join1014.tree);

            	    }
            	    break;

            	default:
            	    goto loop352;	/* break out of the loop */
            	    break;
                }
            }
            loop352: ; /* Jump out to here if this rule does not match */


        }

    }

    // 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 (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:1311:1: join : join_table -> ^( JOIN_EXPR_TOKEN join_table ) ;
 */
static MySQLParser_join_return
join(pMySQLParser ctx)
{
    MySQLParser_join_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_join_table_return join_table1015;
    #undef	RETURN_TYPE_join_table1015
    #define	RETURN_TYPE_join_table1015 MySQLParser_join_table_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_join_table;
    /* Initialize rule variables
     */

    root_0 = NULL;

    join_table1015.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:1311:5: ( join_table -> ^( JOIN_EXPR_TOKEN join_table ) )
        // MySQL.g:1312:2: join_table
        {
            FOLLOWPUSH(FOLLOW_join_table_in_join5792);
            join_table1015=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_table1015.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;
            	// 1312:13: -> ^( JOIN_EXPR_TOKEN join_table )
            	{
            	    // MySQL.g:1312:16: ^( JOIN_EXPR_TOKEN 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_EXPR_TOKEN, (pANTLR3_UINT8)"JOIN_EXPR_TOKEN")
            	        , 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:1315:1: table_factor : ( SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression | OPEN_PAR_SYMBOL select_table_factor_union CLOSE_PAR_SYMBOL ( table_alias )? | table_ref ( use_partition )? ( 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    SELECT_SYMBOL1016;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1020;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1022;
    MySQLParser_select_option_return select_option1017;
    #undef	RETURN_TYPE_select_option1017
    #define	RETURN_TYPE_select_option1017 MySQLParser_select_option_return

    MySQLParser_select_item_list_return select_item_list1018;
    #undef	RETURN_TYPE_select_item_list1018
    #define	RETURN_TYPE_select_item_list1018 MySQLParser_select_item_list_return

    MySQLParser_table_expression_return table_expression1019;
    #undef	RETURN_TYPE_table_expression1019
    #define	RETURN_TYPE_table_expression1019 MySQLParser_table_expression_return

    MySQLParser_select_table_factor_union_return select_table_factor_union1021;
    #undef	RETURN_TYPE_select_table_factor_union1021
    #define	RETURN_TYPE_select_table_factor_union1021 MySQLParser_select_table_factor_union_return

    MySQLParser_table_alias_return table_alias1023;
    #undef	RETURN_TYPE_table_alias1023
    #define	RETURN_TYPE_table_alias1023 MySQLParser_table_alias_return

    MySQLParser_table_ref_return table_ref1024;
    #undef	RETURN_TYPE_table_ref1024
    #define	RETURN_TYPE_table_ref1024 MySQLParser_table_ref_return

    MySQLParser_use_partition_return use_partition1025;
    #undef	RETURN_TYPE_use_partition1025
    #define	RETURN_TYPE_use_partition1025 MySQLParser_use_partition_return

    MySQLParser_table_alias_return table_alias1026;
    #undef	RETURN_TYPE_table_alias1026
    #define	RETURN_TYPE_table_alias1026 MySQLParser_table_alias_return

    MySQLParser_index_hint_list_return index_hint_list1027;
    #undef	RETURN_TYPE_index_hint_list1027
    #define	RETURN_TYPE_index_hint_list1027 MySQLParser_index_hint_list_return

    pANTLR3_BASE_TREE SELECT_SYMBOL1016_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1020_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1022_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL1016       = NULL;
    OPEN_PAR_SYMBOL1020       = NULL;
    CLOSE_PAR_SYMBOL1022       = NULL;
    select_option1017.tree = NULL;

    select_item_list1018.tree = NULL;

    table_expression1019.tree = NULL;

    select_table_factor_union1021.tree = NULL;

    table_alias1023.tree = NULL;

    table_ref1024.tree = NULL;

    use_partition1025.tree = NULL;

    table_alias1026.tree = NULL;

    index_hint_list1027.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL1016_tree   = NULL;
    OPEN_PAR_SYMBOL1020_tree   = NULL;
    CLOSE_PAR_SYMBOL1022_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1315:13: ( SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression | OPEN_PAR_SYMBOL select_table_factor_union CLOSE_PAR_SYMBOL ( table_alias )? | table_ref ( use_partition )? ( table_alias )? ( index_hint_list )? )

            ANTLR3_UINT32 alt358;

            alt358=3;

            {
                int LA358_0 = LA(1);
                if ( (LA358_0 == SELECT_SYMBOL))
                {
                    alt358=1;
                }
                else if ( (LA358_0 == OPEN_PAR_SYMBOL))
                {
                    alt358=2;
                }
                else if ( (((LA358_0 >= ACCOUNT_SYMBOL) && (LA358_0 <= YEAR_SYMBOL)) || LA358_0 == BACK_TICK_QUOTED_ID || LA358_0 == DOT_SYMBOL || LA358_0 == DOUBLE_QUOTED_TEXT || LA358_0 == IDENTIFIER))
                {
                    alt358=3;
                }
                else
                {
                    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 ruletable_factorEx;

                }
            }
            switch (alt358)
            {
        	case 1:
        	    // MySQL.g:1316:2: SELECT_SYMBOL ( options {greedy=true; } : select_option )* select_item_list table_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL1016 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_table_factor5809);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL1016_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL1016));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL1016_tree);
        	        }

        	        // MySQL.g:1316:16: ( options {greedy=true; } : select_option )*

        	        for (;;)
        	        {
        	            int alt353=2;
        	            switch ( LA(1) )
        	            {
        	            case SQL_BUFFER_RESULT_SYMBOL:
        	            	{
        	            		{
        	            		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	            		    */
        	            		    int LA353_96 = LA(2);
        	            		    if ( (LA353_96 == DOT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == OPEN_PAR_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MOD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MINUS_OPERATOR || LA353_96 == PLUS_OPERATOR))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == NOT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == SOUNDS_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == IDENTIFIER))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == BACK_TICK_QUOTED_ID))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == DOUBLE_QUOTED_TEXT))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == DATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == ASCII_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == BITWISE_NOT_OPERATOR || LA353_96 == INTERVAL_SYMBOL || LA353_96 == LOGICAL_NOT_OPERATOR || LA353_96 == NCHAR_TEXT || LA353_96 == NOT2_SYMBOL || LA353_96 == SINGLE_QUOTED_TEXT || LA353_96 == UNDERSCORE_CHARSET))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == STRAIGHT_JOIN_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == LEFT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == DECIMAL_NUMBER || LA353_96 == FLOAT_NUMBER || LA353_96 == HEX_NUMBER || LA353_96 == INT_NUMBER || LA353_96 == LONG_NUMBER || LA353_96 == ULONGLONG_NUMBER))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == TIME_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == TIMESTAMP_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == DAY_SYMBOL || LA353_96 == FALSE_SYMBOL || LA353_96 == NULL2_SYMBOL || LA353_96 == NULL_SYMBOL || LA353_96 == TRUE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == BIN_NUMBER || LA353_96 == CHAR_SYMBOL || LA353_96 == CURRENT_USER_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == HOUR_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MINUTE_SYMBOL || LA353_96 == INSERT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == RIGHT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MONTH_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == SECOND_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == USER_SYMBOL || LA353_96 == TRIM_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == YEAR_SYMBOL || LA353_96 == VALUES_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == ADDDATE_SYMBOL || LA353_96 == SUBDATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == GET_FORMAT_SYMBOL || LA353_96 == CURDATE_SYMBOL || LA353_96 == CURTIME_SYMBOL || LA353_96 == DATE_ADD_SYMBOL || LA353_96 == DATE_SUB_SYMBOL || LA353_96 == EXTRACT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (((LA353_96 >= TIMESTAMP_ADD_SYMBOL) && (LA353_96 <= TIMESTAMP_DIFF_SYMBOL)) || LA353_96 == NOW_SYMBOL || LA353_96 == POSITION_SYMBOL || LA353_96 == SUBSTRING_SYMBOL || LA353_96 == SYSDATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == COALESCE_SYMBOL || ((LA353_96 >= UTC_DATE_SYMBOL) && (LA353_96 <= UTC_TIME_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == CHARSET_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == FORMAT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == COLLATION_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MICROSECOND_SYMBOL || LA353_96 == DATABASE_SYMBOL || LA353_96 == IF_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == TRUNCATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == OLD_PASSWORD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MULT_OPERATOR))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == PASSWORD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == QUARTER_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == REVERSE_SYMBOL || ((LA353_96 >= REPEAT_SYMBOL) && (LA353_96 <= REPLACE_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == ROW_COUNT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == WEEK_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == CONTAINS_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == WEIGHT_STRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == GEOMETRYCOLLECTION_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == LINESTRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MULTILINESTRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MULTIPOINT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MULTIPOLYGON_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == POINT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == POLYGON_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == AVG_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == ACCOUNT_SYMBOL || ((LA353_96 >= ALWAYS_SYMBOL) && (LA353_96 <= CACHE_SYMBOL)) || ((LA353_96 >= CHECKSUM_SYMBOL) && (LA353_96 <= COMMIT_SYMBOL)) || ((LA353_96 >= DEALLOCATE_SYMBOL) && (LA353_96 <= FOLLOWS_SYMBOL)) || ((LA353_96 >= GROUP_REPLICATION_SYMBOL) && (LA353_96 <= STOP_SYMBOL)) || ((LA353_96 >= UNICODE_SYMBOL) && (LA353_96 <= XA_SYMBOL)) || LA353_96 == SHUTDOWN_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == ROW_SYMBOL || ((LA353_96 >= AT_AT_SIGN_SYMBOL) && (LA353_96 <= AT_TEXT_SUFFIX)) || ((LA353_96 >= BIT_AND_SYMBOL) && (LA353_96 <= BIT_XOR_SYMBOL)) || LA353_96 == COUNT_SYMBOL || LA353_96 == EXISTS_SYMBOL || LA353_96 == GROUP_CONCAT_SYMBOL || LA353_96 == MAX_SYMBOL || LA353_96 == MIN_SYMBOL || LA353_96 == PARAM_MARKER || LA353_96 == STDDEV_SAMP_SYMBOL || LA353_96 == STD_SYMBOL || LA353_96 == SUM_SYMBOL || LA353_96 == VARIANCE_SYMBOL || LA353_96 == VAR_SAMP_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == SQL_BUFFER_RESULT_SYMBOL || LA353_96 == BINARY_SYMBOL || ((LA353_96 >= CASE_SYMBOL) && (LA353_96 <= CAST_SYMBOL)) || LA353_96 == CONVERT_SYMBOL || LA353_96 == MATCH_SYMBOL || LA353_96 == OPEN_CURLY_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == SQL_NO_CACHE_SYMBOL || LA353_96 == ALL_SYMBOL || LA353_96 == DISTINCT_SYMBOL || LA353_96 == HIGH_PRIORITY_SYMBOL || ((LA353_96 >= SQL_BIG_RESULT_SYMBOL) && (LA353_96 <= SQL_SMALL_RESULT_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == SQL_CACHE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == MAX_STATEMENT_TIME_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_96 == ACTION_SYMBOL || ((LA353_96 >= AFTER_SYMBOL) && (LA353_96 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA353_96 >= BINLOG_SYMBOL) && (LA353_96 <= CLASS_ORIGIN_SYMBOL)) || LA353_96 == CODE_SYMBOL || ((LA353_96 >= COLUMN_NAME_SYMBOL) && (LA353_96 <= DATETIME_SYMBOL)) || ((LA353_96 >= DEFAULT_AUTH_SYMBOL) && (LA353_96 <= GEOMETRY_SYMBOL)) || ((LA353_96 >= GRANTS_SYMBOL) && (LA353_96 <= HOSTS_SYMBOL)) || ((LA353_96 >= IDENTIFIED_SYMBOL) && (LA353_96 <= LEVEL_SYMBOL)) || ((LA353_96 >= LIST_SYMBOL) && (LA353_96 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA353_96 >= MAX_SIZE_SYMBOL) && (LA353_96 <= MESSAGE_TEXT_SYMBOL)) || LA353_96 == MIGRATE_SYMBOL || ((LA353_96 >= MIN_ROWS_SYMBOL) && (LA353_96 <= MODE_SYMBOL)) || ((LA353_96 >= MUTEX_SYMBOL) && (LA353_96 <= OFFSET_SYMBOL)) || ((LA353_96 >= ONE_SHOT_SYMBOL) && (LA353_96 <= PARTITIONS_SYMBOL)) || ((LA353_96 >= PHASE_SYMBOL) && (LA353_96 <= PLUGINS_SYMBOL)) || ((LA353_96 >= PRESERVE_SYMBOL) && (LA353_96 <= PROXY_SYMBOL)) || ((LA353_96 >= QUERY_SYMBOL) && (LA353_96 <= RETURNS_SYMBOL)) || ((LA353_96 >= ROLLUP_SYMBOL) && (LA353_96 <= ROWS_SYMBOL)) || LA353_96 == ROW_FORMAT_SYMBOL || ((LA353_96 >= RTREE_SYMBOL) && (LA353_96 <= SCHEMA_NAME_SYMBOL)) || ((LA353_96 >= SERIAL_SYMBOL) && (LA353_96 <= SHARE_SYMBOL)) || ((LA353_96 >= SLOW_SYMBOL) && (LA353_96 <= SNAPSHOT_SYMBOL)) || ((LA353_96 >= SOURCE_SYMBOL) && (LA353_96 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA353_96 >= SQL_THREAD_SYMBOL) && (LA353_96 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA353_96 >= SUBJECT_SYMBOL) && (LA353_96 <= TRIGGERS_SYMBOL)) || ((LA353_96 >= TYPES_SYMBOL) && (LA353_96 <= USER_RESOURCES_SYMBOL)) || ((LA353_96 >= USE_FRM_SYMBOL) && (LA353_96 <= WAIT_SYMBOL)) || LA353_96 == WORK_SYMBOL || ((LA353_96 >= X509_SYMBOL) && (LA353_96 <= XML_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }

        	            		}
        	            	}
        	                break;
        	            case SQL_NO_CACHE_SYMBOL:
        	            	{
        	            		{
        	            		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	            		    */
        	            		    int LA353_104 = LA(2);
        	            		    if ( (LA353_104 == DOT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == OPEN_PAR_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MOD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MINUS_OPERATOR || LA353_104 == PLUS_OPERATOR))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == NOT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == SOUNDS_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == IDENTIFIER))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == BACK_TICK_QUOTED_ID))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == DOUBLE_QUOTED_TEXT))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == DATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == ASCII_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == BITWISE_NOT_OPERATOR || LA353_104 == INTERVAL_SYMBOL || LA353_104 == LOGICAL_NOT_OPERATOR || LA353_104 == NCHAR_TEXT || LA353_104 == NOT2_SYMBOL || LA353_104 == SINGLE_QUOTED_TEXT || LA353_104 == UNDERSCORE_CHARSET))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == STRAIGHT_JOIN_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == LEFT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == DECIMAL_NUMBER || LA353_104 == FLOAT_NUMBER || LA353_104 == HEX_NUMBER || LA353_104 == INT_NUMBER || LA353_104 == LONG_NUMBER || LA353_104 == ULONGLONG_NUMBER))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == TIME_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == TIMESTAMP_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == DAY_SYMBOL || LA353_104 == FALSE_SYMBOL || LA353_104 == NULL2_SYMBOL || LA353_104 == NULL_SYMBOL || LA353_104 == TRUE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == BIN_NUMBER || LA353_104 == CHAR_SYMBOL || LA353_104 == CURRENT_USER_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == HOUR_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MINUTE_SYMBOL || LA353_104 == INSERT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == RIGHT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MONTH_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == SECOND_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == USER_SYMBOL || LA353_104 == TRIM_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == YEAR_SYMBOL || LA353_104 == VALUES_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == ADDDATE_SYMBOL || LA353_104 == SUBDATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == GET_FORMAT_SYMBOL || LA353_104 == CURDATE_SYMBOL || LA353_104 == CURTIME_SYMBOL || LA353_104 == DATE_ADD_SYMBOL || LA353_104 == DATE_SUB_SYMBOL || LA353_104 == EXTRACT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (((LA353_104 >= TIMESTAMP_ADD_SYMBOL) && (LA353_104 <= TIMESTAMP_DIFF_SYMBOL)) || LA353_104 == NOW_SYMBOL || LA353_104 == POSITION_SYMBOL || LA353_104 == SUBSTRING_SYMBOL || LA353_104 == SYSDATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == COALESCE_SYMBOL || ((LA353_104 >= UTC_DATE_SYMBOL) && (LA353_104 <= UTC_TIME_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == CHARSET_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == FORMAT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == COLLATION_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MICROSECOND_SYMBOL || LA353_104 == DATABASE_SYMBOL || LA353_104 == IF_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == TRUNCATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == OLD_PASSWORD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MULT_OPERATOR))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == PASSWORD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == QUARTER_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == REVERSE_SYMBOL || ((LA353_104 >= REPEAT_SYMBOL) && (LA353_104 <= REPLACE_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == ROW_COUNT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == WEEK_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == CONTAINS_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == WEIGHT_STRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == GEOMETRYCOLLECTION_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == LINESTRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MULTILINESTRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MULTIPOINT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MULTIPOLYGON_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == POINT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == POLYGON_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == AVG_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == ACCOUNT_SYMBOL || ((LA353_104 >= ALWAYS_SYMBOL) && (LA353_104 <= CACHE_SYMBOL)) || ((LA353_104 >= CHECKSUM_SYMBOL) && (LA353_104 <= COMMIT_SYMBOL)) || ((LA353_104 >= DEALLOCATE_SYMBOL) && (LA353_104 <= FOLLOWS_SYMBOL)) || ((LA353_104 >= GROUP_REPLICATION_SYMBOL) && (LA353_104 <= STOP_SYMBOL)) || ((LA353_104 >= UNICODE_SYMBOL) && (LA353_104 <= XA_SYMBOL)) || LA353_104 == SHUTDOWN_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == ROW_SYMBOL || ((LA353_104 >= AT_AT_SIGN_SYMBOL) && (LA353_104 <= AT_TEXT_SUFFIX)) || ((LA353_104 >= BIT_AND_SYMBOL) && (LA353_104 <= BIT_XOR_SYMBOL)) || LA353_104 == COUNT_SYMBOL || LA353_104 == EXISTS_SYMBOL || LA353_104 == GROUP_CONCAT_SYMBOL || LA353_104 == MAX_SYMBOL || LA353_104 == MIN_SYMBOL || LA353_104 == PARAM_MARKER || LA353_104 == STDDEV_SAMP_SYMBOL || LA353_104 == STD_SYMBOL || LA353_104 == SUM_SYMBOL || LA353_104 == VARIANCE_SYMBOL || LA353_104 == VAR_SAMP_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == SQL_BUFFER_RESULT_SYMBOL || LA353_104 == BINARY_SYMBOL || ((LA353_104 >= CASE_SYMBOL) && (LA353_104 <= CAST_SYMBOL)) || LA353_104 == CONVERT_SYMBOL || LA353_104 == MATCH_SYMBOL || LA353_104 == OPEN_CURLY_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == SQL_NO_CACHE_SYMBOL || LA353_104 == ALL_SYMBOL || LA353_104 == DISTINCT_SYMBOL || LA353_104 == HIGH_PRIORITY_SYMBOL || ((LA353_104 >= SQL_BIG_RESULT_SYMBOL) && (LA353_104 <= SQL_SMALL_RESULT_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == SQL_CACHE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == MAX_STATEMENT_TIME_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_104 == ACTION_SYMBOL || ((LA353_104 >= AFTER_SYMBOL) && (LA353_104 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA353_104 >= BINLOG_SYMBOL) && (LA353_104 <= CLASS_ORIGIN_SYMBOL)) || LA353_104 == CODE_SYMBOL || ((LA353_104 >= COLUMN_NAME_SYMBOL) && (LA353_104 <= DATETIME_SYMBOL)) || ((LA353_104 >= DEFAULT_AUTH_SYMBOL) && (LA353_104 <= GEOMETRY_SYMBOL)) || ((LA353_104 >= GRANTS_SYMBOL) && (LA353_104 <= HOSTS_SYMBOL)) || ((LA353_104 >= IDENTIFIED_SYMBOL) && (LA353_104 <= LEVEL_SYMBOL)) || ((LA353_104 >= LIST_SYMBOL) && (LA353_104 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA353_104 >= MAX_SIZE_SYMBOL) && (LA353_104 <= MESSAGE_TEXT_SYMBOL)) || LA353_104 == MIGRATE_SYMBOL || ((LA353_104 >= MIN_ROWS_SYMBOL) && (LA353_104 <= MODE_SYMBOL)) || ((LA353_104 >= MUTEX_SYMBOL) && (LA353_104 <= OFFSET_SYMBOL)) || ((LA353_104 >= ONE_SHOT_SYMBOL) && (LA353_104 <= PARTITIONS_SYMBOL)) || ((LA353_104 >= PHASE_SYMBOL) && (LA353_104 <= PLUGINS_SYMBOL)) || ((LA353_104 >= PRESERVE_SYMBOL) && (LA353_104 <= PROXY_SYMBOL)) || ((LA353_104 >= QUERY_SYMBOL) && (LA353_104 <= RETURNS_SYMBOL)) || ((LA353_104 >= ROLLUP_SYMBOL) && (LA353_104 <= ROWS_SYMBOL)) || LA353_104 == ROW_FORMAT_SYMBOL || ((LA353_104 >= RTREE_SYMBOL) && (LA353_104 <= SCHEMA_NAME_SYMBOL)) || ((LA353_104 >= SERIAL_SYMBOL) && (LA353_104 <= SHARE_SYMBOL)) || ((LA353_104 >= SLOW_SYMBOL) && (LA353_104 <= SNAPSHOT_SYMBOL)) || ((LA353_104 >= SOURCE_SYMBOL) && (LA353_104 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA353_104 >= SQL_THREAD_SYMBOL) && (LA353_104 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA353_104 >= SUBJECT_SYMBOL) && (LA353_104 <= TRIGGERS_SYMBOL)) || ((LA353_104 >= TYPES_SYMBOL) && (LA353_104 <= USER_RESOURCES_SYMBOL)) || ((LA353_104 >= USE_FRM_SYMBOL) && (LA353_104 <= WAIT_SYMBOL)) || LA353_104 == WORK_SYMBOL || ((LA353_104 >= X509_SYMBOL) && (LA353_104 <= XML_SYMBOL))))
        	            		    {
        	            		        alt353=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_SMALL_RESULT_SYMBOL:
        	            case STRAIGHT_JOIN_SYMBOL:
        	            	{
        	            		alt353=1;
        	            	}
        	                break;
        	            case SQL_CACHE_SYMBOL:
        	            	{
        	            		{
        	            		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	            		    */
        	            		    int LA353_106 = LA(2);
        	            		    if ( (LA353_106 == DOT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == OPEN_PAR_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MOD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MINUS_OPERATOR || LA353_106 == PLUS_OPERATOR))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == NOT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == SOUNDS_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == IDENTIFIER))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == BACK_TICK_QUOTED_ID))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == DOUBLE_QUOTED_TEXT))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == DATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == ASCII_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == BITWISE_NOT_OPERATOR || LA353_106 == INTERVAL_SYMBOL || LA353_106 == LOGICAL_NOT_OPERATOR || LA353_106 == NCHAR_TEXT || LA353_106 == NOT2_SYMBOL || LA353_106 == SINGLE_QUOTED_TEXT || LA353_106 == UNDERSCORE_CHARSET))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == STRAIGHT_JOIN_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == LEFT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == DECIMAL_NUMBER || LA353_106 == FLOAT_NUMBER || LA353_106 == HEX_NUMBER || LA353_106 == INT_NUMBER || LA353_106 == LONG_NUMBER || LA353_106 == ULONGLONG_NUMBER))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == TIME_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == TIMESTAMP_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == DAY_SYMBOL || LA353_106 == FALSE_SYMBOL || LA353_106 == NULL2_SYMBOL || LA353_106 == NULL_SYMBOL || LA353_106 == TRUE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == BIN_NUMBER || LA353_106 == CHAR_SYMBOL || LA353_106 == CURRENT_USER_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == HOUR_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MINUTE_SYMBOL || LA353_106 == INSERT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == RIGHT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MONTH_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == SECOND_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == USER_SYMBOL || LA353_106 == TRIM_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == YEAR_SYMBOL || LA353_106 == VALUES_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == ADDDATE_SYMBOL || LA353_106 == SUBDATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == GET_FORMAT_SYMBOL || LA353_106 == CURDATE_SYMBOL || LA353_106 == CURTIME_SYMBOL || LA353_106 == DATE_ADD_SYMBOL || LA353_106 == DATE_SUB_SYMBOL || LA353_106 == EXTRACT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (((LA353_106 >= TIMESTAMP_ADD_SYMBOL) && (LA353_106 <= TIMESTAMP_DIFF_SYMBOL)) || LA353_106 == NOW_SYMBOL || LA353_106 == POSITION_SYMBOL || LA353_106 == SUBSTRING_SYMBOL || LA353_106 == SYSDATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == COALESCE_SYMBOL || ((LA353_106 >= UTC_DATE_SYMBOL) && (LA353_106 <= UTC_TIME_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == CHARSET_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == FORMAT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == COLLATION_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MICROSECOND_SYMBOL || LA353_106 == DATABASE_SYMBOL || LA353_106 == IF_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == TRUNCATE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == OLD_PASSWORD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MULT_OPERATOR))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == PASSWORD_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == QUARTER_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == REVERSE_SYMBOL || ((LA353_106 >= REPEAT_SYMBOL) && (LA353_106 <= REPLACE_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == ROW_COUNT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == WEEK_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == CONTAINS_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == WEIGHT_STRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == GEOMETRYCOLLECTION_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == LINESTRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MULTILINESTRING_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MULTIPOINT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MULTIPOLYGON_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == POINT_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == POLYGON_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == AVG_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == ACCOUNT_SYMBOL || ((LA353_106 >= ALWAYS_SYMBOL) && (LA353_106 <= CACHE_SYMBOL)) || ((LA353_106 >= CHECKSUM_SYMBOL) && (LA353_106 <= COMMIT_SYMBOL)) || ((LA353_106 >= DEALLOCATE_SYMBOL) && (LA353_106 <= FOLLOWS_SYMBOL)) || ((LA353_106 >= GROUP_REPLICATION_SYMBOL) && (LA353_106 <= STOP_SYMBOL)) || ((LA353_106 >= UNICODE_SYMBOL) && (LA353_106 <= XA_SYMBOL)) || LA353_106 == SHUTDOWN_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == ROW_SYMBOL || ((LA353_106 >= AT_AT_SIGN_SYMBOL) && (LA353_106 <= AT_TEXT_SUFFIX)) || ((LA353_106 >= BIT_AND_SYMBOL) && (LA353_106 <= BIT_XOR_SYMBOL)) || LA353_106 == COUNT_SYMBOL || LA353_106 == EXISTS_SYMBOL || LA353_106 == GROUP_CONCAT_SYMBOL || LA353_106 == MAX_SYMBOL || LA353_106 == MIN_SYMBOL || LA353_106 == PARAM_MARKER || LA353_106 == STDDEV_SAMP_SYMBOL || LA353_106 == STD_SYMBOL || LA353_106 == SUM_SYMBOL || LA353_106 == VARIANCE_SYMBOL || LA353_106 == VAR_SAMP_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == SQL_BUFFER_RESULT_SYMBOL || LA353_106 == BINARY_SYMBOL || ((LA353_106 >= CASE_SYMBOL) && (LA353_106 <= CAST_SYMBOL)) || LA353_106 == CONVERT_SYMBOL || LA353_106 == MATCH_SYMBOL || LA353_106 == OPEN_CURLY_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == SQL_NO_CACHE_SYMBOL || LA353_106 == ALL_SYMBOL || LA353_106 == DISTINCT_SYMBOL || LA353_106 == HIGH_PRIORITY_SYMBOL || ((LA353_106 >= SQL_BIG_RESULT_SYMBOL) && (LA353_106 <= SQL_SMALL_RESULT_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == SQL_CACHE_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == MAX_STATEMENT_TIME_SYMBOL))
        	            		    {
        	            		        alt353=1;
        	            		    }
        	            		    else if ( (LA353_106 == ACTION_SYMBOL || ((LA353_106 >= AFTER_SYMBOL) && (LA353_106 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA353_106 >= BINLOG_SYMBOL) && (LA353_106 <= CLASS_ORIGIN_SYMBOL)) || LA353_106 == CODE_SYMBOL || ((LA353_106 >= COLUMN_NAME_SYMBOL) && (LA353_106 <= DATETIME_SYMBOL)) || ((LA353_106 >= DEFAULT_AUTH_SYMBOL) && (LA353_106 <= GEOMETRY_SYMBOL)) || ((LA353_106 >= GRANTS_SYMBOL) && (LA353_106 <= HOSTS_SYMBOL)) || ((LA353_106 >= IDENTIFIED_SYMBOL) && (LA353_106 <= LEVEL_SYMBOL)) || ((LA353_106 >= LIST_SYMBOL) && (LA353_106 <= MAX_QUERIES_PER_HOUR_SYMBOL)) || ((LA353_106 >= MAX_SIZE_SYMBOL) && (LA353_106 <= MESSAGE_TEXT_SYMBOL)) || LA353_106 == MIGRATE_SYMBOL || ((LA353_106 >= MIN_ROWS_SYMBOL) && (LA353_106 <= MODE_SYMBOL)) || ((LA353_106 >= MUTEX_SYMBOL) && (LA353_106 <= OFFSET_SYMBOL)) || ((LA353_106 >= ONE_SHOT_SYMBOL) && (LA353_106 <= PARTITIONS_SYMBOL)) || ((LA353_106 >= PHASE_SYMBOL) && (LA353_106 <= PLUGINS_SYMBOL)) || ((LA353_106 >= PRESERVE_SYMBOL) && (LA353_106 <= PROXY_SYMBOL)) || ((LA353_106 >= QUERY_SYMBOL) && (LA353_106 <= RETURNS_SYMBOL)) || ((LA353_106 >= ROLLUP_SYMBOL) && (LA353_106 <= ROWS_SYMBOL)) || LA353_106 == ROW_FORMAT_SYMBOL || ((LA353_106 >= RTREE_SYMBOL) && (LA353_106 <= SCHEMA_NAME_SYMBOL)) || ((LA353_106 >= SERIAL_SYMBOL) && (LA353_106 <= SHARE_SYMBOL)) || ((LA353_106 >= SLOW_SYMBOL) && (LA353_106 <= SNAPSHOT_SYMBOL)) || ((LA353_106 >= SOURCE_SYMBOL) && (LA353_106 <= SQL_BEFORE_GTIDS_SYMBOL)) || ((LA353_106 >= SQL_THREAD_SYMBOL) && (LA353_106 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA353_106 >= SUBJECT_SYMBOL) && (LA353_106 <= TRIGGERS_SYMBOL)) || ((LA353_106 >= TYPES_SYMBOL) && (LA353_106 <= USER_RESOURCES_SYMBOL)) || ((LA353_106 >= USE_FRM_SYMBOL) && (LA353_106 <= WAIT_SYMBOL)) || LA353_106 == WORK_SYMBOL || ((LA353_106 >= X509_SYMBOL) && (LA353_106 <= XML_SYMBOL))))
        	            		    {
        	            		        alt353=1;
        	            		    }

        	            		}
        	            	}
        	                break;
        	            case MAX_STATEMENT_TIME_SYMBOL:
        	            	{
        	            		switch ( LA(2) )
        	            		{
        	            		case EQUAL_OPERATOR:
        	            			{
        	            				{
        	            				   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	            				    */
        	            				    int LA353_565 = LA(3);
        	            				    if ( ((SERVER_VERSION >= 50704 && SERVER_VERSION < 50708)))
        	            				    {
        	            				        alt353=1;
        	            				    }

        	            				}
        	            			}
        	            		    break;

        	            		}

        	            	}
        	                break;

        	            }

        	            switch (alt353)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1316:46: select_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_select_option_in_table_factor5825);
        	        	        select_option1017=select_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_option1017.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop353;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop353: ; /* Jump out to here if this rule does not match */


        	        FOLLOWPUSH(FOLLOW_select_item_list_in_table_factor5829);
        	        select_item_list1018=select_item_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_item_list1018.tree);

        	        FOLLOWPUSH(FOLLOW_table_expression_in_table_factor5831);
        	        table_expression1019=table_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_expression1019.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1317:4: OPEN_PAR_SYMBOL select_table_factor_union CLOSE_PAR_SYMBOL ( table_alias )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL1020 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_table_factor5836);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1020_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1020));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1020_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_table_factor_union_in_table_factor5838);
        	        select_table_factor_union1021=select_table_factor_union(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_table_factor_union1021.tree);

        	        CLOSE_PAR_SYMBOL1022 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_table_factor5840);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1022_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1022));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1022_tree);
        	        }

        	        // MySQL.g:1317:63: ( table_alias )?
        	        {
        	            int alt354=2;
        	            {
        	                int LA354_0 = LA(1);
        	                if ( (((LA354_0 >= ACCOUNT_SYMBOL) && (LA354_0 <= YEAR_SYMBOL)) || LA354_0 == AS_SYMBOL || LA354_0 == BACK_TICK_QUOTED_ID || LA354_0 == DOUBLE_QUOTED_TEXT || LA354_0 == EQUAL_OPERATOR || LA354_0 == IDENTIFIER))
        	                {
        	                    alt354=1;
        	                }
        	            }
        	            switch (alt354)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1317:63: table_alias
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_table_alias_in_table_factor5842);
        	        	        table_alias1023=table_alias(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_alias1023.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1318:4: table_ref ( use_partition )? ( table_alias )? ( index_hint_list )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_table_ref_in_table_factor5848);
        	        table_ref1024=table_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_factorEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1024.tree);

        	        // MySQL.g:1318:14: ( use_partition )?
        	        {
        	            int alt355=2;
        	            switch ( LA(1) )
        	            {
        	                case PARTITION_SYMBOL:
        	                	{
        	                		{
        	                		    int LA355_1 = LA(2);
        	                		    if ( ((SERVER_VERSION >= 50602)) && (LA355_1 == OPEN_PAR_SYMBOL))
        	                		    {
        	                		        alt355=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt355)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1318:14: use_partition
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_use_partition_in_table_factor5850);
        	        	        use_partition1025=use_partition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_partition1025.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1318:29: ( table_alias )?
        	        {
        	            int alt356=2;
        	            {
        	                int LA356_0 = LA(1);
        	                if ( (((LA356_0 >= ACCOUNT_SYMBOL) && (LA356_0 <= YEAR_SYMBOL)) || LA356_0 == AS_SYMBOL || LA356_0 == BACK_TICK_QUOTED_ID || LA356_0 == DOUBLE_QUOTED_TEXT || LA356_0 == EQUAL_OPERATOR || LA356_0 == IDENTIFIER))
        	                {
        	                    alt356=1;
        	                }
        	            }
        	            switch (alt356)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1318:29: table_alias
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_table_alias_in_table_factor5853);
        	        	        table_alias1026=table_alias(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_alias1026.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1318:42: ( index_hint_list )?
        	        {
        	            int alt357=2;
        	            switch ( LA(1) )
        	            {
        	                case FORCE_SYMBOL:
        	                case IGNORE_SYMBOL:
        	                case USE_SYMBOL:
        	                	{
        	                		alt357=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt357)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1318:42: index_hint_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_list_in_table_factor5856);
        	        	        index_hint_list1027=index_hint_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_factorEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_list1027.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    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 (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 select_table_factor_union
 * MySQL.g:1321:1: select_table_factor_union : ( table_reference_list ( order_by_or_limit )? ) ( UNION_SYMBOL ( union_option )? query_specification )* ;
 */
static MySQLParser_select_table_factor_union_return
select_table_factor_union(pMySQLParser ctx)
{
    MySQLParser_select_table_factor_union_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNION_SYMBOL1030;
    MySQLParser_table_reference_list_return table_reference_list1028;
    #undef	RETURN_TYPE_table_reference_list1028
    #define	RETURN_TYPE_table_reference_list1028 MySQLParser_table_reference_list_return

    MySQLParser_order_by_or_limit_return order_by_or_limit1029;
    #undef	RETURN_TYPE_order_by_or_limit1029
    #define	RETURN_TYPE_order_by_or_limit1029 MySQLParser_order_by_or_limit_return

    MySQLParser_union_option_return union_option1031;
    #undef	RETURN_TYPE_union_option1031
    #define	RETURN_TYPE_union_option1031 MySQLParser_union_option_return

    MySQLParser_query_specification_return query_specification1032;
    #undef	RETURN_TYPE_query_specification1032
    #define	RETURN_TYPE_query_specification1032 MySQLParser_query_specification_return

    pANTLR3_BASE_TREE UNION_SYMBOL1030_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNION_SYMBOL1030       = NULL;
    table_reference_list1028.tree = NULL;

    order_by_or_limit1029.tree = NULL;

    union_option1031.tree = NULL;

    query_specification1032.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNION_SYMBOL1030_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1321:26: ( ( table_reference_list ( order_by_or_limit )? ) ( UNION_SYMBOL ( union_option )? query_specification )* )
        // MySQL.g:1322:2: ( table_reference_list ( order_by_or_limit )? ) ( UNION_SYMBOL ( union_option )? query_specification )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1322:2: ( table_reference_list ( order_by_or_limit )? )
            // MySQL.g:1322:3: table_reference_list ( order_by_or_limit )?
            {
                FOLLOWPUSH(FOLLOW_table_reference_list_in_select_table_factor_union5867);
                table_reference_list1028=table_reference_list(ctx);

                FOLLOWPOP();
                if  (HASEXCEPTION())
                {
                    goto ruleselect_table_factor_unionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference_list1028.tree);

                // MySQL.g:1322:24: ( order_by_or_limit )?
                {
                    int alt359=2;
                    switch ( LA(1) )
                    {
                        case LIMIT_SYMBOL:
                        case ORDER_SYMBOL:
                        	{
                        		alt359=1;
                        	}
                            break;
                    }

                    switch (alt359)
                    {
                	case 1:
                	    // MySQL.g:1322:24: order_by_or_limit
                	    {
                	        FOLLOWPUSH(FOLLOW_order_by_or_limit_in_select_table_factor_union5869);
                	        order_by_or_limit1029=order_by_or_limit(ctx);

                	        FOLLOWPOP();
                	        if  (HASEXCEPTION())
                	        {
                	            goto ruleselect_table_factor_unionEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_or_limit1029.tree);

                	    }
                	    break;

                    }
                }

            }


            // MySQL.g:1322:44: ( UNION_SYMBOL ( union_option )? query_specification )*

            for (;;)
            {
                int alt361=2;
                switch ( LA(1) )
                {
                case UNION_SYMBOL:
                	{
                		alt361=1;
                	}
                    break;

                }

                switch (alt361)
                {
            	case 1:
            	    // MySQL.g:1322:45: UNION_SYMBOL ( union_option )? query_specification
            	    {
            	        UNION_SYMBOL1030 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_select_table_factor_union5874);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_table_factor_unionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UNION_SYMBOL1030_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL1030));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UNION_SYMBOL1030_tree);
            	        }

            	        // MySQL.g:1322:58: ( union_option )?
            	        {
            	            int alt360=2;
            	            switch ( LA(1) )
            	            {
            	                case ALL_SYMBOL:
            	                case DISTINCT_SYMBOL:
            	                	{
            	                		alt360=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt360)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1322:58: union_option
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_union_option_in_select_table_factor_union5876);
            	        	        union_option1031=union_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleselect_table_factor_unionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_option1031.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_query_specification_in_select_table_factor_union5879);
            	        query_specification1032=query_specification(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleselect_table_factor_unionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_specification1032.tree);

            	    }
            	    break;

            	default:
            	    goto loop361;	/* break out of the loop */
            	    break;
                }
            }
            loop361: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleselect_table_factor_unionEx; /* Prevent compiler warnings */
    ruleselect_table_factor_unionEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_table_factor_union */

/**
 * $ANTLR start query_specification
 * MySQL.g:1325:1: query_specification : ( SELECT_SYMBOL select_part2_derived table_expression | OPEN_PAR_SYMBOL query_specification CLOSE_PAR_SYMBOL ( order_by_or_limit )? );
 */
static MySQLParser_query_specification_return
query_specification(pMySQLParser ctx)
{
    MySQLParser_query_specification_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL1033;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1036;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1038;
    MySQLParser_select_part2_derived_return select_part2_derived1034;
    #undef	RETURN_TYPE_select_part2_derived1034
    #define	RETURN_TYPE_select_part2_derived1034 MySQLParser_select_part2_derived_return

    MySQLParser_table_expression_return table_expression1035;
    #undef	RETURN_TYPE_table_expression1035
    #define	RETURN_TYPE_table_expression1035 MySQLParser_table_expression_return

    MySQLParser_query_specification_return query_specification1037;
    #undef	RETURN_TYPE_query_specification1037
    #define	RETURN_TYPE_query_specification1037 MySQLParser_query_specification_return

    MySQLParser_order_by_or_limit_return order_by_or_limit1039;
    #undef	RETURN_TYPE_order_by_or_limit1039
    #define	RETURN_TYPE_order_by_or_limit1039 MySQLParser_order_by_or_limit_return

    pANTLR3_BASE_TREE SELECT_SYMBOL1033_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1036_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1038_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SELECT_SYMBOL1033       = NULL;
    OPEN_PAR_SYMBOL1036       = NULL;
    CLOSE_PAR_SYMBOL1038       = NULL;
    select_part2_derived1034.tree = NULL;

    table_expression1035.tree = NULL;

    query_specification1037.tree = NULL;

    order_by_or_limit1039.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SELECT_SYMBOL1033_tree   = NULL;
    OPEN_PAR_SYMBOL1036_tree   = NULL;
    CLOSE_PAR_SYMBOL1038_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1325:20: ( SELECT_SYMBOL select_part2_derived table_expression | OPEN_PAR_SYMBOL query_specification CLOSE_PAR_SYMBOL ( order_by_or_limit )? )

            ANTLR3_UINT32 alt363;

            alt363=2;

            switch ( LA(1) )
            {
            case SELECT_SYMBOL:
            	{
            		alt363=1;
            	}
                break;
            case OPEN_PAR_SYMBOL:
            	{
            		alt363=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 363;
                EXCEPTION->state        = 0;


                goto rulequery_specificationEx;

            }

            switch (alt363)
            {
        	case 1:
        	    // MySQL.g:1326:2: SELECT_SYMBOL select_part2_derived table_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL1033 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_query_specification5890);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL1033_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL1033));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL1033_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_select_part2_derived_in_query_specification5892);
        	        select_part2_derived1034=select_part2_derived(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_part2_derived1034.tree);

        	        FOLLOWPUSH(FOLLOW_table_expression_in_query_specification5894);
        	        table_expression1035=table_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_expression1035.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1327:4: OPEN_PAR_SYMBOL query_specification CLOSE_PAR_SYMBOL ( order_by_or_limit )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPEN_PAR_SYMBOL1036 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_query_specification5899);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1036_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1036));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1036_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_query_specification_in_query_specification5901);
        	        query_specification1037=query_specification(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, query_specification1037.tree);

        	        CLOSE_PAR_SYMBOL1038 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_query_specification5903);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulequery_specificationEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1038_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1038));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1038_tree);
        	        }

        	        // MySQL.g:1327:57: ( order_by_or_limit )?
        	        {
        	            int alt362=2;
        	            switch ( LA(1) )
        	            {
        	                case LIMIT_SYMBOL:
        	                case ORDER_SYMBOL:
        	                	{
        	                		alt362=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt362)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1327:57: order_by_or_limit
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_order_by_or_limit_in_query_specification5905);
        	        	        order_by_or_limit1039=order_by_or_limit(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulequery_specificationEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_or_limit1039.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulequery_specificationEx; /* Prevent compiler warnings */
    rulequery_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 query_specification */

/**
 * $ANTLR start join_table
 * MySQL.g:1330: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    set1040;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL1041;
    pANTLR3_COMMON_TOKEN    STRAIGHT_JOIN_SYMBOL1044;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1046;
    pANTLR3_COMMON_TOKEN    set1048;
    pANTLR3_COMMON_TOKEN    OUTER_SYMBOL1049;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL1050;
    pANTLR3_COMMON_TOKEN    NATURAL_SYMBOL1053;
    pANTLR3_COMMON_TOKEN    set1054;
    pANTLR3_COMMON_TOKEN    OUTER_SYMBOL1055;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL1056;
    MySQLParser_table_reference_return table_reference1042;
    #undef	RETURN_TYPE_table_reference1042
    #define	RETURN_TYPE_table_reference1042 MySQLParser_table_reference_return

    MySQLParser_join_condition_return join_condition1043;
    #undef	RETURN_TYPE_join_condition1043
    #define	RETURN_TYPE_join_condition1043 MySQLParser_join_condition_return

    MySQLParser_table_factor_return table_factor1045;
    #undef	RETURN_TYPE_table_factor1045
    #define	RETURN_TYPE_table_factor1045 MySQLParser_table_factor_return

    MySQLParser_expression_return expression1047;
    #undef	RETURN_TYPE_expression1047
    #define	RETURN_TYPE_expression1047 MySQLParser_expression_return

    MySQLParser_table_reference_return table_reference1051;
    #undef	RETURN_TYPE_table_reference1051
    #define	RETURN_TYPE_table_reference1051 MySQLParser_table_reference_return

    MySQLParser_join_condition_return join_condition1052;
    #undef	RETURN_TYPE_join_condition1052
    #define	RETURN_TYPE_join_condition1052 MySQLParser_join_condition_return

    MySQLParser_table_factor_return table_factor1057;
    #undef	RETURN_TYPE_table_factor1057
    #define	RETURN_TYPE_table_factor1057 MySQLParser_table_factor_return

    pANTLR3_BASE_TREE set1040_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL1041_tree;
    pANTLR3_BASE_TREE STRAIGHT_JOIN_SYMBOL1044_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1046_tree;
    pANTLR3_BASE_TREE set1048_tree;
    pANTLR3_BASE_TREE OUTER_SYMBOL1049_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL1050_tree;
    pANTLR3_BASE_TREE NATURAL_SYMBOL1053_tree;
    pANTLR3_BASE_TREE set1054_tree;
    pANTLR3_BASE_TREE OUTER_SYMBOL1055_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL1056_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1040       = NULL;
    JOIN_SYMBOL1041       = NULL;
    STRAIGHT_JOIN_SYMBOL1044       = NULL;
    ON_SYMBOL1046       = NULL;
    set1048       = NULL;
    OUTER_SYMBOL1049       = NULL;
    JOIN_SYMBOL1050       = NULL;
    NATURAL_SYMBOL1053       = NULL;
    set1054       = NULL;
    OUTER_SYMBOL1055       = NULL;
    JOIN_SYMBOL1056       = NULL;
    table_reference1042.tree = NULL;

    join_condition1043.tree = NULL;

    table_factor1045.tree = NULL;

    expression1047.tree = NULL;

    table_reference1051.tree = NULL;

    join_condition1052.tree = NULL;

    table_factor1057.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1040_tree   = NULL;
    JOIN_SYMBOL1041_tree   = NULL;
    STRAIGHT_JOIN_SYMBOL1044_tree   = NULL;
    ON_SYMBOL1046_tree   = NULL;
    set1048_tree   = NULL;
    OUTER_SYMBOL1049_tree   = NULL;
    JOIN_SYMBOL1050_tree   = NULL;
    NATURAL_SYMBOL1053_tree   = NULL;
    set1054_tree   = NULL;
    OUTER_SYMBOL1055_tree   = NULL;
    JOIN_SYMBOL1056_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1330: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 alt370;

            alt370=4;

            switch ( LA(1) )
            {
            case CROSS_SYMBOL:
            case INNER_SYMBOL:
            case JOIN_SYMBOL:
            	{
            		alt370=1;
            	}
                break;
            case STRAIGHT_JOIN_SYMBOL:
            	{
            		alt370=2;
            	}
                break;
            case LEFT_SYMBOL:
            case RIGHT_SYMBOL:
            	{
            		alt370=3;
            	}
                break;
            case NATURAL_SYMBOL:
            	{
            		alt370=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 370;
                EXCEPTION->state        = 0;


                goto rulejoin_tableEx;

            }

            switch (alt370)
            {
        	case 1:
        	    // MySQL.g:1331:2: ( INNER_SYMBOL | CROSS_SYMBOL )? JOIN_SYMBOL table_reference ( options {greedy=true; } : join_condition )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1331:2: ( INNER_SYMBOL | CROSS_SYMBOL )?
        	        {
        	            int alt364=2;
        	            switch ( LA(1) )
        	            {
        	                case CROSS_SYMBOL:
        	                case INNER_SYMBOL:
        	                	{
        	                		alt364=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt364)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set1040=(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, set1040))
        	        	            );
        	        	            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_SYMBOL1041 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table5925);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL1041_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL1041));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL1041_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_reference_in_join_table5927);
        	        table_reference1042=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference1042.tree);

        	        // MySQL.g:1331:61: ( options {greedy=true; } : join_condition )?
        	        {
        	            int alt365=2;
        	            switch ( LA(1) )
        	            {
        	                case ON_SYMBOL:
        	                	{
        	                		alt365=1;
        	                	}
        	                    break;
        	                case USING_SYMBOL:
        	                	{
        	                		alt365=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt365)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1331:89: join_condition
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_join_condition_in_join_table5941);
        	        	        join_condition1043=join_condition(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_condition1043.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1332:4: STRAIGHT_JOIN_SYMBOL table_factor ( options {greedy=true; } : ON_SYMBOL expression )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STRAIGHT_JOIN_SYMBOL1044 = (pANTLR3_COMMON_TOKEN) MATCHT(STRAIGHT_JOIN_SYMBOL, &FOLLOW_STRAIGHT_JOIN_SYMBOL_in_join_table5948);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STRAIGHT_JOIN_SYMBOL1044_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STRAIGHT_JOIN_SYMBOL1044));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STRAIGHT_JOIN_SYMBOL1044_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_factor_in_join_table5950);
        	        table_factor1045=table_factor(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_factor1045.tree);

        	        // MySQL.g:1332:38: ( options {greedy=true; } : ON_SYMBOL expression )?
        	        {
        	            int alt366=2;
        	            switch ( LA(1) )
        	            {
        	                case ON_SYMBOL:
        	                	{
        	                		alt366=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt366)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1332:66: ON_SYMBOL expression
        	        	    {
        	        	        ON_SYMBOL1046 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_join_table5964);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ON_SYMBOL1046_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1046));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1046_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_join_table5966);
        	        	        expression1047=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1047.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1333:4: ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? JOIN_SYMBOL table_reference join_condition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1048=(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, set1048))
        	            );
        	            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:1333:33: ( OUTER_SYMBOL )?
        	        {
        	            int alt367=2;
        	            switch ( LA(1) )
        	            {
        	                case OUTER_SYMBOL:
        	                	{
        	                		alt367=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt367)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1333:33: OUTER_SYMBOL
        	        	    {
        	        	        OUTER_SYMBOL1049 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTER_SYMBOL, &FOLLOW_OUTER_SYMBOL_in_join_table5981);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulejoin_tableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OUTER_SYMBOL1049_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTER_SYMBOL1049));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OUTER_SYMBOL1049_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        JOIN_SYMBOL1050 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table5984);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL1050_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL1050));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL1050_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_reference_in_join_table5986);
        	        table_reference1051=table_reference(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_reference1051.tree);

        	        FOLLOWPUSH(FOLLOW_join_condition_in_join_table5988);
        	        join_condition1052=join_condition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_condition1052.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1334:4: NATURAL_SYMBOL ( ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? )? JOIN_SYMBOL table_factor
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATURAL_SYMBOL1053 = (pANTLR3_COMMON_TOKEN) MATCHT(NATURAL_SYMBOL, &FOLLOW_NATURAL_SYMBOL_in_join_table5993);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATURAL_SYMBOL1053_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATURAL_SYMBOL1053));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATURAL_SYMBOL1053_tree);
        	        }

        	        // MySQL.g:1334:19: ( ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )? )?
        	        {
        	            int alt369=2;
        	            switch ( LA(1) )
        	            {
        	                case LEFT_SYMBOL:
        	                case RIGHT_SYMBOL:
        	                	{
        	                		alt369=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt369)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1334:20: ( LEFT_SYMBOL | RIGHT_SYMBOL ) ( OUTER_SYMBOL )?
        	        	    {
        	        	        set1054=(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, set1054))
        	        	            );
        	        	            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:1334:49: ( OUTER_SYMBOL )?
        	        	        {
        	        	            int alt368=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case OUTER_SYMBOL:
        	        	                	{
        	        	                		alt368=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt368)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1334:49: OUTER_SYMBOL
        	        	        	    {
        	        	        	        OUTER_SYMBOL1055 = (pANTLR3_COMMON_TOKEN) MATCHT(OUTER_SYMBOL, &FOLLOW_OUTER_SYMBOL_in_join_table6004);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulejoin_tableEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        OUTER_SYMBOL1055_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OUTER_SYMBOL1055));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OUTER_SYMBOL1055_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        JOIN_SYMBOL1056 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_join_table6009);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JOIN_SYMBOL1056_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL1056));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL1056_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_factor_in_join_table6011);
        	        table_factor1057=table_factor(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_tableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_factor1057.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:1337: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_SYMBOL1058;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL1060;
    MySQLParser_expression_return expression1059;
    #undef	RETURN_TYPE_expression1059
    #define	RETURN_TYPE_expression1059 MySQLParser_expression_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1061;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1061
    #define	RETURN_TYPE_identifier_list_with_parentheses1061 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE ON_SYMBOL1058_tree;
    pANTLR3_BASE_TREE USING_SYMBOL1060_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL1058       = NULL;
    USING_SYMBOL1060       = NULL;
    expression1059.tree = NULL;

    identifier_list_with_parentheses1061.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL1058_tree   = NULL;
    USING_SYMBOL1060_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1337:15: ( ON_SYMBOL expression | USING_SYMBOL identifier_list_with_parentheses )

            ANTLR3_UINT32 alt371;

            alt371=2;

            switch ( LA(1) )
            {
            case ON_SYMBOL:
            	{
            		alt371=1;
            	}
                break;
            case USING_SYMBOL:
            	{
            		alt371=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 371;
                EXCEPTION->state        = 0;


                goto rulejoin_conditionEx;

            }

            switch (alt371)
            {
        	case 1:
        	    // MySQL.g:1338:2: ON_SYMBOL expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ON_SYMBOL1058 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_join_condition6020);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ON_SYMBOL1058_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1058));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1058_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_join_condition6022);
        	        expression1059=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1059.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1339:4: USING_SYMBOL identifier_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USING_SYMBOL1060 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_join_condition6027);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulejoin_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USING_SYMBOL1060_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL1060));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL1060_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_join_condition6029);
        	        identifier_list_with_parentheses1061=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_parentheses1061.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_clause
 * MySQL.g:1342: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_SYMBOL1062;
    MySQLParser_union_option_return union_option1063;
    #undef	RETURN_TYPE_union_option1063
    #define	RETURN_TYPE_union_option1063 MySQLParser_union_option_return

    MySQLParser_select_statement_return select_statement1064;
    #undef	RETURN_TYPE_select_statement1064
    #define	RETURN_TYPE_select_statement1064 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE UNION_SYMBOL1062_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNION_SYMBOL1062       = NULL;
    union_option1063.tree = NULL;

    select_statement1064.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNION_SYMBOL1062_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1342:13: ( UNION_SYMBOL ^ ( union_option )? select_statement )
        // MySQL.g:1343:3: UNION_SYMBOL ^ ( union_option )? select_statement
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            UNION_SYMBOL1062 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_union_clause6039);
            if  (HASEXCEPTION())
            {
                goto ruleunion_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UNION_SYMBOL1062_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL1062))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNION_SYMBOL1062_tree, root_0));
            }

            // MySQL.g:1343:17: ( union_option )?
            {
                int alt372=2;
                switch ( LA(1) )
                {
                    case ALL_SYMBOL:
                    case DISTINCT_SYMBOL:
                    	{
                    		alt372=1;
                    	}
                        break;
                }

                switch (alt372)
                {
            	case 1:
            	    // MySQL.g:1343:17: union_option
            	    {
            	        FOLLOWPUSH(FOLLOW_union_option_in_union_clause6042);
            	        union_option1063=union_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleunion_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_option1063.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_union_clause6045);
            select_statement1064=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleunion_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement1064.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:1346: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    set1065;

    pANTLR3_BASE_TREE set1065_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1065       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1065_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1346:13: ( DISTINCT_SYMBOL | ALL_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1065=(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, set1065))
                );
                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 union_or_order_by_or_limit
 * MySQL.g:1351:1: union_or_order_by_or_limit : ( union_clause | order_by_or_limit );
 */
static MySQLParser_union_or_order_by_or_limit_return
union_or_order_by_or_limit(pMySQLParser ctx)
{
    MySQLParser_union_or_order_by_or_limit_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_union_clause_return union_clause1066;
    #undef	RETURN_TYPE_union_clause1066
    #define	RETURN_TYPE_union_clause1066 MySQLParser_union_clause_return

    MySQLParser_order_by_or_limit_return order_by_or_limit1067;
    #undef	RETURN_TYPE_order_by_or_limit1067
    #define	RETURN_TYPE_order_by_or_limit1067 MySQLParser_order_by_or_limit_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    union_clause1066.tree = NULL;

    order_by_or_limit1067.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1351:27: ( union_clause | order_by_or_limit )

            ANTLR3_UINT32 alt373;

            alt373=2;

            switch ( LA(1) )
            {
            case UNION_SYMBOL:
            	{
            		alt373=1;
            	}
                break;
            case LIMIT_SYMBOL:
            case ORDER_SYMBOL:
            	{
            		alt373=2;
            	}
                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 ruleunion_or_order_by_or_limitEx;

            }

            switch (alt373)
            {
        	case 1:
        	    // MySQL.g:1352:2: union_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_union_clause_in_union_or_order_by_or_limit6070);
        	        union_clause1066=union_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunion_or_order_by_or_limitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, union_clause1066.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1353:4: order_by_or_limit
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_order_by_or_limit_in_union_or_order_by_or_limit6075);
        	        order_by_or_limit1067=order_by_or_limit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunion_or_order_by_or_limitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_or_limit1067.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleunion_or_order_by_or_limitEx; /* Prevent compiler warnings */
    ruleunion_or_order_by_or_limitEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_or_order_by_or_limit */

/**
 * $ANTLR start select_lock_type
 * MySQL.g:1356:1: select_lock_type : ( FOR_SYMBOL UPDATE_SYMBOL | LOCK_SYMBOL IN_SYMBOL SHARE_SYMBOL MODE_SYMBOL );
 */
static MySQLParser_select_lock_type_return
select_lock_type(pMySQLParser ctx)
{
    MySQLParser_select_lock_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1068;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL1069;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1070;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1071;
    pANTLR3_COMMON_TOKEN    SHARE_SYMBOL1072;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL1073;

    pANTLR3_BASE_TREE FOR_SYMBOL1068_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL1069_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1070_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1071_tree;
    pANTLR3_BASE_TREE SHARE_SYMBOL1072_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL1073_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1068       = NULL;
    UPDATE_SYMBOL1069       = NULL;
    LOCK_SYMBOL1070       = NULL;
    IN_SYMBOL1071       = NULL;
    SHARE_SYMBOL1072       = NULL;
    MODE_SYMBOL1073       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1068_tree   = NULL;
    UPDATE_SYMBOL1069_tree   = NULL;
    LOCK_SYMBOL1070_tree   = NULL;
    IN_SYMBOL1071_tree   = NULL;
    SHARE_SYMBOL1072_tree   = NULL;
    MODE_SYMBOL1073_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1356:17: ( FOR_SYMBOL UPDATE_SYMBOL | LOCK_SYMBOL IN_SYMBOL SHARE_SYMBOL MODE_SYMBOL )

            ANTLR3_UINT32 alt374;

            alt374=2;

            switch ( LA(1) )
            {
            case FOR_SYMBOL:
            	{
            		alt374=1;
            	}
                break;
            case LOCK_SYMBOL:
            	{
            		alt374=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 374;
                EXCEPTION->state        = 0;


                goto ruleselect_lock_typeEx;

            }

            switch (alt374)
            {
        	case 1:
        	    // MySQL.g:1357:2: FOR_SYMBOL UPDATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOR_SYMBOL1068 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_select_lock_type6084);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1068_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1068));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1068_tree);
        	        }

        	        UPDATE_SYMBOL1069 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_select_lock_type6086);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPDATE_SYMBOL1069_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL1069));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL1069_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1358:4: LOCK_SYMBOL IN_SYMBOL SHARE_SYMBOL MODE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL1070 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_select_lock_type6091);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1070_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1070));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1070_tree);
        	        }

        	        IN_SYMBOL1071 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_select_lock_type6093);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL1071_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1071));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1071_tree);
        	        }

        	        SHARE_SYMBOL1072 = (pANTLR3_COMMON_TOKEN) MATCHT(SHARE_SYMBOL, &FOLLOW_SHARE_SYMBOL_in_select_lock_type6095);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHARE_SYMBOL1072_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHARE_SYMBOL1072));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHARE_SYMBOL1072_tree);
        	        }

        	        MODE_SYMBOL1073 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_select_lock_type6097);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleselect_lock_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MODE_SYMBOL1073_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL1073));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL1073_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleselect_lock_typeEx; /* Prevent compiler warnings */
    ruleselect_lock_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 select_lock_type */

/**
 * $ANTLR start table_alias
 * MySQL.g:1361: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    set1074;
    MySQLParser_identifier_return identifier1075;
    #undef	RETURN_TYPE_identifier1075
    #define	RETURN_TYPE_identifier1075 MySQLParser_identifier_return

    pANTLR3_BASE_TREE set1074_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1074       = NULL;
    identifier1075.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1074_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1361:12: ( ( AS_SYMBOL | EQUAL_OPERATOR )? identifier )
        // MySQL.g:1362:2: ( AS_SYMBOL | EQUAL_OPERATOR )? identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1362:2: ( AS_SYMBOL | EQUAL_OPERATOR )?
            {
                int alt375=2;
                switch ( LA(1) )
                {
                    case AS_SYMBOL:
                    case EQUAL_OPERATOR:
                    	{
                    		alt375=1;
                    	}
                        break;
                }

                switch (alt375)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set1074=(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, set1074))
            	            );
            	            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_alias6115);
            identifier1075=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_aliasEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1075.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:1365:1: index_hint_list : index_hint ( COMMA_SYMBOL index_hint )* -> ^( INDEX_HINT_LIST_TOKEN 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_SYMBOL1077;
    MySQLParser_index_hint_return index_hint1076;
    #undef	RETURN_TYPE_index_hint1076
    #define	RETURN_TYPE_index_hint1076 MySQLParser_index_hint_return

    MySQLParser_index_hint_return index_hint1078;
    #undef	RETURN_TYPE_index_hint1078
    #define	RETURN_TYPE_index_hint1078 MySQLParser_index_hint_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1077_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_index_hint;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1077       = NULL;
    index_hint1076.tree = NULL;

    index_hint1078.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1077_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:1365:16: ( index_hint ( COMMA_SYMBOL index_hint )* -> ^( INDEX_HINT_LIST_TOKEN index_hint ( COMMA_SYMBOL index_hint )* ) )
        // MySQL.g:1366:2: index_hint ( COMMA_SYMBOL index_hint )*
        {
            FOLLOWPUSH(FOLLOW_index_hint_in_index_hint_list6124);
            index_hint1076=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_hint1076.tree, NULL); }

            // MySQL.g:1366:13: ( COMMA_SYMBOL index_hint )*

            for (;;)
            {
                int alt376=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case FORCE_SYMBOL:
                		case IGNORE_SYMBOL:
                		case USE_SYMBOL:
                			{
                				alt376=1;
                			}
                		    break;

                		}

                	}
                    break;

                }

                switch (alt376)
                {
            	case 1:
            	    // MySQL.g:1366:14: COMMA_SYMBOL index_hint
            	    {
            	        COMMA_SYMBOL1077 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_hint_list6127);
            	        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_SYMBOL1077, NULL); }


            	        FOLLOWPUSH(FOLLOW_index_hint_in_index_hint_list6129);
            	        index_hint1078=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_hint1078.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop376;	/* break out of the loop */
            	    break;
                }
            }
            loop376: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : index_hint, COMMA_SYMBOL, index_hint
             * 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;
            	// 1366:40: -> ^( INDEX_HINT_LIST_TOKEN index_hint ( COMMA_SYMBOL index_hint )* )
            	{
            	    // MySQL.g:1366:43: ^( INDEX_HINT_LIST_TOKEN 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_TOKEN, (pANTLR3_UINT8)"INDEX_HINT_LIST_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_index_hint == NULL ? NULL : stream_index_hint->nextTree(stream_index_hint));

            	        // MySQL.g:1366:78: ( 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:1369: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_SYMBOL1082;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1084;
    pANTLR3_COMMON_TOKEN    USE_SYMBOL1085;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1088;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1090;
    MySQLParser_index_hint_type_return index_hint_type1079;
    #undef	RETURN_TYPE_index_hint_type1079
    #define	RETURN_TYPE_index_hint_type1079 MySQLParser_index_hint_type_return

    MySQLParser_key_or_index_return key_or_index1080;
    #undef	RETURN_TYPE_key_or_index1080
    #define	RETURN_TYPE_key_or_index1080 MySQLParser_key_or_index_return

    MySQLParser_index_hint_clause_return index_hint_clause1081;
    #undef	RETURN_TYPE_index_hint_clause1081
    #define	RETURN_TYPE_index_hint_clause1081 MySQLParser_index_hint_clause_return

    MySQLParser_index_list_return index_list1083;
    #undef	RETURN_TYPE_index_list1083
    #define	RETURN_TYPE_index_list1083 MySQLParser_index_list_return

    MySQLParser_key_or_index_return key_or_index1086;
    #undef	RETURN_TYPE_key_or_index1086
    #define	RETURN_TYPE_key_or_index1086 MySQLParser_key_or_index_return

    MySQLParser_index_hint_clause_return index_hint_clause1087;
    #undef	RETURN_TYPE_index_hint_clause1087
    #define	RETURN_TYPE_index_hint_clause1087 MySQLParser_index_hint_clause_return

    MySQLParser_index_list_return index_list1089;
    #undef	RETURN_TYPE_index_list1089
    #define	RETURN_TYPE_index_list1089 MySQLParser_index_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1082_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1084_tree;
    pANTLR3_BASE_TREE USE_SYMBOL1085_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1088_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1090_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL1082       = NULL;
    CLOSE_PAR_SYMBOL1084       = NULL;
    USE_SYMBOL1085       = NULL;
    OPEN_PAR_SYMBOL1088       = NULL;
    CLOSE_PAR_SYMBOL1090       = NULL;
    index_hint_type1079.tree = NULL;

    key_or_index1080.tree = NULL;

    index_hint_clause1081.tree = NULL;

    index_list1083.tree = NULL;

    key_or_index1086.tree = NULL;

    index_hint_clause1087.tree = NULL;

    index_list1089.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL1082_tree   = NULL;
    CLOSE_PAR_SYMBOL1084_tree   = NULL;
    USE_SYMBOL1085_tree   = NULL;
    OPEN_PAR_SYMBOL1088_tree   = NULL;
    CLOSE_PAR_SYMBOL1090_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1369: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 alt380;

            alt380=2;

            switch ( LA(1) )
            {
            case FORCE_SYMBOL:
            case IGNORE_SYMBOL:
            	{
            		alt380=1;
            	}
                break;
            case USE_SYMBOL:
            	{
            		alt380=2;
            	}
                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 ruleindex_hintEx;

            }

            switch (alt380)
            {
        	case 1:
        	    // MySQL.g:1370: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_hint6155);
        	        index_hint_type1079=index_hint_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_type1079.tree);

        	        FOLLOWPUSH(FOLLOW_key_or_index_in_index_hint6157);
        	        key_or_index1080=key_or_index(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_or_index1080.tree);

        	        // MySQL.g:1370:31: ( index_hint_clause )?
        	        {
        	            int alt377=2;
        	            switch ( LA(1) )
        	            {
        	                case FOR_SYMBOL:
        	                	{
        	                		alt377=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt377)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1370:31: index_hint_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_clause_in_index_hint6159);
        	        	        index_hint_clause1081=index_hint_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_clause1081.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL1082 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6162);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1082_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1082));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1082_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_index_list_in_index_hint6164);
        	        index_list1083=index_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list1083.tree);

        	        CLOSE_PAR_SYMBOL1084 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6166);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1084_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1084));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1084_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1371: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_SYMBOL1085 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_index_hint6171);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USE_SYMBOL1085_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USE_SYMBOL1085));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USE_SYMBOL1085_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_key_or_index_in_index_hint6173);
        	        key_or_index1086=key_or_index(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_or_index1086.tree);

        	        // MySQL.g:1371:28: ( index_hint_clause )?
        	        {
        	            int alt378=2;
        	            switch ( LA(1) )
        	            {
        	                case FOR_SYMBOL:
        	                	{
        	                		alt378=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt378)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1371:28: index_hint_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_hint_clause_in_index_hint6175);
        	        	        index_hint_clause1087=index_hint_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_hint_clause1087.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL1088 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_hint6178);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1088_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1088));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1088_tree);
        	        }

        	        // MySQL.g:1371:63: ( index_list )?
        	        {
        	            int alt379=2;
        	            {
        	                int LA379_0 = LA(1);
        	                if ( (((LA379_0 >= ACCOUNT_SYMBOL) && (LA379_0 <= YEAR_SYMBOL)) || LA379_0 == BACK_TICK_QUOTED_ID || LA379_0 == DOUBLE_QUOTED_TEXT || LA379_0 == IDENTIFIER || LA379_0 == PRIMARY_SYMBOL))
        	                {
        	                    alt379=1;
        	                }
        	            }
        	            switch (alt379)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1371:63: index_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_index_list_in_index_hint6180);
        	        	        index_list1089=index_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleindex_hintEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list1089.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1090 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_hint6183);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_hintEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1090_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1090));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1090_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:1374: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    set1091;

    pANTLR3_BASE_TREE set1091_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1091       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1091_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1374:16: ( FORCE_SYMBOL | IGNORE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1091=(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, set1091))
                );
                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:1379: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    set1092;

    pANTLR3_BASE_TREE set1092_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1092       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1092_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1379:13: ( KEY_SYMBOL | INDEX_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1092=(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, set1092))
                );
                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:1384: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_SYMBOL1093;
    pANTLR3_COMMON_TOKEN    JOIN_SYMBOL1094;
    pANTLR3_COMMON_TOKEN    ORDER_SYMBOL1095;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL1096;
    pANTLR3_COMMON_TOKEN    GROUP_SYMBOL1097;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL1098;

    pANTLR3_BASE_TREE FOR_SYMBOL1093_tree;
    pANTLR3_BASE_TREE JOIN_SYMBOL1094_tree;
    pANTLR3_BASE_TREE ORDER_SYMBOL1095_tree;
    pANTLR3_BASE_TREE BY_SYMBOL1096_tree;
    pANTLR3_BASE_TREE GROUP_SYMBOL1097_tree;
    pANTLR3_BASE_TREE BY_SYMBOL1098_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1093       = NULL;
    JOIN_SYMBOL1094       = NULL;
    ORDER_SYMBOL1095       = NULL;
    BY_SYMBOL1096       = NULL;
    GROUP_SYMBOL1097       = NULL;
    BY_SYMBOL1098       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1093_tree   = NULL;
    JOIN_SYMBOL1094_tree   = NULL;
    ORDER_SYMBOL1095_tree   = NULL;
    BY_SYMBOL1096_tree   = NULL;
    GROUP_SYMBOL1097_tree   = NULL;
    BY_SYMBOL1098_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1384:18: ( FOR_SYMBOL ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL ) )
        // MySQL.g:1385:2: FOR_SYMBOL ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOR_SYMBOL1093 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_index_hint_clause6220);
            if  (HASEXCEPTION())
            {
                goto ruleindex_hint_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL1093_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1093));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1093_tree);
            }

            // MySQL.g:1385:13: ( JOIN_SYMBOL | ORDER_SYMBOL BY_SYMBOL | GROUP_SYMBOL BY_SYMBOL )
            {
                int alt381=3;
                switch ( LA(1) )
                {
                case JOIN_SYMBOL:
                	{
                		alt381=1;
                	}
                    break;
                case ORDER_SYMBOL:
                	{
                		alt381=2;
                	}
                    break;
                case GROUP_SYMBOL:
                	{
                		alt381=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 381;
                    EXCEPTION->state        = 0;


                    goto ruleindex_hint_clauseEx;

                }

                switch (alt381)
                {
            	case 1:
            	    // MySQL.g:1385:14: JOIN_SYMBOL
            	    {
            	        JOIN_SYMBOL1094 = (pANTLR3_COMMON_TOKEN) MATCHT(JOIN_SYMBOL, &FOLLOW_JOIN_SYMBOL_in_index_hint_clause6223);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        JOIN_SYMBOL1094_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JOIN_SYMBOL1094));
            	        ADAPTOR->addChild(ADAPTOR, root_0, JOIN_SYMBOL1094_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1385:28: ORDER_SYMBOL BY_SYMBOL
            	    {
            	        ORDER_SYMBOL1095 = (pANTLR3_COMMON_TOKEN) MATCHT(ORDER_SYMBOL, &FOLLOW_ORDER_SYMBOL_in_index_hint_clause6227);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ORDER_SYMBOL1095_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ORDER_SYMBOL1095));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ORDER_SYMBOL1095_tree);
            	        }

            	        BY_SYMBOL1096 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_index_hint_clause6229);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL1096_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL1096));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL1096_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1385:53: GROUP_SYMBOL BY_SYMBOL
            	    {
            	        GROUP_SYMBOL1097 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_SYMBOL, &FOLLOW_GROUP_SYMBOL_in_index_hint_clause6233);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GROUP_SYMBOL1097_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_SYMBOL1097));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_SYMBOL1097_tree);
            	        }

            	        BY_SYMBOL1098 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_index_hint_clause6235);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_hint_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL1098_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL1098));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL1098_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:1388: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_SYMBOL1100;
    MySQLParser_index_list_element_return index_list_element1099;
    #undef	RETURN_TYPE_index_list_element1099
    #define	RETURN_TYPE_index_list_element1099 MySQLParser_index_list_element_return

    MySQLParser_index_list_element_return index_list_element1101;
    #undef	RETURN_TYPE_index_list_element1101
    #define	RETURN_TYPE_index_list_element1101 MySQLParser_index_list_element_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1100_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1100       = NULL;
    index_list_element1099.tree = NULL;

    index_list_element1101.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1100_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1388:11: ( index_list_element ( COMMA_SYMBOL index_list_element )* )
        // MySQL.g:1389:2: index_list_element ( COMMA_SYMBOL index_list_element )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_index_list_element_in_index_list6245);
            index_list_element1099=index_list_element(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list_element1099.tree);

            // MySQL.g:1389:21: ( COMMA_SYMBOL index_list_element )*

            for (;;)
            {
                int alt382=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt382=1;
                	}
                    break;

                }

                switch (alt382)
                {
            	case 1:
            	    // MySQL.g:1389:22: COMMA_SYMBOL index_list_element
            	    {
            	        COMMA_SYMBOL1100 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_list6248);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1100_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1100));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1100_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_list_element_in_index_list6250);
            	        index_list_element1101=index_list_element(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_list_element1101.tree);

            	    }
            	    break;

            	default:
            	    goto loop382;	/* break out of the loop */
            	    break;
                }
            }
            loop382: ; /* 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:1392: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_SYMBOL1103;
    MySQLParser_identifier_return identifier1102;
    #undef	RETURN_TYPE_identifier1102
    #define	RETURN_TYPE_identifier1102 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PRIMARY_SYMBOL1103_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PRIMARY_SYMBOL1103       = NULL;
    identifier1102.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PRIMARY_SYMBOL1103_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1392:19: ( identifier | PRIMARY_SYMBOL )

            ANTLR3_UINT32 alt383;

            alt383=2;

            {
                int LA383_0 = LA(1);
                if ( (((LA383_0 >= ACCOUNT_SYMBOL) && (LA383_0 <= YEAR_SYMBOL)) || LA383_0 == BACK_TICK_QUOTED_ID || LA383_0 == DOUBLE_QUOTED_TEXT || LA383_0 == IDENTIFIER))
                {
                    alt383=1;
                }
                else if ( (LA383_0 == PRIMARY_SYMBOL))
                {
                    alt383=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 383;
                    EXCEPTION->state        = 0;


                    goto ruleindex_list_elementEx;

                }
            }
            switch (alt383)
            {
        	case 1:
        	    // MySQL.g:1393:2: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_index_list_element6261);
        	        identifier1102=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1102.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1394:4: PRIMARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PRIMARY_SYMBOL1103 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_index_list_element6266);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleindex_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PRIMARY_SYMBOL1103_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL1103));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL1103_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:1399:1: update_statement : UPDATE_SYMBOL ^ ( LOW_PRIORITY_SYMBOL )? ( IGNORE_SYMBOL )? join_table_list SET_SYMBOL column_assignment_list_with_default ( where_clause )? ( order_by_clause )? ( simple_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_SYMBOL1104;
    pANTLR3_COMMON_TOKEN    LOW_PRIORITY_SYMBOL1105;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL1106;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL1108;
    MySQLParser_join_table_list_return join_table_list1107;
    #undef	RETURN_TYPE_join_table_list1107
    #define	RETURN_TYPE_join_table_list1107 MySQLParser_join_table_list_return

    MySQLParser_column_assignment_list_with_default_return column_assignment_list_with_default1109;
    #undef	RETURN_TYPE_column_assignment_list_with_default1109
    #define	RETURN_TYPE_column_assignment_list_with_default1109 MySQLParser_column_assignment_list_with_default_return

    MySQLParser_where_clause_return where_clause1110;
    #undef	RETURN_TYPE_where_clause1110
    #define	RETURN_TYPE_where_clause1110 MySQLParser_where_clause_return

    MySQLParser_order_by_clause_return order_by_clause1111;
    #undef	RETURN_TYPE_order_by_clause1111
    #define	RETURN_TYPE_order_by_clause1111 MySQLParser_order_by_clause_return

    MySQLParser_simple_limit_clause_return simple_limit_clause1112;
    #undef	RETURN_TYPE_simple_limit_clause1112
    #define	RETURN_TYPE_simple_limit_clause1112 MySQLParser_simple_limit_clause_return

    pANTLR3_BASE_TREE UPDATE_SYMBOL1104_tree;
    pANTLR3_BASE_TREE LOW_PRIORITY_SYMBOL1105_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL1106_tree;
    pANTLR3_BASE_TREE SET_SYMBOL1108_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UPDATE_SYMBOL1104       = NULL;
    LOW_PRIORITY_SYMBOL1105       = NULL;
    IGNORE_SYMBOL1106       = NULL;
    SET_SYMBOL1108       = NULL;
    join_table_list1107.tree = NULL;

    column_assignment_list_with_default1109.tree = NULL;

    where_clause1110.tree = NULL;

    order_by_clause1111.tree = NULL;

    simple_limit_clause1112.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UPDATE_SYMBOL1104_tree   = NULL;
    LOW_PRIORITY_SYMBOL1105_tree   = NULL;
    IGNORE_SYMBOL1106_tree   = NULL;
    SET_SYMBOL1108_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1399:17: ( UPDATE_SYMBOL ^ ( LOW_PRIORITY_SYMBOL )? ( IGNORE_SYMBOL )? join_table_list SET_SYMBOL column_assignment_list_with_default ( where_clause )? ( order_by_clause )? ( simple_limit_clause )? )
        // MySQL.g:1400:2: UPDATE_SYMBOL ^ ( LOW_PRIORITY_SYMBOL )? ( IGNORE_SYMBOL )? join_table_list SET_SYMBOL column_assignment_list_with_default ( where_clause )? ( order_by_clause )? ( simple_limit_clause )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            UPDATE_SYMBOL1104 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_update_statement6277);
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UPDATE_SYMBOL1104_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL1104))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UPDATE_SYMBOL1104_tree, root_0));
            }

            // MySQL.g:1400:17: ( LOW_PRIORITY_SYMBOL )?
            {
                int alt384=2;
                switch ( LA(1) )
                {
                    case LOW_PRIORITY_SYMBOL:
                    	{
                    		alt384=1;
                    	}
                        break;
                }

                switch (alt384)
                {
            	case 1:
            	    // MySQL.g:1400:17: LOW_PRIORITY_SYMBOL
            	    {
            	        LOW_PRIORITY_SYMBOL1105 = (pANTLR3_COMMON_TOKEN) MATCHT(LOW_PRIORITY_SYMBOL, &FOLLOW_LOW_PRIORITY_SYMBOL_in_update_statement6280);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOW_PRIORITY_SYMBOL1105_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOW_PRIORITY_SYMBOL1105));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOW_PRIORITY_SYMBOL1105_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1400:38: ( IGNORE_SYMBOL )?
            {
                int alt385=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt385=1;
                    	}
                        break;
                }

                switch (alt385)
                {
            	case 1:
            	    // MySQL.g:1400:38: IGNORE_SYMBOL
            	    {
            	        IGNORE_SYMBOL1106 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_update_statement6283);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL1106_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL1106));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL1106_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_join_table_list_in_update_statement6286);
            join_table_list1107=join_table_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, join_table_list1107.tree);

            SET_SYMBOL1108 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_update_statement6290);
            if  (HASEXCEPTION())
            {
                goto ruleupdate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL1108_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1108));
            ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL1108_tree);
            }

            FOLLOWPUSH(FOLLOW_column_assignment_list_with_default_in_update_statement6292);
            column_assignment_list_with_default1109=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_default1109.tree);

            // MySQL.g:1401:50: ( where_clause )?
            {
                int alt386=2;
                switch ( LA(1) )
                {
                    case WHERE_SYMBOL:
                    	{
                    		alt386=1;
                    	}
                        break;
                }

                switch (alt386)
                {
            	case 1:
            	    // MySQL.g:1401:50: where_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_where_clause_in_update_statement6294);
            	        where_clause1110=where_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause1110.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1401:64: ( order_by_clause )?
            {
                int alt387=2;
                switch ( LA(1) )
                {
                    case ORDER_SYMBOL:
                    	{
                    		alt387=1;
                    	}
                        break;
                }

                switch (alt387)
                {
            	case 1:
            	    // MySQL.g:1401:64: order_by_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_order_by_clause_in_update_statement6297);
            	        order_by_clause1111=order_by_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause1111.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1401:81: ( simple_limit_clause )?
            {
                int alt388=2;
                switch ( LA(1) )
                {
                    case LIMIT_SYMBOL:
                    	{
                    		alt388=1;
                    	}
                        break;
                }

                switch (alt388)
                {
            	case 1:
            	    // MySQL.g:1401:81: simple_limit_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_simple_limit_clause_in_update_statement6300);
            	        simple_limit_clause1112=simple_limit_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleupdate_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, simple_limit_clause1112.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:1406: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_statement1113;
    #undef	RETURN_TYPE_transaction_statement1113
    #define	RETURN_TYPE_transaction_statement1113 MySQLParser_transaction_statement_return

    MySQLParser_savepoint_statement_return savepoint_statement1114;
    #undef	RETURN_TYPE_savepoint_statement1114
    #define	RETURN_TYPE_savepoint_statement1114 MySQLParser_savepoint_statement_return

    MySQLParser_lock_statement_return lock_statement1115;
    #undef	RETURN_TYPE_lock_statement1115
    #define	RETURN_TYPE_lock_statement1115 MySQLParser_lock_statement_return

    MySQLParser_xa_statement_return xa_statement1116;
    #undef	RETURN_TYPE_xa_statement1116
    #define	RETURN_TYPE_xa_statement1116 MySQLParser_xa_statement_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    transaction_statement1113.tree = NULL;

    savepoint_statement1114.tree = NULL;

    lock_statement1115.tree = NULL;

    xa_statement1116.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1406:33: ( transaction_statement | savepoint_statement | lock_statement | xa_statement )

            ANTLR3_UINT32 alt389;

            alt389=4;

            switch ( LA(1) )
            {
            case BEGIN_SYMBOL:
            case COMMIT_SYMBOL:
            case ROLLBACK_SYMBOL:
            case START_SYMBOL:
            	{
            		alt389=1;
            	}
                break;
            case SAVEPOINT_SYMBOL:
            case RELEASE_SYMBOL:
            	{
            		alt389=2;
            	}
                break;
            case LOCK_SYMBOL:
            case UNLOCK_SYMBOL:
            	{
            		alt389=3;
            	}
                break;
            case XA_SYMBOL:
            	{
            		alt389=4;
            	}
                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 ruletransaction_or_locking_statementEx;

            }

            switch (alt389)
            {
        	case 1:
        	    // MySQL.g:1407:2: transaction_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_transaction_statement_in_transaction_or_locking_statement6312);
        	        transaction_statement1113=transaction_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, transaction_statement1113.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1408:4: savepoint_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_savepoint_statement_in_transaction_or_locking_statement6317);
        	        savepoint_statement1114=savepoint_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, savepoint_statement1114.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1409:4: lock_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_lock_statement_in_transaction_or_locking_statement6322);
        	        lock_statement1115=lock_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_statement1115.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1410:4: xa_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_xa_statement_in_transaction_or_locking_statement6327);
        	        xa_statement1116=xa_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_or_locking_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xa_statement1116.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:1413: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 )? identifier ) );
 */
static MySQLParser_transaction_statement_return
transaction_statement(pMySQLParser ctx)
{
    MySQLParser_transaction_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    START_SYMBOL1117;
    pANTLR3_COMMON_TOKEN    TRANSACTION_SYMBOL1118;
    pANTLR3_COMMON_TOKEN    BEGIN_SYMBOL1120;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1121;
    pANTLR3_COMMON_TOKEN    COMMIT_SYMBOL1122;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1123;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1124;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1125;
    pANTLR3_COMMON_TOKEN    CHAIN_SYMBOL1126;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1127;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1128;
    pANTLR3_COMMON_TOKEN    ROLLBACK_SYMBOL1129;
    pANTLR3_COMMON_TOKEN    WORK_SYMBOL1130;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1131;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1132;
    pANTLR3_COMMON_TOKEN    CHAIN_SYMBOL1133;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL1134;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1135;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1136;
    pANTLR3_COMMON_TOKEN    SAVEPOINT_SYMBOL1137;
    MySQLParser_transaction_characteristic_return transaction_characteristic1119;
    #undef	RETURN_TYPE_transaction_characteristic1119
    #define	RETURN_TYPE_transaction_characteristic1119 MySQLParser_transaction_characteristic_return

    MySQLParser_identifier_return identifier1138;
    #undef	RETURN_TYPE_identifier1138
    #define	RETURN_TYPE_identifier1138 MySQLParser_identifier_return

    pANTLR3_BASE_TREE START_SYMBOL1117_tree;
    pANTLR3_BASE_TREE TRANSACTION_SYMBOL1118_tree;
    pANTLR3_BASE_TREE BEGIN_SYMBOL1120_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1121_tree;
    pANTLR3_BASE_TREE COMMIT_SYMBOL1122_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1123_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1124_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1125_tree;
    pANTLR3_BASE_TREE CHAIN_SYMBOL1126_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1127_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1128_tree;
    pANTLR3_BASE_TREE ROLLBACK_SYMBOL1129_tree;
    pANTLR3_BASE_TREE WORK_SYMBOL1130_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1131_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1132_tree;
    pANTLR3_BASE_TREE CHAIN_SYMBOL1133_tree;
    pANTLR3_BASE_TREE NO_SYMBOL1134_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1135_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1136_tree;
    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1137_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    START_SYMBOL1117       = NULL;
    TRANSACTION_SYMBOL1118       = NULL;
    BEGIN_SYMBOL1120       = NULL;
    WORK_SYMBOL1121       = NULL;
    COMMIT_SYMBOL1122       = NULL;
    WORK_SYMBOL1123       = NULL;
    AND_SYMBOL1124       = NULL;
    NO_SYMBOL1125       = NULL;
    CHAIN_SYMBOL1126       = NULL;
    NO_SYMBOL1127       = NULL;
    RELEASE_SYMBOL1128       = NULL;
    ROLLBACK_SYMBOL1129       = NULL;
    WORK_SYMBOL1130       = NULL;
    AND_SYMBOL1131       = NULL;
    NO_SYMBOL1132       = NULL;
    CHAIN_SYMBOL1133       = NULL;
    NO_SYMBOL1134       = NULL;
    RELEASE_SYMBOL1135       = NULL;
    TO_SYMBOL1136       = NULL;
    SAVEPOINT_SYMBOL1137       = NULL;
    transaction_characteristic1119.tree = NULL;

    identifier1138.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    START_SYMBOL1117_tree   = NULL;
    TRANSACTION_SYMBOL1118_tree   = NULL;
    BEGIN_SYMBOL1120_tree   = NULL;
    WORK_SYMBOL1121_tree   = NULL;
    COMMIT_SYMBOL1122_tree   = NULL;
    WORK_SYMBOL1123_tree   = NULL;
    AND_SYMBOL1124_tree   = NULL;
    NO_SYMBOL1125_tree   = NULL;
    CHAIN_SYMBOL1126_tree   = NULL;
    NO_SYMBOL1127_tree   = NULL;
    RELEASE_SYMBOL1128_tree   = NULL;
    ROLLBACK_SYMBOL1129_tree   = NULL;
    WORK_SYMBOL1130_tree   = NULL;
    AND_SYMBOL1131_tree   = NULL;
    NO_SYMBOL1132_tree   = NULL;
    CHAIN_SYMBOL1133_tree   = NULL;
    NO_SYMBOL1134_tree   = NULL;
    RELEASE_SYMBOL1135_tree   = NULL;
    TO_SYMBOL1136_tree   = NULL;
    SAVEPOINT_SYMBOL1137_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1413: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 )? identifier ) )

            ANTLR3_UINT32 alt404;

            alt404=4;

            switch ( LA(1) )
            {
            case START_SYMBOL:
            	{
            		alt404=1;
            	}
                break;
            case BEGIN_SYMBOL:
            	{
            		alt404=2;
            	}
                break;
            case COMMIT_SYMBOL:
            	{
            		alt404=3;
            	}
                break;
            case ROLLBACK_SYMBOL:
            	{
            		alt404=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 404;
                EXCEPTION->state        = 0;


                goto ruletransaction_statementEx;

            }

            switch (alt404)
            {
        	case 1:
        	    // MySQL.g:1414:2: START_SYMBOL ^ TRANSACTION_SYMBOL ( transaction_characteristic )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        START_SYMBOL1117 = (pANTLR3_COMMON_TOKEN) MATCHT(START_SYMBOL, &FOLLOW_START_SYMBOL_in_transaction_statement6336);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        START_SYMBOL1117_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, START_SYMBOL1117))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, START_SYMBOL1117_tree, root_0));
        	        }

        	        TRANSACTION_SYMBOL1118 = (pANTLR3_COMMON_TOKEN) MATCHT(TRANSACTION_SYMBOL, &FOLLOW_TRANSACTION_SYMBOL_in_transaction_statement6339);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRANSACTION_SYMBOL1118_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRANSACTION_SYMBOL1118));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRANSACTION_SYMBOL1118_tree);
        	        }

        	        // MySQL.g:1414:35: ( transaction_characteristic )*

        	        for (;;)
        	        {
        	            int alt390=2;
        	            switch ( LA(1) )
        	            {
        	            case READ_SYMBOL:
        	            case WITH_SYMBOL:
        	            	{
        	            		alt390=1;
        	            	}
        	                break;

        	            }

        	            switch (alt390)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1414:35: transaction_characteristic
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_transaction_characteristic_in_transaction_statement6341);
        	        	        transaction_characteristic1119=transaction_characteristic(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, transaction_characteristic1119.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop390;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop390: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1415:4: BEGIN_SYMBOL ^ ( WORK_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BEGIN_SYMBOL1120 = (pANTLR3_COMMON_TOKEN) MATCHT(BEGIN_SYMBOL, &FOLLOW_BEGIN_SYMBOL_in_transaction_statement6347);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BEGIN_SYMBOL1120_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEGIN_SYMBOL1120))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BEGIN_SYMBOL1120_tree, root_0));
        	        }

        	        // MySQL.g:1415:18: ( WORK_SYMBOL )?
        	        {
        	            int alt391=2;
        	            switch ( LA(1) )
        	            {
        	                case WORK_SYMBOL:
        	                	{
        	                		alt391=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt391)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1415:18: WORK_SYMBOL
        	        	    {
        	        	        WORK_SYMBOL1121 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_transaction_statement6350);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        WORK_SYMBOL1121_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1121));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1121_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1416:4: COMMIT_SYMBOL ^ ( WORK_SYMBOL )? ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMIT_SYMBOL1122 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMIT_SYMBOL, &FOLLOW_COMMIT_SYMBOL_in_transaction_statement6356);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMIT_SYMBOL1122_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMIT_SYMBOL1122))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, COMMIT_SYMBOL1122_tree, root_0));
        	        }

        	        // MySQL.g:1416:19: ( WORK_SYMBOL )?
        	        {
        	            int alt392=2;
        	            switch ( LA(1) )
        	            {
        	                case WORK_SYMBOL:
        	                	{
        	                		alt392=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt392)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1416:19: WORK_SYMBOL
        	        	    {
        	        	        WORK_SYMBOL1123 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_transaction_statement6359);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        WORK_SYMBOL1123_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1123));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1123_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1416:32: ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )?
        	        {
        	            int alt394=2;
        	            switch ( LA(1) )
        	            {
        	                case AND_SYMBOL:
        	                	{
        	                		alt394=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt394)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1416:33: AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL
        	        	    {
        	        	        AND_SYMBOL1124 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_transaction_statement6363);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AND_SYMBOL1124_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1124));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1124_tree);
        	        	        }

        	        	        // MySQL.g:1416:44: ( NO_SYMBOL )?
        	        	        {
        	        	            int alt393=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case NO_SYMBOL:
        	        	                	{
        	        	                		alt393=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt393)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1416:44: NO_SYMBOL
        	        	        	    {
        	        	        	        NO_SYMBOL1125 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement6365);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        NO_SYMBOL1125_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1125));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1125_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        CHAIN_SYMBOL1126 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAIN_SYMBOL, &FOLLOW_CHAIN_SYMBOL_in_transaction_statement6368);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CHAIN_SYMBOL1126_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAIN_SYMBOL1126));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAIN_SYMBOL1126_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1416:70: ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	        {
        	            int alt396=2;
        	            switch ( LA(1) )
        	            {
        	                case NO_SYMBOL:
        	                case RELEASE_SYMBOL:
        	                	{
        	                		alt396=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt396)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1416:71: ( NO_SYMBOL )? RELEASE_SYMBOL
        	        	    {
        	        	        // MySQL.g:1416:71: ( NO_SYMBOL )?
        	        	        {
        	        	            int alt395=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case NO_SYMBOL:
        	        	                	{
        	        	                		alt395=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt395)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1416:71: NO_SYMBOL
        	        	        	    {
        	        	        	        NO_SYMBOL1127 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement6373);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        NO_SYMBOL1127_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1127));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1127_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        RELEASE_SYMBOL1128 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_transaction_statement6376);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        RELEASE_SYMBOL1128_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1128));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, RELEASE_SYMBOL1128_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1417:4: ROLLBACK_SYMBOL ^ ( WORK_SYMBOL )? ( ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )? | TO_SYMBOL ( SAVEPOINT_SYMBOL )? identifier )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ROLLBACK_SYMBOL1129 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLBACK_SYMBOL, &FOLLOW_ROLLBACK_SYMBOL_in_transaction_statement6383);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROLLBACK_SYMBOL1129_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLBACK_SYMBOL1129))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ROLLBACK_SYMBOL1129_tree, root_0));
        	        }

        	        // MySQL.g:1417:21: ( WORK_SYMBOL )?
        	        {
        	            int alt397=2;
        	            switch ( LA(1) )
        	            {
        	                case WORK_SYMBOL:
        	                	{
        	                		alt397=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt397)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1417:21: WORK_SYMBOL
        	        	    {
        	        	        WORK_SYMBOL1130 = (pANTLR3_COMMON_TOKEN) MATCHT(WORK_SYMBOL, &FOLLOW_WORK_SYMBOL_in_transaction_statement6386);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        WORK_SYMBOL1130_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WORK_SYMBOL1130));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, WORK_SYMBOL1130_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1418:3: ( ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )? | TO_SYMBOL ( SAVEPOINT_SYMBOL )? identifier )
        	        {
        	            int alt403=2;
        	            switch ( LA(1) )
        	            {
        	            case EOF:
        	            case NO_SYMBOL:
        	            case AND_SYMBOL:
        	            case RELEASE_SYMBOL:
        	            case SEMICOLON_SYMBOL:
        	            	{
        	            		alt403=1;
        	            	}
        	                break;
        	            case TO_SYMBOL:
        	            	{
        	            		alt403=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 403;
        	                EXCEPTION->state        = 0;


        	                goto ruletransaction_statementEx;

        	            }

        	            switch (alt403)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1419:4: ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )? ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	        	    {
        	        	        // MySQL.g:1419:4: ( AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL )?
        	        	        {
        	        	            int alt399=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case AND_SYMBOL:
        	        	                	{
        	        	                		alt399=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt399)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1419:5: AND_SYMBOL ( NO_SYMBOL )? CHAIN_SYMBOL
        	        	        	    {
        	        	        	        AND_SYMBOL1131 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_transaction_statement6397);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        AND_SYMBOL1131_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1131));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1131_tree);
        	        	        	        }

        	        	        	        // MySQL.g:1419:16: ( NO_SYMBOL )?
        	        	        	        {
        	        	        	            int alt398=2;
        	        	        	            switch ( LA(1) )
        	        	        	            {
        	        	        	                case NO_SYMBOL:
        	        	        	                	{
        	        	        	                		alt398=1;
        	        	        	                	}
        	        	        	                    break;
        	        	        	            }

        	        	        	            switch (alt398)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:1419:16: NO_SYMBOL
        	        	        	        	    {
        	        	        	        	        NO_SYMBOL1132 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement6399);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto ruletransaction_statementEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        	        NO_SYMBOL1132_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1132));
        	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1132_tree);
        	        	        	        	        }

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	            }
        	        	        	        }

        	        	        	        CHAIN_SYMBOL1133 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAIN_SYMBOL, &FOLLOW_CHAIN_SYMBOL_in_transaction_statement6402);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        CHAIN_SYMBOL1133_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAIN_SYMBOL1133));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAIN_SYMBOL1133_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:1419:42: ( ( NO_SYMBOL )? RELEASE_SYMBOL )?
        	        	        {
        	        	            int alt401=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case NO_SYMBOL:
        	        	                case RELEASE_SYMBOL:
        	        	                	{
        	        	                		alt401=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt401)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1419:43: ( NO_SYMBOL )? RELEASE_SYMBOL
        	        	        	    {
        	        	        	        // MySQL.g:1419:43: ( NO_SYMBOL )?
        	        	        	        {
        	        	        	            int alt400=2;
        	        	        	            switch ( LA(1) )
        	        	        	            {
        	        	        	                case NO_SYMBOL:
        	        	        	                	{
        	        	        	                		alt400=1;
        	        	        	                	}
        	        	        	                    break;
        	        	        	            }

        	        	        	            switch (alt400)
        	        	        	            {
        	        	        	        	case 1:
        	        	        	        	    // MySQL.g:1419:43: NO_SYMBOL
        	        	        	        	    {
        	        	        	        	        NO_SYMBOL1134 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_transaction_statement6407);
        	        	        	        	        if  (HASEXCEPTION())
        	        	        	        	        {
        	        	        	        	            goto ruletransaction_statementEx;
        	        	        	        	        }
        	        	        	        	        if (HASFAILED())
        	        	        	        	        {
        	        	        	        	            return retval;
        	        	        	        	        }

        	        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        	        NO_SYMBOL1134_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL1134));
        	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL1134_tree);
        	        	        	        	        }

        	        	        	        	    }
        	        	        	        	    break;

        	        	        	            }
        	        	        	        }

        	        	        	        RELEASE_SYMBOL1135 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_transaction_statement6410);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        RELEASE_SYMBOL1135_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1135));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, RELEASE_SYMBOL1135_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1420:6: TO_SYMBOL ( SAVEPOINT_SYMBOL )? identifier
        	        	    {
        	        	        TO_SYMBOL1136 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_transaction_statement6419);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TO_SYMBOL1136_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1136));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1136_tree);
        	        	        }

        	        	        // MySQL.g:1420:16: ( SAVEPOINT_SYMBOL )?
        	        	        {
        	        	            int alt402=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case SAVEPOINT_SYMBOL:
        	        	                	{
        	        	                		{
        	        	                		    int LA402_1 = LA(2);
        	        	                		    if ( (((LA402_1 >= ACCOUNT_SYMBOL) && (LA402_1 <= YEAR_SYMBOL)) || LA402_1 == BACK_TICK_QUOTED_ID || LA402_1 == DOUBLE_QUOTED_TEXT || LA402_1 == IDENTIFIER))
        	        	                		    {
        	        	                		        alt402=1;
        	        	                		    }
        	        	                		}
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt402)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1420:16: SAVEPOINT_SYMBOL
        	        	        	    {
        	        	        	        SAVEPOINT_SYMBOL1137 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_transaction_statement6421);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruletransaction_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        SAVEPOINT_SYMBOL1137_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1137));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SAVEPOINT_SYMBOL1137_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_transaction_statement6424);
        	        	        identifier1138=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletransaction_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1138.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:1427: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_SYMBOL1139;
    pANTLR3_COMMON_TOKEN    CONSISTENT_SYMBOL1140;
    pANTLR3_COMMON_TOKEN    SNAPSHOT_SYMBOL1141;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1142;
    pANTLR3_COMMON_TOKEN    set1143;

    pANTLR3_BASE_TREE WITH_SYMBOL1139_tree;
    pANTLR3_BASE_TREE CONSISTENT_SYMBOL1140_tree;
    pANTLR3_BASE_TREE SNAPSHOT_SYMBOL1141_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1142_tree;
    pANTLR3_BASE_TREE set1143_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL1139       = NULL;
    CONSISTENT_SYMBOL1140       = NULL;
    SNAPSHOT_SYMBOL1141       = NULL;
    READ_SYMBOL1142       = NULL;
    set1143       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL1139_tree   = NULL;
    CONSISTENT_SYMBOL1140_tree   = NULL;
    SNAPSHOT_SYMBOL1141_tree   = NULL;
    READ_SYMBOL1142_tree   = NULL;
    set1143_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1427:27: ( WITH_SYMBOL CONSISTENT_SYMBOL SNAPSHOT_SYMBOL |{...}? READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL ) )

            ANTLR3_UINT32 alt405;

            alt405=2;

            switch ( LA(1) )
            {
            case WITH_SYMBOL:
            	{
            		alt405=1;
            	}
                break;
            case READ_SYMBOL:
            	{
            		alt405=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 405;
                EXCEPTION->state        = 0;


                goto ruletransaction_characteristicEx;

            }

            switch (alt405)
            {
        	case 1:
        	    // MySQL.g:1428:2: WITH_SYMBOL CONSISTENT_SYMBOL SNAPSHOT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL1139 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_transaction_characteristic6444);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL1139_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1139));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1139_tree);
        	        }

        	        CONSISTENT_SYMBOL1140 = (pANTLR3_COMMON_TOKEN) MATCHT(CONSISTENT_SYMBOL, &FOLLOW_CONSISTENT_SYMBOL_in_transaction_characteristic6446);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONSISTENT_SYMBOL1140_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONSISTENT_SYMBOL1140));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONSISTENT_SYMBOL1140_tree);
        	        }

        	        SNAPSHOT_SYMBOL1141 = (pANTLR3_COMMON_TOKEN) MATCHT(SNAPSHOT_SYMBOL, &FOLLOW_SNAPSHOT_SYMBOL_in_transaction_characteristic6448);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SNAPSHOT_SYMBOL1141_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SNAPSHOT_SYMBOL1141));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SNAPSHOT_SYMBOL1141_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1429: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_SYMBOL1142 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_transaction_characteristic6455);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletransaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1142_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1142));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1142_tree);
        	        }

        	        set1143=(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, set1143))
        	            );
        	            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:1432: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_SYMBOL1144;
    pANTLR3_COMMON_TOKEN    LEVEL_SYMBOL1145;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1147;
    pANTLR3_COMMON_TOKEN    set1148;
    MySQLParser_isolation_level_return isolation_level1146;
    #undef	RETURN_TYPE_isolation_level1146
    #define	RETURN_TYPE_isolation_level1146 MySQLParser_isolation_level_return

    pANTLR3_BASE_TREE ISOLATION_SYMBOL1144_tree;
    pANTLR3_BASE_TREE LEVEL_SYMBOL1145_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1147_tree;
    pANTLR3_BASE_TREE set1148_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ISOLATION_SYMBOL1144       = NULL;
    LEVEL_SYMBOL1145       = NULL;
    READ_SYMBOL1147       = NULL;
    set1148       = NULL;
    isolation_level1146.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ISOLATION_SYMBOL1144_tree   = NULL;
    LEVEL_SYMBOL1145_tree   = NULL;
    READ_SYMBOL1147_tree   = NULL;
    set1148_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1432:31: ( ISOLATION_SYMBOL LEVEL_SYMBOL isolation_level |{...}? READ_SYMBOL ( WRITE_SYMBOL | ONLY_SYMBOL ) )

            ANTLR3_UINT32 alt406;

            alt406=2;

            switch ( LA(1) )
            {
            case ISOLATION_SYMBOL:
            	{
            		alt406=1;
            	}
                break;
            case READ_SYMBOL:
            	{
            		alt406=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 406;
                EXCEPTION->state        = 0;


                goto ruleset_transaction_characteristicEx;

            }

            switch (alt406)
            {
        	case 1:
        	    // MySQL.g:1433:2: ISOLATION_SYMBOL LEVEL_SYMBOL isolation_level
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ISOLATION_SYMBOL1144 = (pANTLR3_COMMON_TOKEN) MATCHT(ISOLATION_SYMBOL, &FOLLOW_ISOLATION_SYMBOL_in_set_transaction_characteristic6472);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ISOLATION_SYMBOL1144_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ISOLATION_SYMBOL1144));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ISOLATION_SYMBOL1144_tree);
        	        }

        	        LEVEL_SYMBOL1145 = (pANTLR3_COMMON_TOKEN) MATCHT(LEVEL_SYMBOL, &FOLLOW_LEVEL_SYMBOL_in_set_transaction_characteristic6474);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LEVEL_SYMBOL1145_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEVEL_SYMBOL1145));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LEVEL_SYMBOL1145_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_isolation_level_in_set_transaction_characteristic6476);
        	        isolation_level1146=isolation_level(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, isolation_level1146.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1434: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_SYMBOL1147 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_set_transaction_characteristic6483);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_transaction_characteristicEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1147_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1147));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1147_tree);
        	        }

        	        set1148=(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, set1148))
        	            );
        	            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:1437: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_SYMBOL1149;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1150;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1151;
    pANTLR3_COMMON_TOKEN    set1152;
    pANTLR3_COMMON_TOKEN    SERIALIZABLE_SYMBOL1153;

    pANTLR3_BASE_TREE REPEATABLE_SYMBOL1149_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1150_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1151_tree;
    pANTLR3_BASE_TREE set1152_tree;
    pANTLR3_BASE_TREE SERIALIZABLE_SYMBOL1153_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPEATABLE_SYMBOL1149       = NULL;
    READ_SYMBOL1150       = NULL;
    READ_SYMBOL1151       = NULL;
    set1152       = NULL;
    SERIALIZABLE_SYMBOL1153       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPEATABLE_SYMBOL1149_tree   = NULL;
    READ_SYMBOL1150_tree   = NULL;
    READ_SYMBOL1151_tree   = NULL;
    set1152_tree   = NULL;
    SERIALIZABLE_SYMBOL1153_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1437:16: ( REPEATABLE_SYMBOL READ_SYMBOL | READ_SYMBOL ( COMMITTED_SYMBOL | UNCOMMITTED_SYMBOL ) | SERIALIZABLE_SYMBOL )

            ANTLR3_UINT32 alt407;

            alt407=3;

            switch ( LA(1) )
            {
            case REPEATABLE_SYMBOL:
            	{
            		alt407=1;
            	}
                break;
            case READ_SYMBOL:
            	{
            		alt407=2;
            	}
                break;
            case SERIALIZABLE_SYMBOL:
            	{
            		alt407=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 407;
                EXCEPTION->state        = 0;


                goto ruleisolation_levelEx;

            }

            switch (alt407)
            {
        	case 1:
        	    // MySQL.g:1438:2: REPEATABLE_SYMBOL READ_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPEATABLE_SYMBOL1149 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEATABLE_SYMBOL, &FOLLOW_REPEATABLE_SYMBOL_in_isolation_level6500);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPEATABLE_SYMBOL1149_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEATABLE_SYMBOL1149));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPEATABLE_SYMBOL1149_tree);
        	        }

        	        READ_SYMBOL1150 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_isolation_level6502);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1150_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1150));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1150_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1439:4: READ_SYMBOL ( COMMITTED_SYMBOL | UNCOMMITTED_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READ_SYMBOL1151 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_isolation_level6507);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1151_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1151));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1151_tree);
        	        }

        	        set1152=(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, set1152))
        	            );
        	            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:1440:4: SERIALIZABLE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SERIALIZABLE_SYMBOL1153 = (pANTLR3_COMMON_TOKEN) MATCHT(SERIALIZABLE_SYMBOL, &FOLLOW_SERIALIZABLE_SYMBOL_in_isolation_level6520);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleisolation_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SERIALIZABLE_SYMBOL1153_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERIALIZABLE_SYMBOL1153));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SERIALIZABLE_SYMBOL1153_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:1443:1: savepoint_statement : ( SAVEPOINT_SYMBOL ^ identifier | RELEASE_SYMBOL ^ SAVEPOINT_SYMBOL identifier );
 */
static MySQLParser_savepoint_statement_return
savepoint_statement(pMySQLParser ctx)
{
    MySQLParser_savepoint_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SAVEPOINT_SYMBOL1154;
    pANTLR3_COMMON_TOKEN    RELEASE_SYMBOL1156;
    pANTLR3_COMMON_TOKEN    SAVEPOINT_SYMBOL1157;
    MySQLParser_identifier_return identifier1155;
    #undef	RETURN_TYPE_identifier1155
    #define	RETURN_TYPE_identifier1155 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier1158;
    #undef	RETURN_TYPE_identifier1158
    #define	RETURN_TYPE_identifier1158 MySQLParser_identifier_return

    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1154_tree;
    pANTLR3_BASE_TREE RELEASE_SYMBOL1156_tree;
    pANTLR3_BASE_TREE SAVEPOINT_SYMBOL1157_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SAVEPOINT_SYMBOL1154       = NULL;
    RELEASE_SYMBOL1156       = NULL;
    SAVEPOINT_SYMBOL1157       = NULL;
    identifier1155.tree = NULL;

    identifier1158.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SAVEPOINT_SYMBOL1154_tree   = NULL;
    RELEASE_SYMBOL1156_tree   = NULL;
    SAVEPOINT_SYMBOL1157_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1443:20: ( SAVEPOINT_SYMBOL ^ identifier | RELEASE_SYMBOL ^ SAVEPOINT_SYMBOL identifier )

            ANTLR3_UINT32 alt408;

            alt408=2;

            switch ( LA(1) )
            {
            case SAVEPOINT_SYMBOL:
            	{
            		alt408=1;
            	}
                break;
            case RELEASE_SYMBOL:
            	{
            		alt408=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 408;
                EXCEPTION->state        = 0;


                goto rulesavepoint_statementEx;

            }

            switch (alt408)
            {
        	case 1:
        	    // MySQL.g:1444:2: SAVEPOINT_SYMBOL ^ identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SAVEPOINT_SYMBOL1154 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6529);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SAVEPOINT_SYMBOL1154_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1154))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SAVEPOINT_SYMBOL1154_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_savepoint_statement6532);
        	        identifier1155=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1155.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1445:4: RELEASE_SYMBOL ^ SAVEPOINT_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELEASE_SYMBOL1156 = (pANTLR3_COMMON_TOKEN) MATCHT(RELEASE_SYMBOL, &FOLLOW_RELEASE_SYMBOL_in_savepoint_statement6537);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELEASE_SYMBOL1156_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELEASE_SYMBOL1156))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RELEASE_SYMBOL1156_tree, root_0));
        	        }

        	        SAVEPOINT_SYMBOL1157 = (pANTLR3_COMMON_TOKEN) MATCHT(SAVEPOINT_SYMBOL, &FOLLOW_SAVEPOINT_SYMBOL_in_savepoint_statement6540);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SAVEPOINT_SYMBOL1157_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SAVEPOINT_SYMBOL1157));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SAVEPOINT_SYMBOL1157_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_savepoint_statement6542);
        	        identifier1158=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesavepoint_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1158.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:1448: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_SYMBOL1159;
    pANTLR3_COMMON_TOKEN    set1160;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1162;
    pANTLR3_COMMON_TOKEN    UNLOCK_SYMBOL1164;
    pANTLR3_COMMON_TOKEN    set1165;
    MySQLParser_lock_item_return lock_item1161;
    #undef	RETURN_TYPE_lock_item1161
    #define	RETURN_TYPE_lock_item1161 MySQLParser_lock_item_return

    MySQLParser_lock_item_return lock_item1163;
    #undef	RETURN_TYPE_lock_item1163
    #define	RETURN_TYPE_lock_item1163 MySQLParser_lock_item_return

    pANTLR3_BASE_TREE LOCK_SYMBOL1159_tree;
    pANTLR3_BASE_TREE set1160_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1162_tree;
    pANTLR3_BASE_TREE UNLOCK_SYMBOL1164_tree;
    pANTLR3_BASE_TREE set1165_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOCK_SYMBOL1159       = NULL;
    set1160       = NULL;
    COMMA_SYMBOL1162       = NULL;
    UNLOCK_SYMBOL1164       = NULL;
    set1165       = NULL;
    lock_item1161.tree = NULL;

    lock_item1163.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOCK_SYMBOL1159_tree   = NULL;
    set1160_tree   = NULL;
    COMMA_SYMBOL1162_tree   = NULL;
    UNLOCK_SYMBOL1164_tree   = NULL;
    set1165_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1448:15: ( LOCK_SYMBOL ^ ( TABLES_SYMBOL | TABLE_SYMBOL ) lock_item ( COMMA_SYMBOL lock_item )* | UNLOCK_SYMBOL ^ ( TABLES_SYMBOL | TABLE_SYMBOL ) )

            ANTLR3_UINT32 alt410;

            alt410=2;

            switch ( LA(1) )
            {
            case LOCK_SYMBOL:
            	{
            		alt410=1;
            	}
                break;
            case UNLOCK_SYMBOL:
            	{
            		alt410=2;
            	}
                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 rulelock_statementEx;

            }

            switch (alt410)
            {
        	case 1:
        	    // MySQL.g:1449:2: LOCK_SYMBOL ^ ( TABLES_SYMBOL | TABLE_SYMBOL ) lock_item ( COMMA_SYMBOL lock_item )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL1159 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_lock_statement6551);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1159_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1159))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOCK_SYMBOL1159_tree, root_0));
        	        }

        	        set1160=(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, set1160))
        	            );
        	            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_statement6562);
        	        lock_item1161=lock_item(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_item1161.tree);

        	        // MySQL.g:1449:56: ( COMMA_SYMBOL lock_item )*

        	        for (;;)
        	        {
        	            int alt409=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt409=1;
        	            	}
        	                break;

        	            }

        	            switch (alt409)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1449:57: COMMA_SYMBOL lock_item
        	        	    {
        	        	        COMMA_SYMBOL1162 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_lock_statement6565);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1162_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1162));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1162_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_lock_item_in_lock_statement6567);
        	        	        lock_item1163=lock_item(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_item1163.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop409;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop409: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1450:4: UNLOCK_SYMBOL ^ ( TABLES_SYMBOL | TABLE_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNLOCK_SYMBOL1164 = (pANTLR3_COMMON_TOKEN) MATCHT(UNLOCK_SYMBOL, &FOLLOW_UNLOCK_SYMBOL_in_lock_statement6574);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNLOCK_SYMBOL1164_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNLOCK_SYMBOL1164))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNLOCK_SYMBOL1164_tree, root_0));
        	        }

        	        set1165=(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, set1165))
        	            );
        	            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:1453:1: lock_item : table_ref ( table_alias )? lock_option ;
 */
static MySQLParser_lock_item_return
lock_item(pMySQLParser ctx)
{
    MySQLParser_lock_item_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_table_ref_return table_ref1166;
    #undef	RETURN_TYPE_table_ref1166
    #define	RETURN_TYPE_table_ref1166 MySQLParser_table_ref_return

    MySQLParser_table_alias_return table_alias1167;
    #undef	RETURN_TYPE_table_alias1167
    #define	RETURN_TYPE_table_alias1167 MySQLParser_table_alias_return

    MySQLParser_lock_option_return lock_option1168;
    #undef	RETURN_TYPE_lock_option1168
    #define	RETURN_TYPE_lock_option1168 MySQLParser_lock_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    table_ref1166.tree = NULL;

    table_alias1167.tree = NULL;

    lock_option1168.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1453:10: ( table_ref ( table_alias )? lock_option )
        // MySQL.g:1454:2: table_ref ( table_alias )? lock_option
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_ref_in_lock_item6592);
            table_ref1166=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelock_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1166.tree);

            // MySQL.g:1454:12: ( table_alias )?
            {
                int alt411=2;
                {
                    int LA411_0 = LA(1);
                    if ( (((LA411_0 >= ACCOUNT_SYMBOL) && (LA411_0 <= YEAR_SYMBOL)) || LA411_0 == AS_SYMBOL || LA411_0 == BACK_TICK_QUOTED_ID || LA411_0 == DOUBLE_QUOTED_TEXT || LA411_0 == EQUAL_OPERATOR || LA411_0 == IDENTIFIER))
                    {
                        alt411=1;
                    }
                }
                switch (alt411)
                {
            	case 1:
            	    // MySQL.g:1454:12: table_alias
            	    {
            	        FOLLOWPUSH(FOLLOW_table_alias_in_lock_item6594);
            	        table_alias1167=table_alias(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelock_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_alias1167.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_lock_option_in_lock_item6597);
            lock_option1168=lock_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelock_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, lock_option1168.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_option
 * MySQL.g:1457:1: lock_option : ( READ_SYMBOL ( LOCAL_SYMBOL )? | ( LOW_PRIORITY_SYMBOL )? WRITE_SYMBOL );
 */
static MySQLParser_lock_option_return
lock_option(pMySQLParser ctx)
{
    MySQLParser_lock_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    READ_SYMBOL1169;
    pANTLR3_COMMON_TOKEN    LOCAL_SYMBOL1170;
    pANTLR3_COMMON_TOKEN    LOW_PRIORITY_SYMBOL1171;
    pANTLR3_COMMON_TOKEN    WRITE_SYMBOL1172;

    pANTLR3_BASE_TREE READ_SYMBOL1169_tree;
    pANTLR3_BASE_TREE LOCAL_SYMBOL1170_tree;
    pANTLR3_BASE_TREE LOW_PRIORITY_SYMBOL1171_tree;
    pANTLR3_BASE_TREE WRITE_SYMBOL1172_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    READ_SYMBOL1169       = NULL;
    LOCAL_SYMBOL1170       = NULL;
    LOW_PRIORITY_SYMBOL1171       = NULL;
    WRITE_SYMBOL1172       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    READ_SYMBOL1169_tree   = NULL;
    LOCAL_SYMBOL1170_tree   = NULL;
    LOW_PRIORITY_SYMBOL1171_tree   = NULL;
    WRITE_SYMBOL1172_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1457:12: ( READ_SYMBOL ( LOCAL_SYMBOL )? | ( LOW_PRIORITY_SYMBOL )? WRITE_SYMBOL )

            ANTLR3_UINT32 alt414;

            alt414=2;

            switch ( LA(1) )
            {
            case READ_SYMBOL:
            	{
            		alt414=1;
            	}
                break;
            case LOW_PRIORITY_SYMBOL:
            case WRITE_SYMBOL:
            	{
            		alt414=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 414;
                EXCEPTION->state        = 0;


                goto rulelock_optionEx;

            }

            switch (alt414)
            {
        	case 1:
        	    // MySQL.g:1458:2: READ_SYMBOL ( LOCAL_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        READ_SYMBOL1169 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_lock_option6606);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1169_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1169));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1169_tree);
        	        }

        	        // MySQL.g:1458:14: ( LOCAL_SYMBOL )?
        	        {
        	            int alt412=2;
        	            switch ( LA(1) )
        	            {
        	                case LOCAL_SYMBOL:
        	                	{
        	                		alt412=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt412)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1458:14: LOCAL_SYMBOL
        	        	    {
        	        	        LOCAL_SYMBOL1170 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_lock_option6608);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        LOCAL_SYMBOL1170_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL1170));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL1170_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1459:4: ( LOW_PRIORITY_SYMBOL )? WRITE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1459:4: ( LOW_PRIORITY_SYMBOL )?
        	        {
        	            int alt413=2;
        	            switch ( LA(1) )
        	            {
        	                case LOW_PRIORITY_SYMBOL:
        	                	{
        	                		alt413=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt413)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1459:4: LOW_PRIORITY_SYMBOL
        	        	    {
        	        	        LOW_PRIORITY_SYMBOL1171 = (pANTLR3_COMMON_TOKEN) MATCHT(LOW_PRIORITY_SYMBOL, &FOLLOW_LOW_PRIORITY_SYMBOL_in_lock_option6614);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulelock_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        LOW_PRIORITY_SYMBOL1171_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOW_PRIORITY_SYMBOL1171));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, LOW_PRIORITY_SYMBOL1171_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        WRITE_SYMBOL1172 = (pANTLR3_COMMON_TOKEN) MATCHT(WRITE_SYMBOL, &FOLLOW_WRITE_SYMBOL_in_lock_option6617);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelock_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WRITE_SYMBOL1172_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WRITE_SYMBOL1172));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WRITE_SYMBOL1172_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulelock_optionEx; /* Prevent compiler warnings */
    rulelock_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 lock_option */

/**
 * $ANTLR start xa_statement
 * MySQL.g:1462: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 xa_convert ) ;
 */
static MySQLParser_xa_statement_return
xa_statement(pMySQLParser ctx)
{
    MySQLParser_xa_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    XA_SYMBOL1173;
    pANTLR3_COMMON_TOKEN    set1174;
    pANTLR3_COMMON_TOKEN    set1176;
    pANTLR3_COMMON_TOKEN    END_SYMBOL1177;
    pANTLR3_COMMON_TOKEN    SUSPEND_SYMBOL1179;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1180;
    pANTLR3_COMMON_TOKEN    MIGRATE_SYMBOL1181;
    pANTLR3_COMMON_TOKEN    PREPARE_SYMBOL1182;
    pANTLR3_COMMON_TOKEN    COMMIT_SYMBOL1184;
    pANTLR3_COMMON_TOKEN    ONE_SYMBOL1186;
    pANTLR3_COMMON_TOKEN    PHASE_SYMBOL1187;
    pANTLR3_COMMON_TOKEN    ROLLBACK_SYMBOL1188;
    pANTLR3_COMMON_TOKEN    RECOVER_SYMBOL1190;
    MySQLParser_xid_return xid1175;
    #undef	RETURN_TYPE_xid1175
    #define	RETURN_TYPE_xid1175 MySQLParser_xid_return

    MySQLParser_xid_return xid1178;
    #undef	RETURN_TYPE_xid1178
    #define	RETURN_TYPE_xid1178 MySQLParser_xid_return

    MySQLParser_xid_return xid1183;
    #undef	RETURN_TYPE_xid1183
    #define	RETURN_TYPE_xid1183 MySQLParser_xid_return

    MySQLParser_xid_return xid1185;
    #undef	RETURN_TYPE_xid1185
    #define	RETURN_TYPE_xid1185 MySQLParser_xid_return

    MySQLParser_xid_return xid1189;
    #undef	RETURN_TYPE_xid1189
    #define	RETURN_TYPE_xid1189 MySQLParser_xid_return

    MySQLParser_xa_convert_return xa_convert1191;
    #undef	RETURN_TYPE_xa_convert1191
    #define	RETURN_TYPE_xa_convert1191 MySQLParser_xa_convert_return

    pANTLR3_BASE_TREE XA_SYMBOL1173_tree;
    pANTLR3_BASE_TREE set1174_tree;
    pANTLR3_BASE_TREE set1176_tree;
    pANTLR3_BASE_TREE END_SYMBOL1177_tree;
    pANTLR3_BASE_TREE SUSPEND_SYMBOL1179_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1180_tree;
    pANTLR3_BASE_TREE MIGRATE_SYMBOL1181_tree;
    pANTLR3_BASE_TREE PREPARE_SYMBOL1182_tree;
    pANTLR3_BASE_TREE COMMIT_SYMBOL1184_tree;
    pANTLR3_BASE_TREE ONE_SYMBOL1186_tree;
    pANTLR3_BASE_TREE PHASE_SYMBOL1187_tree;
    pANTLR3_BASE_TREE ROLLBACK_SYMBOL1188_tree;
    pANTLR3_BASE_TREE RECOVER_SYMBOL1190_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    XA_SYMBOL1173       = NULL;
    set1174       = NULL;
    set1176       = NULL;
    END_SYMBOL1177       = NULL;
    SUSPEND_SYMBOL1179       = NULL;
    FOR_SYMBOL1180       = NULL;
    MIGRATE_SYMBOL1181       = NULL;
    PREPARE_SYMBOL1182       = NULL;
    COMMIT_SYMBOL1184       = NULL;
    ONE_SYMBOL1186       = NULL;
    PHASE_SYMBOL1187       = NULL;
    ROLLBACK_SYMBOL1188       = NULL;
    RECOVER_SYMBOL1190       = NULL;
    xid1175.tree = NULL;

    xid1178.tree = NULL;

    xid1183.tree = NULL;

    xid1185.tree = NULL;

    xid1189.tree = NULL;

    xa_convert1191.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    XA_SYMBOL1173_tree   = NULL;
    set1174_tree   = NULL;
    set1176_tree   = NULL;
    END_SYMBOL1177_tree   = NULL;
    SUSPEND_SYMBOL1179_tree   = NULL;
    FOR_SYMBOL1180_tree   = NULL;
    MIGRATE_SYMBOL1181_tree   = NULL;
    PREPARE_SYMBOL1182_tree   = NULL;
    COMMIT_SYMBOL1184_tree   = NULL;
    ONE_SYMBOL1186_tree   = NULL;
    PHASE_SYMBOL1187_tree   = NULL;
    ROLLBACK_SYMBOL1188_tree   = NULL;
    RECOVER_SYMBOL1190_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1462: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 xa_convert ) )
        // MySQL.g:1463: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 xa_convert )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            XA_SYMBOL1173 = (pANTLR3_COMMON_TOKEN) MATCHT(XA_SYMBOL, &FOLLOW_XA_SYMBOL_in_xa_statement6627);
            if  (HASEXCEPTION())
            {
                goto rulexa_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            XA_SYMBOL1173_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XA_SYMBOL1173))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, XA_SYMBOL1173_tree, root_0));
            }

            // MySQL.g:1464: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 xa_convert )
            {
                int alt419=6;
                switch ( LA(1) )
                {
                case BEGIN_SYMBOL:
                case START_SYMBOL:
                	{
                		alt419=1;
                	}
                    break;
                case END_SYMBOL:
                	{
                		alt419=2;
                	}
                    break;
                case PREPARE_SYMBOL:
                	{
                		alt419=3;
                	}
                    break;
                case COMMIT_SYMBOL:
                	{
                		alt419=4;
                	}
                    break;
                case ROLLBACK_SYMBOL:
                	{
                		alt419=5;
                	}
                    break;
                case RECOVER_SYMBOL:
                	{
                		alt419=6;
                	}
                    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 rulexa_statementEx;

                }

                switch (alt419)
                {
            	case 1:
            	    // MySQL.g:1465:4: ( START_SYMBOL | BEGIN_SYMBOL ) xid ( JOIN_SYMBOL | RESUME_SYMBOL )?
            	    {
            	        set1174=(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, set1174))
            	            );
            	            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_statement6645);
            	        xid1175=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1175.tree);

            	        // MySQL.g:1465:38: ( JOIN_SYMBOL | RESUME_SYMBOL )?
            	        {
            	            int alt415=2;
            	            switch ( LA(1) )
            	            {
            	                case RESUME_SYMBOL:
            	                case JOIN_SYMBOL:
            	                	{
            	                		alt415=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt415)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set1176=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == RESUME_SYMBOL || LA(1) == JOIN_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1176))
            	        	            );
            	        	            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:1466:6: END_SYMBOL xid ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )?
            	    {
            	        END_SYMBOL1177 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_xa_statement6661);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        END_SYMBOL1177_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL1177));
            	        ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL1177_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement6663);
            	        xid1178=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1178.tree);

            	        // MySQL.g:1466:21: ( SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )? )?
            	        {
            	            int alt417=2;
            	            switch ( LA(1) )
            	            {
            	                case SUSPEND_SYMBOL:
            	                	{
            	                		alt417=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt417)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1466:22: SUSPEND_SYMBOL ( FOR_SYMBOL MIGRATE_SYMBOL )?
            	        	    {
            	        	        SUSPEND_SYMBOL1179 = (pANTLR3_COMMON_TOKEN) MATCHT(SUSPEND_SYMBOL, &FOLLOW_SUSPEND_SYMBOL_in_xa_statement6666);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        SUSPEND_SYMBOL1179_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUSPEND_SYMBOL1179));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, SUSPEND_SYMBOL1179_tree);
            	        	        }

            	        	        // MySQL.g:1466:37: ( FOR_SYMBOL MIGRATE_SYMBOL )?
            	        	        {
            	        	            int alt416=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case FOR_SYMBOL:
            	        	                	{
            	        	                		alt416=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt416)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1466:38: FOR_SYMBOL MIGRATE_SYMBOL
            	        	        	    {
            	        	        	        FOR_SYMBOL1180 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_xa_statement6669);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulexa_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        FOR_SYMBOL1180_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1180));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1180_tree);
            	        	        	        }

            	        	        	        MIGRATE_SYMBOL1181 = (pANTLR3_COMMON_TOKEN) MATCHT(MIGRATE_SYMBOL, &FOLLOW_MIGRATE_SYMBOL_in_xa_statement6671);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulexa_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        MIGRATE_SYMBOL1181_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIGRATE_SYMBOL1181));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MIGRATE_SYMBOL1181_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1467:6: PREPARE_SYMBOL xid
            	    {
            	        PREPARE_SYMBOL1182 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_xa_statement6682);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PREPARE_SYMBOL1182_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1182));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PREPARE_SYMBOL1182_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement6684);
            	        xid1183=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1183.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1468:6: COMMIT_SYMBOL xid ( ONE_SYMBOL PHASE_SYMBOL )?
            	    {
            	        COMMIT_SYMBOL1184 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMIT_SYMBOL, &FOLLOW_COMMIT_SYMBOL_in_xa_statement6691);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMIT_SYMBOL1184_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMIT_SYMBOL1184));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMIT_SYMBOL1184_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement6693);
            	        xid1185=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1185.tree);

            	        // MySQL.g:1468:24: ( ONE_SYMBOL PHASE_SYMBOL )?
            	        {
            	            int alt418=2;
            	            switch ( LA(1) )
            	            {
            	                case ONE_SYMBOL:
            	                	{
            	                		alt418=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt418)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1468:25: ONE_SYMBOL PHASE_SYMBOL
            	        	    {
            	        	        ONE_SYMBOL1186 = (pANTLR3_COMMON_TOKEN) MATCHT(ONE_SYMBOL, &FOLLOW_ONE_SYMBOL_in_xa_statement6696);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ONE_SYMBOL1186_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ONE_SYMBOL1186));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ONE_SYMBOL1186_tree);
            	        	        }

            	        	        PHASE_SYMBOL1187 = (pANTLR3_COMMON_TOKEN) MATCHT(PHASE_SYMBOL, &FOLLOW_PHASE_SYMBOL_in_xa_statement6698);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexa_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PHASE_SYMBOL1187_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PHASE_SYMBOL1187));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PHASE_SYMBOL1187_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:1469:6: ROLLBACK_SYMBOL xid
            	    {
            	        ROLLBACK_SYMBOL1188 = (pANTLR3_COMMON_TOKEN) MATCHT(ROLLBACK_SYMBOL, &FOLLOW_ROLLBACK_SYMBOL_in_xa_statement6707);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ROLLBACK_SYMBOL1188_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROLLBACK_SYMBOL1188));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ROLLBACK_SYMBOL1188_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xid_in_xa_statement6709);
            	        xid1189=xid(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xid1189.tree);

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:1470:6: RECOVER_SYMBOL xa_convert
            	    {
            	        RECOVER_SYMBOL1190 = (pANTLR3_COMMON_TOKEN) MATCHT(RECOVER_SYMBOL, &FOLLOW_RECOVER_SYMBOL_in_xa_statement6716);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        RECOVER_SYMBOL1190_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RECOVER_SYMBOL1190));
            	        ADAPTOR->addChild(ADAPTOR, root_0, RECOVER_SYMBOL1190_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_xa_convert_in_xa_statement6718);
            	        xa_convert1191=xa_convert(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexa_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, xa_convert1191.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 xa_convert
 * MySQL.g:1474:1: xa_convert : ({...}? ( CONVERT_SYMBOL XID_SYMBOL )? |);
 */
static MySQLParser_xa_convert_return
xa_convert(pMySQLParser ctx)
{
    MySQLParser_xa_convert_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CONVERT_SYMBOL1192;
    pANTLR3_COMMON_TOKEN    XID_SYMBOL1193;

    pANTLR3_BASE_TREE CONVERT_SYMBOL1192_tree;
    pANTLR3_BASE_TREE XID_SYMBOL1193_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONVERT_SYMBOL1192       = NULL;
    XID_SYMBOL1193       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONVERT_SYMBOL1192_tree   = NULL;
    XID_SYMBOL1193_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1474:11: ({...}? ( CONVERT_SYMBOL XID_SYMBOL )? |)

            ANTLR3_UINT32 alt421;

            alt421=2;

            switch ( LA(1) )
            {
            case CONVERT_SYMBOL:
            	{
            		alt421=1;
            	}
                break;
            case SEMICOLON_SYMBOL:
            	{
            		{
            		    int LA421_2 = LA(2);
            		    if ( ((SERVER_VERSION >= 50704)))
            		    {
            		        alt421=1;
            		    }
            		    else if ( (ANTLR3_TRUE))
            		    {
            		        alt421=2;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 421;
            		        EXCEPTION->state        = 2;


            		        goto rulexa_convertEx;

            		    }
            		}
            	}
                break;
            case EOF:
            	{
            		{
            		    int LA421_3 = LA(2);
            		    if ( ((SERVER_VERSION >= 50704)))
            		    {
            		        alt421=1;
            		    }
            		    else if ( (ANTLR3_TRUE))
            		    {
            		        alt421=2;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 421;
            		        EXCEPTION->state        = 3;


            		        goto rulexa_convertEx;

            		    }
            		}
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 421;
                EXCEPTION->state        = 0;


                goto rulexa_convertEx;

            }

            switch (alt421)
            {
        	case 1:
        	    // MySQL.g:1475:2: {...}? ( CONVERT_SYMBOL XID_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50704)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50704";
        	                EXCEPTION->ruleName	 = (void *)"xa_convert";


        	        }

        	        // MySQL.g:1475:29: ( CONVERT_SYMBOL XID_SYMBOL )?
        	        {
        	            int alt420=2;
        	            switch ( LA(1) )
        	            {
        	                case CONVERT_SYMBOL:
        	                	{
        	                		alt420=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt420)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1475:30: CONVERT_SYMBOL XID_SYMBOL
        	        	    {
        	        	        CONVERT_SYMBOL1192 = (pANTLR3_COMMON_TOKEN) MATCHT(CONVERT_SYMBOL, &FOLLOW_CONVERT_SYMBOL_in_xa_convert6734);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulexa_convertEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        CONVERT_SYMBOL1192_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONVERT_SYMBOL1192));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CONVERT_SYMBOL1192_tree);
        	        	        }

        	        	        XID_SYMBOL1193 = (pANTLR3_COMMON_TOKEN) MATCHT(XID_SYMBOL, &FOLLOW_XID_SYMBOL_in_xa_convert6736);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulexa_convertEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        XID_SYMBOL1193_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XID_SYMBOL1193));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, XID_SYMBOL1193_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1477:2: 
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulexa_convertEx; /* Prevent compiler warnings */
    rulexa_convertEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_convert */

/**
 * $ANTLR start xid
 * MySQL.g:1479:1: xid : text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )? -> ^( XA_ID_TOKEN text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )? ) ;
 */
static MySQLParser_xid_return
xid(pMySQLParser ctx)
{
    MySQLParser_xid_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1195;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1197;
    MySQLParser_text_string_return text_string1194;
    #undef	RETURN_TYPE_text_string1194
    #define	RETURN_TYPE_text_string1194 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1196;
    #undef	RETURN_TYPE_text_string1196
    #define	RETURN_TYPE_text_string1196 MySQLParser_text_string_return

    MySQLParser_ulong_number_return ulong_number1198;
    #undef	RETURN_TYPE_ulong_number1198
    #define	RETURN_TYPE_ulong_number1198 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1195_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1197_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_ulong_number;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_string;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1195       = NULL;
    COMMA_SYMBOL1197       = NULL;
    text_string1194.tree = NULL;

    text_string1196.tree = NULL;

    ulong_number1198.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1195_tree   = NULL;
    COMMA_SYMBOL1197_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_ulong_number   = NULL;
    #define CREATE_stream_ulong_number  if (stream_ulong_number == NULL) {stream_ulong_number = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule ulong_number"); }
    stream_text_string   = NULL;
    #define CREATE_stream_text_string  if (stream_text_string == NULL) {stream_text_string = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule text_string"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1479:4: ( text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )? -> ^( XA_ID_TOKEN text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )? ) )
        // MySQL.g:1480:2: text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )?
        {
            FOLLOWPUSH(FOLLOW_text_string_in_xid6752);
            text_string1194=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulexidEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_text_string; stream_text_string->add(stream_text_string, text_string1194.tree, NULL); }

            // MySQL.g:1480:14: ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )?
            {
                int alt423=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    	{
                    		alt423=1;
                    	}
                        break;
                }

                switch (alt423)
                {
            	case 1:
            	    // MySQL.g:1480:15: COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )?
            	    {
            	        COMMA_SYMBOL1195 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_xid6755);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexidEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1195, NULL); }


            	        FOLLOWPUSH(FOLLOW_text_string_in_xid6757);
            	        text_string1196=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulexidEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_text_string; stream_text_string->add(stream_text_string, text_string1196.tree, NULL); }

            	        // MySQL.g:1480:40: ( COMMA_SYMBOL ulong_number )?
            	        {
            	            int alt422=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt422=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt422)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1480:41: COMMA_SYMBOL ulong_number
            	        	    {
            	        	        COMMA_SYMBOL1197 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_xid6760);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexidEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }
            	        	         
            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1197, NULL); }


            	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_xid6762);
            	        	        ulong_number1198=ulong_number(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulexidEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) { CREATE_stream_ulong_number; stream_ulong_number->add(stream_ulong_number, ulong_number1198.tree, NULL); }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            /* AST REWRITE
             * elements          : COMMA_SYMBOL, text_string, ulong_number, COMMA_SYMBOL, text_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;
            	// 1481:3: -> ^( XA_ID_TOKEN text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )? )
            	{
            	    // MySQL.g:1481:6: ^( XA_ID_TOKEN text_string ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )? )
            	    {
            	        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_TOKEN, (pANTLR3_UINT8)"XA_ID_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_text_string == NULL ? NULL : stream_text_string->nextTree(stream_text_string));

            	        // MySQL.g:1481:32: ( COMMA_SYMBOL text_string ( COMMA_SYMBOL ulong_number )? )?
            	        {
            	        	if ( (stream_COMMA_SYMBOL != NULL && stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL)) || (stream_text_string != NULL && stream_text_string->hasNext(stream_text_string)) || (stream_ulong_number != NULL && stream_ulong_number->hasNext(stream_ulong_number)) || (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_text_string == NULL ? NULL : stream_text_string->nextTree(stream_text_string));

            	        		// MySQL.g:1481:58: ( COMMA_SYMBOL ulong_number )?
            	        		{
            	        			if ( (stream_ulong_number != NULL && stream_ulong_number->hasNext(stream_ulong_number)) || (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_ulong_number == NULL ? NULL : stream_ulong_number->nextTree(stream_ulong_number));

            	        			}
            	        			if ( stream_ulong_number != NULL) stream_ulong_number->reset(stream_ulong_number);
            	        			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_text_string != NULL) stream_text_string->reset(stream_text_string);
            	        	if ( stream_ulong_number != NULL) stream_ulong_number->reset(stream_ulong_number);
            	        	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 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_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_ulong_number != NULL) stream_ulong_number->free(stream_ulong_number);
        if (stream_text_string != NULL) stream_text_string->free(stream_text_string);
    }


            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:1486:1: replication_statement : ( PURGE_SYMBOL ^ ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL ( TO_SYMBOL string_literal | BEFORE_SYMBOL expression ) | change_master |{...}? change_replication | slave |{...}? replication_load |{...}? group_replication );
 */
static MySQLParser_replication_statement_return
replication_statement(pMySQLParser ctx)
{
    MySQLParser_replication_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PURGE_SYMBOL1199;
    pANTLR3_COMMON_TOKEN    set1200;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1201;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1202;
    pANTLR3_COMMON_TOKEN    BEFORE_SYMBOL1204;
    MySQLParser_string_literal_return string_literal1203;
    #undef	RETURN_TYPE_string_literal1203
    #define	RETURN_TYPE_string_literal1203 MySQLParser_string_literal_return

    MySQLParser_expression_return expression1205;
    #undef	RETURN_TYPE_expression1205
    #define	RETURN_TYPE_expression1205 MySQLParser_expression_return

    MySQLParser_change_master_return change_master1206;
    #undef	RETURN_TYPE_change_master1206
    #define	RETURN_TYPE_change_master1206 MySQLParser_change_master_return

    MySQLParser_change_replication_return change_replication1207;
    #undef	RETURN_TYPE_change_replication1207
    #define	RETURN_TYPE_change_replication1207 MySQLParser_change_replication_return

    MySQLParser_slave_return slave1208;
    #undef	RETURN_TYPE_slave1208
    #define	RETURN_TYPE_slave1208 MySQLParser_slave_return

    MySQLParser_replication_load_return replication_load1209;
    #undef	RETURN_TYPE_replication_load1209
    #define	RETURN_TYPE_replication_load1209 MySQLParser_replication_load_return

    MySQLParser_group_replication_return group_replication1210;
    #undef	RETURN_TYPE_group_replication1210
    #define	RETURN_TYPE_group_replication1210 MySQLParser_group_replication_return

    pANTLR3_BASE_TREE PURGE_SYMBOL1199_tree;
    pANTLR3_BASE_TREE set1200_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1201_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1202_tree;
    pANTLR3_BASE_TREE BEFORE_SYMBOL1204_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PURGE_SYMBOL1199       = NULL;
    set1200       = NULL;
    LOGS_SYMBOL1201       = NULL;
    TO_SYMBOL1202       = NULL;
    BEFORE_SYMBOL1204       = NULL;
    string_literal1203.tree = NULL;

    expression1205.tree = NULL;

    change_master1206.tree = NULL;

    change_replication1207.tree = NULL;

    slave1208.tree = NULL;

    replication_load1209.tree = NULL;

    group_replication1210.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PURGE_SYMBOL1199_tree   = NULL;
    set1200_tree   = NULL;
    LOGS_SYMBOL1201_tree   = NULL;
    TO_SYMBOL1202_tree   = NULL;
    BEFORE_SYMBOL1204_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1486:22: ( PURGE_SYMBOL ^ ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL ( TO_SYMBOL string_literal | BEFORE_SYMBOL expression ) | change_master |{...}? change_replication | slave |{...}? replication_load |{...}? group_replication )

            ANTLR3_UINT32 alt425;

            alt425=6;

            switch ( LA(1) )
            {
            case PURGE_SYMBOL:
            	{
            		alt425=1;
            	}
                break;
            case CHANGE_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case MASTER_SYMBOL:
            			{
            				alt425=2;
            			}
            		    break;
            		case REPLICATION_SYMBOL:
            			{
            				alt425=3;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 425;
            		    EXCEPTION->state        = 2;


            		    goto rulereplication_statementEx;

            		}

            	}
                break;
            case START_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case SLAVE_SYMBOL:
            			{
            				alt425=4;
            			}
            		    break;
            		case GROUP_REPLICATION_SYMBOL:
            			{
            				alt425=6;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 425;
            		    EXCEPTION->state        = 3;


            		    goto rulereplication_statementEx;

            		}

            	}
                break;
            case STOP_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case SLAVE_SYMBOL:
            			{
            				alt425=4;
            			}
            		    break;
            		case GROUP_REPLICATION_SYMBOL:
            			{
            				alt425=6;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 425;
            		    EXCEPTION->state        = 4;


            		    goto rulereplication_statementEx;

            		}

            	}
                break;
            case LOAD_SYMBOL:
            	{
            		alt425=5;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 425;
                EXCEPTION->state        = 0;


                goto rulereplication_statementEx;

            }

            switch (alt425)
            {
        	case 1:
        	    // MySQL.g:1487: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_SYMBOL1199 = (pANTLR3_COMMON_TOKEN) MATCHT(PURGE_SYMBOL, &FOLLOW_PURGE_SYMBOL_in_replication_statement6801);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PURGE_SYMBOL1199_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PURGE_SYMBOL1199))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PURGE_SYMBOL1199_tree, root_0));
        	        }

        	        set1200=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == MASTER_SYMBOL || LA(1) == BINARY_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1200))
        	            );
        	            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_SYMBOL1201 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_replication_statement6812);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOGS_SYMBOL1201_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1201));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1201_tree);
        	        }

        	        // MySQL.g:1487:60: ( TO_SYMBOL string_literal | BEFORE_SYMBOL expression )
        	        {
        	            int alt424=2;
        	            switch ( LA(1) )
        	            {
        	            case TO_SYMBOL:
        	            	{
        	            		alt424=1;
        	            	}
        	                break;
        	            case BEFORE_SYMBOL:
        	            	{
        	            		alt424=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 424;
        	                EXCEPTION->state        = 0;


        	                goto rulereplication_statementEx;

        	            }

        	            switch (alt424)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1487:61: TO_SYMBOL string_literal
        	        	    {
        	        	        TO_SYMBOL1202 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_replication_statement6815);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TO_SYMBOL1202_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1202));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1202_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_string_literal_in_replication_statement6817);
        	        	        string_literal1203=string_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1203.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1487:88: BEFORE_SYMBOL expression
        	        	    {
        	        	        BEFORE_SYMBOL1204 = (pANTLR3_COMMON_TOKEN) MATCHT(BEFORE_SYMBOL, &FOLLOW_BEFORE_SYMBOL_in_replication_statement6821);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BEFORE_SYMBOL1204_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEFORE_SYMBOL1204));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BEFORE_SYMBOL1204_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_replication_statement6823);
        	        	        expression1205=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereplication_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1205.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1488:4: change_master
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_change_master_in_replication_statement6829);
        	        change_master1206=change_master(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, change_master1206.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1489:4: {...}? change_replication
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50700)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50700";
        	                EXCEPTION->ruleName	 = (void *)"replication_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_change_replication_in_replication_statement6836);
        	        change_replication1207=change_replication(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, change_replication1207.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1494:4: slave
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_slave_in_replication_statement6844);
        	        slave1208=slave(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave1208.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1495: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";


        	        }

        	        FOLLOWPUSH(FOLLOW_replication_load_in_replication_statement6851);
        	        replication_load1209=replication_load(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, replication_load1209.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1496:4: {...}? group_replication
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION > 50706)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION > 50706";
        	                EXCEPTION->ruleName	 = (void *)"replication_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_group_replication_in_replication_statement6858);
        	        group_replication1210=group_replication(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereplication_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, group_replication1210.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:1499:1: replication_load : LOAD_SYMBOL ^ ( DATA_SYMBOL | TABLE_SYMBOL table_ref ) 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_SYMBOL1211;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL1212;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1213;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1215;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1216;
    MySQLParser_table_ref_return table_ref1214;
    #undef	RETURN_TYPE_table_ref1214
    #define	RETURN_TYPE_table_ref1214 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE LOAD_SYMBOL1211_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL1212_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1213_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1215_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1216_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOAD_SYMBOL1211       = NULL;
    DATA_SYMBOL1212       = NULL;
    TABLE_SYMBOL1213       = NULL;
    FROM_SYMBOL1215       = NULL;
    MASTER_SYMBOL1216       = NULL;
    table_ref1214.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOAD_SYMBOL1211_tree   = NULL;
    DATA_SYMBOL1212_tree   = NULL;
    TABLE_SYMBOL1213_tree   = NULL;
    FROM_SYMBOL1215_tree   = NULL;
    MASTER_SYMBOL1216_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1499:17: ( LOAD_SYMBOL ^ ( DATA_SYMBOL | TABLE_SYMBOL table_ref ) FROM_SYMBOL MASTER_SYMBOL )
        // MySQL.g:1500:2: LOAD_SYMBOL ^ ( DATA_SYMBOL | TABLE_SYMBOL table_ref ) FROM_SYMBOL MASTER_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOAD_SYMBOL1211 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_replication_load6867);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOAD_SYMBOL1211_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL1211))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOAD_SYMBOL1211_tree, root_0));
            }

            // MySQL.g:1500:15: ( DATA_SYMBOL | TABLE_SYMBOL table_ref )
            {
                int alt426=2;
                switch ( LA(1) )
                {
                case DATA_SYMBOL:
                	{
                		alt426=1;
                	}
                    break;
                case TABLE_SYMBOL:
                	{
                		alt426=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 426;
                    EXCEPTION->state        = 0;


                    goto rulereplication_loadEx;

                }

                switch (alt426)
                {
            	case 1:
            	    // MySQL.g:1500:16: DATA_SYMBOL
            	    {
            	        DATA_SYMBOL1212 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_replication_load6871);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATA_SYMBOL1212_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL1212));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL1212_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1500:30: TABLE_SYMBOL table_ref
            	    {
            	        TABLE_SYMBOL1213 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_replication_load6875);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL1213_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1213));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1213_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_replication_load6877);
            	        table_ref1214=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereplication_loadEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1214.tree);

            	    }
            	    break;

                }
            }

            FROM_SYMBOL1215 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_replication_load6880);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FROM_SYMBOL1215_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1215));
            ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1215_tree);
            }

            MASTER_SYMBOL1216 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_replication_load6882);
            if  (HASEXCEPTION())
            {
                goto rulereplication_loadEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MASTER_SYMBOL1216_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1216));
            ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1216_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:1503:1: change_master : CHANGE_SYMBOL ^ MASTER_SYMBOL TO_SYMBOL change_master_options ( channel )? ;
 */
static MySQLParser_change_master_return
change_master(pMySQLParser ctx)
{
    MySQLParser_change_master_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHANGE_SYMBOL1217;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1218;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1219;
    MySQLParser_change_master_options_return change_master_options1220;
    #undef	RETURN_TYPE_change_master_options1220
    #define	RETURN_TYPE_change_master_options1220 MySQLParser_change_master_options_return

    MySQLParser_channel_return channel1221;
    #undef	RETURN_TYPE_channel1221
    #define	RETURN_TYPE_channel1221 MySQLParser_channel_return

    pANTLR3_BASE_TREE CHANGE_SYMBOL1217_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1218_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1219_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHANGE_SYMBOL1217       = NULL;
    MASTER_SYMBOL1218       = NULL;
    TO_SYMBOL1219       = NULL;
    change_master_options1220.tree = NULL;

    channel1221.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHANGE_SYMBOL1217_tree   = NULL;
    MASTER_SYMBOL1218_tree   = NULL;
    TO_SYMBOL1219_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1503:14: ( CHANGE_SYMBOL ^ MASTER_SYMBOL TO_SYMBOL change_master_options ( channel )? )
        // MySQL.g:1504:2: CHANGE_SYMBOL ^ MASTER_SYMBOL TO_SYMBOL change_master_options ( channel )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CHANGE_SYMBOL1217 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_change_master6891);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CHANGE_SYMBOL1217_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGE_SYMBOL1217))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CHANGE_SYMBOL1217_tree, root_0));
            }

            MASTER_SYMBOL1218 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_change_master6894);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MASTER_SYMBOL1218_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1218));
            ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1218_tree);
            }

            TO_SYMBOL1219 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_change_master6896);
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1219_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1219));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1219_tree);
            }

            FOLLOWPUSH(FOLLOW_change_master_options_in_change_master6898);
            change_master_options1220=change_master_options(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulechange_masterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, change_master_options1220.tree);

            // MySQL.g:1504:63: ( channel )?
            {
                int alt427=2;
                {
                    int LA427_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50706)) && (LA427_0 == FOR_SYMBOL))
                    {
                        alt427=1;
                    }
                }
                switch (alt427)
                {
            	case 1:
            	    // MySQL.g:1504:63: channel
            	    {
            	        FOLLOWPUSH(FOLLOW_channel_in_change_master6900);
            	        channel1221=channel(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_masterEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1221.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // 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 change_master_options
 * MySQL.g:1507:1: change_master_options : master_option ( COMMA_SYMBOL master_option )* -> ^( CHANGE_MASTER_OPTIONS_TOKEN master_option ( COMMA_SYMBOL master_option )* ) ;
 */
static MySQLParser_change_master_options_return
change_master_options(pMySQLParser ctx)
{
    MySQLParser_change_master_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1223;
    MySQLParser_master_option_return master_option1222;
    #undef	RETURN_TYPE_master_option1222
    #define	RETURN_TYPE_master_option1222 MySQLParser_master_option_return

    MySQLParser_master_option_return master_option1224;
    #undef	RETURN_TYPE_master_option1224
    #define	RETURN_TYPE_master_option1224 MySQLParser_master_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1223_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_master_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1223       = NULL;
    master_option1222.tree = NULL;

    master_option1224.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1223_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_master_option   = NULL;
    #define CREATE_stream_master_option  if (stream_master_option == NULL) {stream_master_option = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule master_option"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1507:22: ( master_option ( COMMA_SYMBOL master_option )* -> ^( CHANGE_MASTER_OPTIONS_TOKEN master_option ( COMMA_SYMBOL master_option )* ) )
        // MySQL.g:1508:2: master_option ( COMMA_SYMBOL master_option )*
        {
            FOLLOWPUSH(FOLLOW_master_option_in_change_master_options6910);
            master_option1222=master_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulechange_master_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_master_option; stream_master_option->add(stream_master_option, master_option1222.tree, NULL); }

            // MySQL.g:1508:16: ( COMMA_SYMBOL master_option )*

            for (;;)
            {
                int alt428=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt428=1;
                	}
                    break;

                }

                switch (alt428)
                {
            	case 1:
            	    // MySQL.g:1508:17: COMMA_SYMBOL master_option
            	    {
            	        COMMA_SYMBOL1223 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_change_master_options6913);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_master_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1223, NULL); }


            	        FOLLOWPUSH(FOLLOW_master_option_in_change_master_options6915);
            	        master_option1224=master_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_master_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_master_option; stream_master_option->add(stream_master_option, master_option1224.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop428;	/* break out of the loop */
            	    break;
                }
            }
            loop428: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : master_option, master_option, 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;
            	// 1508:46: -> ^( CHANGE_MASTER_OPTIONS_TOKEN master_option ( COMMA_SYMBOL master_option )* )
            	{
            	    // MySQL.g:1508:49: ^( CHANGE_MASTER_OPTIONS_TOKEN master_option ( COMMA_SYMBOL master_option )* )
            	    {
            	        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, CHANGE_MASTER_OPTIONS_TOKEN, (pANTLR3_UINT8)"CHANGE_MASTER_OPTIONS_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_master_option == NULL ? NULL : stream_master_option->nextTree(stream_master_option));

            	        // MySQL.g:1508:93: ( COMMA_SYMBOL master_option )*
            	        {
            	        	while ( (stream_master_option != NULL && stream_master_option->hasNext(stream_master_option)) || (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_master_option == NULL ? NULL : stream_master_option->nextTree(stream_master_option));

            	        	}
            	        	if (stream_master_option != NULL) stream_master_option->reset(stream_master_option);
            	        	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 rulechange_master_optionsEx; /* Prevent compiler warnings */
    rulechange_master_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 (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_master_option != NULL) stream_master_option->free(stream_master_option);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end change_master_options */

/**
 * $ANTLR start master_option
 * MySQL.g:1511:1: master_option : ( MASTER_HOST_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_BIND_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_USER_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_PASSWORD_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_PORT_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_CONNECT_RETRY_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_RETRY_COUNT_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_DELAY_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_SSL_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_SSL_CA_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_CAPATH_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_CERT_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_CIPHER_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_KEY_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_SSL_CRL_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CRLPATH_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_HEARTBEAT_PERIOD_SYMBOL EQUAL_OPERATOR ulong_number | IGNORE_SERVER_IDS_SYMBOL EQUAL_OPERATOR server_id_list | MASTER_AUTO_POSITION_SYMBOL EQUAL_OPERATOR ulong_number | master_file_def );
 */
static MySQLParser_master_option_return
master_option(pMySQLParser ctx)
{
    MySQLParser_master_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MASTER_HOST_SYMBOL1225;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1226;
    pANTLR3_COMMON_TOKEN    MASTER_BIND_SYMBOL1228;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1229;
    pANTLR3_COMMON_TOKEN    MASTER_USER_SYMBOL1231;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1232;
    pANTLR3_COMMON_TOKEN    MASTER_PASSWORD_SYMBOL1234;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1235;
    pANTLR3_COMMON_TOKEN    MASTER_PORT_SYMBOL1237;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1238;
    pANTLR3_COMMON_TOKEN    MASTER_CONNECT_RETRY_SYMBOL1240;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1241;
    pANTLR3_COMMON_TOKEN    MASTER_RETRY_COUNT_SYMBOL1243;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1244;
    pANTLR3_COMMON_TOKEN    MASTER_DELAY_SYMBOL1246;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1247;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_SYMBOL1249;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1250;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CA_SYMBOL1252;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1253;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CAPATH_SYMBOL1255;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1256;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CERT_SYMBOL1258;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1259;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CIPHER_SYMBOL1261;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1262;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_KEY_SYMBOL1264;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1265;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1267;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1268;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CRL_SYMBOL1270;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1271;
    pANTLR3_COMMON_TOKEN    MASTER_SSL_CRLPATH_SYMBOL1273;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1274;
    pANTLR3_COMMON_TOKEN    MASTER_HEARTBEAT_PERIOD_SYMBOL1276;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1277;
    pANTLR3_COMMON_TOKEN    IGNORE_SERVER_IDS_SYMBOL1279;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1280;
    pANTLR3_COMMON_TOKEN    MASTER_AUTO_POSITION_SYMBOL1282;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1283;
    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1227;
    #undef	RETURN_TYPE_text_string_no_linebreak1227
    #define	RETURN_TYPE_text_string_no_linebreak1227 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1230;
    #undef	RETURN_TYPE_text_string_no_linebreak1230
    #define	RETURN_TYPE_text_string_no_linebreak1230 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1233;
    #undef	RETURN_TYPE_text_string_no_linebreak1233
    #define	RETURN_TYPE_text_string_no_linebreak1233 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1236;
    #undef	RETURN_TYPE_text_string_no_linebreak1236
    #define	RETURN_TYPE_text_string_no_linebreak1236 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulong_number_return ulong_number1239;
    #undef	RETURN_TYPE_ulong_number1239
    #define	RETURN_TYPE_ulong_number1239 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1242;
    #undef	RETURN_TYPE_ulong_number1242
    #define	RETURN_TYPE_ulong_number1242 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1245;
    #undef	RETURN_TYPE_ulong_number1245
    #define	RETURN_TYPE_ulong_number1245 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1248;
    #undef	RETURN_TYPE_ulong_number1248
    #define	RETURN_TYPE_ulong_number1248 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1251;
    #undef	RETURN_TYPE_ulong_number1251
    #define	RETURN_TYPE_ulong_number1251 MySQLParser_ulong_number_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1254;
    #undef	RETURN_TYPE_text_string_no_linebreak1254
    #define	RETURN_TYPE_text_string_no_linebreak1254 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1257;
    #undef	RETURN_TYPE_text_string_no_linebreak1257
    #define	RETURN_TYPE_text_string_no_linebreak1257 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1260;
    #undef	RETURN_TYPE_text_string_no_linebreak1260
    #define	RETURN_TYPE_text_string_no_linebreak1260 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1263;
    #undef	RETURN_TYPE_text_string_no_linebreak1263
    #define	RETURN_TYPE_text_string_no_linebreak1263 MySQLParser_text_string_no_linebreak_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1266;
    #undef	RETURN_TYPE_text_string_no_linebreak1266
    #define	RETURN_TYPE_text_string_no_linebreak1266 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulong_number_return ulong_number1269;
    #undef	RETURN_TYPE_ulong_number1269
    #define	RETURN_TYPE_ulong_number1269 MySQLParser_ulong_number_return

    MySQLParser_string_literal_return string_literal1272;
    #undef	RETURN_TYPE_string_literal1272
    #define	RETURN_TYPE_string_literal1272 MySQLParser_string_literal_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1275;
    #undef	RETURN_TYPE_text_string_no_linebreak1275
    #define	RETURN_TYPE_text_string_no_linebreak1275 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulong_number_return ulong_number1278;
    #undef	RETURN_TYPE_ulong_number1278
    #define	RETURN_TYPE_ulong_number1278 MySQLParser_ulong_number_return

    MySQLParser_server_id_list_return server_id_list1281;
    #undef	RETURN_TYPE_server_id_list1281
    #define	RETURN_TYPE_server_id_list1281 MySQLParser_server_id_list_return

    MySQLParser_ulong_number_return ulong_number1284;
    #undef	RETURN_TYPE_ulong_number1284
    #define	RETURN_TYPE_ulong_number1284 MySQLParser_ulong_number_return

    MySQLParser_master_file_def_return master_file_def1285;
    #undef	RETURN_TYPE_master_file_def1285
    #define	RETURN_TYPE_master_file_def1285 MySQLParser_master_file_def_return

    pANTLR3_BASE_TREE MASTER_HOST_SYMBOL1225_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1226_tree;
    pANTLR3_BASE_TREE MASTER_BIND_SYMBOL1228_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1229_tree;
    pANTLR3_BASE_TREE MASTER_USER_SYMBOL1231_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1232_tree;
    pANTLR3_BASE_TREE MASTER_PASSWORD_SYMBOL1234_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1235_tree;
    pANTLR3_BASE_TREE MASTER_PORT_SYMBOL1237_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1238_tree;
    pANTLR3_BASE_TREE MASTER_CONNECT_RETRY_SYMBOL1240_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1241_tree;
    pANTLR3_BASE_TREE MASTER_RETRY_COUNT_SYMBOL1243_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1244_tree;
    pANTLR3_BASE_TREE MASTER_DELAY_SYMBOL1246_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1247_tree;
    pANTLR3_BASE_TREE MASTER_SSL_SYMBOL1249_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1250_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CA_SYMBOL1252_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1253_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CAPATH_SYMBOL1255_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1256_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CERT_SYMBOL1258_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1259_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CIPHER_SYMBOL1261_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1262_tree;
    pANTLR3_BASE_TREE MASTER_SSL_KEY_SYMBOL1264_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1265_tree;
    pANTLR3_BASE_TREE MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1267_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1268_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CRL_SYMBOL1270_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1271_tree;
    pANTLR3_BASE_TREE MASTER_SSL_CRLPATH_SYMBOL1273_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1274_tree;
    pANTLR3_BASE_TREE MASTER_HEARTBEAT_PERIOD_SYMBOL1276_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1277_tree;
    pANTLR3_BASE_TREE IGNORE_SERVER_IDS_SYMBOL1279_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1280_tree;
    pANTLR3_BASE_TREE MASTER_AUTO_POSITION_SYMBOL1282_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1283_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MASTER_HOST_SYMBOL1225       = NULL;
    EQUAL_OPERATOR1226       = NULL;
    MASTER_BIND_SYMBOL1228       = NULL;
    EQUAL_OPERATOR1229       = NULL;
    MASTER_USER_SYMBOL1231       = NULL;
    EQUAL_OPERATOR1232       = NULL;
    MASTER_PASSWORD_SYMBOL1234       = NULL;
    EQUAL_OPERATOR1235       = NULL;
    MASTER_PORT_SYMBOL1237       = NULL;
    EQUAL_OPERATOR1238       = NULL;
    MASTER_CONNECT_RETRY_SYMBOL1240       = NULL;
    EQUAL_OPERATOR1241       = NULL;
    MASTER_RETRY_COUNT_SYMBOL1243       = NULL;
    EQUAL_OPERATOR1244       = NULL;
    MASTER_DELAY_SYMBOL1246       = NULL;
    EQUAL_OPERATOR1247       = NULL;
    MASTER_SSL_SYMBOL1249       = NULL;
    EQUAL_OPERATOR1250       = NULL;
    MASTER_SSL_CA_SYMBOL1252       = NULL;
    EQUAL_OPERATOR1253       = NULL;
    MASTER_SSL_CAPATH_SYMBOL1255       = NULL;
    EQUAL_OPERATOR1256       = NULL;
    MASTER_SSL_CERT_SYMBOL1258       = NULL;
    EQUAL_OPERATOR1259       = NULL;
    MASTER_SSL_CIPHER_SYMBOL1261       = NULL;
    EQUAL_OPERATOR1262       = NULL;
    MASTER_SSL_KEY_SYMBOL1264       = NULL;
    EQUAL_OPERATOR1265       = NULL;
    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1267       = NULL;
    EQUAL_OPERATOR1268       = NULL;
    MASTER_SSL_CRL_SYMBOL1270       = NULL;
    EQUAL_OPERATOR1271       = NULL;
    MASTER_SSL_CRLPATH_SYMBOL1273       = NULL;
    EQUAL_OPERATOR1274       = NULL;
    MASTER_HEARTBEAT_PERIOD_SYMBOL1276       = NULL;
    EQUAL_OPERATOR1277       = NULL;
    IGNORE_SERVER_IDS_SYMBOL1279       = NULL;
    EQUAL_OPERATOR1280       = NULL;
    MASTER_AUTO_POSITION_SYMBOL1282       = NULL;
    EQUAL_OPERATOR1283       = NULL;
    text_string_no_linebreak1227.tree = NULL;

    text_string_no_linebreak1230.tree = NULL;

    text_string_no_linebreak1233.tree = NULL;

    text_string_no_linebreak1236.tree = NULL;

    ulong_number1239.tree = NULL;

    ulong_number1242.tree = NULL;

    ulong_number1245.tree = NULL;

    ulong_number1248.tree = NULL;

    ulong_number1251.tree = NULL;

    text_string_no_linebreak1254.tree = NULL;

    text_string_no_linebreak1257.tree = NULL;

    text_string_no_linebreak1260.tree = NULL;

    text_string_no_linebreak1263.tree = NULL;

    text_string_no_linebreak1266.tree = NULL;

    ulong_number1269.tree = NULL;

    string_literal1272.tree = NULL;

    text_string_no_linebreak1275.tree = NULL;

    ulong_number1278.tree = NULL;

    server_id_list1281.tree = NULL;

    ulong_number1284.tree = NULL;

    master_file_def1285.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MASTER_HOST_SYMBOL1225_tree   = NULL;
    EQUAL_OPERATOR1226_tree   = NULL;
    MASTER_BIND_SYMBOL1228_tree   = NULL;
    EQUAL_OPERATOR1229_tree   = NULL;
    MASTER_USER_SYMBOL1231_tree   = NULL;
    EQUAL_OPERATOR1232_tree   = NULL;
    MASTER_PASSWORD_SYMBOL1234_tree   = NULL;
    EQUAL_OPERATOR1235_tree   = NULL;
    MASTER_PORT_SYMBOL1237_tree   = NULL;
    EQUAL_OPERATOR1238_tree   = NULL;
    MASTER_CONNECT_RETRY_SYMBOL1240_tree   = NULL;
    EQUAL_OPERATOR1241_tree   = NULL;
    MASTER_RETRY_COUNT_SYMBOL1243_tree   = NULL;
    EQUAL_OPERATOR1244_tree   = NULL;
    MASTER_DELAY_SYMBOL1246_tree   = NULL;
    EQUAL_OPERATOR1247_tree   = NULL;
    MASTER_SSL_SYMBOL1249_tree   = NULL;
    EQUAL_OPERATOR1250_tree   = NULL;
    MASTER_SSL_CA_SYMBOL1252_tree   = NULL;
    EQUAL_OPERATOR1253_tree   = NULL;
    MASTER_SSL_CAPATH_SYMBOL1255_tree   = NULL;
    EQUAL_OPERATOR1256_tree   = NULL;
    MASTER_SSL_CERT_SYMBOL1258_tree   = NULL;
    EQUAL_OPERATOR1259_tree   = NULL;
    MASTER_SSL_CIPHER_SYMBOL1261_tree   = NULL;
    EQUAL_OPERATOR1262_tree   = NULL;
    MASTER_SSL_KEY_SYMBOL1264_tree   = NULL;
    EQUAL_OPERATOR1265_tree   = NULL;
    MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1267_tree   = NULL;
    EQUAL_OPERATOR1268_tree   = NULL;
    MASTER_SSL_CRL_SYMBOL1270_tree   = NULL;
    EQUAL_OPERATOR1271_tree   = NULL;
    MASTER_SSL_CRLPATH_SYMBOL1273_tree   = NULL;
    EQUAL_OPERATOR1274_tree   = NULL;
    MASTER_HEARTBEAT_PERIOD_SYMBOL1276_tree   = NULL;
    EQUAL_OPERATOR1277_tree   = NULL;
    IGNORE_SERVER_IDS_SYMBOL1279_tree   = NULL;
    EQUAL_OPERATOR1280_tree   = NULL;
    MASTER_AUTO_POSITION_SYMBOL1282_tree   = NULL;
    EQUAL_OPERATOR1283_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1511:14: ( MASTER_HOST_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_BIND_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_USER_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_PASSWORD_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_PORT_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_CONNECT_RETRY_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_RETRY_COUNT_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_DELAY_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_SSL_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_SSL_CA_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_CAPATH_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_CERT_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_CIPHER_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_KEY_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL EQUAL_OPERATOR ulong_number | MASTER_SSL_CRL_SYMBOL EQUAL_OPERATOR string_literal | MASTER_SSL_CRLPATH_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_HEARTBEAT_PERIOD_SYMBOL EQUAL_OPERATOR ulong_number | IGNORE_SERVER_IDS_SYMBOL EQUAL_OPERATOR server_id_list | MASTER_AUTO_POSITION_SYMBOL EQUAL_OPERATOR ulong_number | master_file_def )

            ANTLR3_UINT32 alt429;

            alt429=21;

            switch ( LA(1) )
            {
            case MASTER_HOST_SYMBOL:
            	{
            		alt429=1;
            	}
                break;
            case MASTER_BIND_SYMBOL:
            	{
            		alt429=2;
            	}
                break;
            case MASTER_USER_SYMBOL:
            	{
            		alt429=3;
            	}
                break;
            case MASTER_PASSWORD_SYMBOL:
            	{
            		alt429=4;
            	}
                break;
            case MASTER_PORT_SYMBOL:
            	{
            		alt429=5;
            	}
                break;
            case MASTER_CONNECT_RETRY_SYMBOL:
            	{
            		alt429=6;
            	}
                break;
            case MASTER_RETRY_COUNT_SYMBOL:
            	{
            		alt429=7;
            	}
                break;
            case MASTER_DELAY_SYMBOL:
            	{
            		alt429=8;
            	}
                break;
            case MASTER_SSL_SYMBOL:
            	{
            		alt429=9;
            	}
                break;
            case MASTER_SSL_CA_SYMBOL:
            	{
            		alt429=10;
            	}
                break;
            case MASTER_SSL_CAPATH_SYMBOL:
            	{
            		alt429=11;
            	}
                break;
            case MASTER_SSL_CERT_SYMBOL:
            	{
            		alt429=12;
            	}
                break;
            case MASTER_SSL_CIPHER_SYMBOL:
            	{
            		alt429=13;
            	}
                break;
            case MASTER_SSL_KEY_SYMBOL:
            	{
            		alt429=14;
            	}
                break;
            case MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL:
            	{
            		alt429=15;
            	}
                break;
            case MASTER_SSL_CRL_SYMBOL:
            	{
            		alt429=16;
            	}
                break;
            case MASTER_SSL_CRLPATH_SYMBOL:
            	{
            		alt429=17;
            	}
                break;
            case MASTER_HEARTBEAT_PERIOD_SYMBOL:
            	{
            		alt429=18;
            	}
                break;
            case IGNORE_SERVER_IDS_SYMBOL:
            	{
            		alt429=19;
            	}
                break;
            case MASTER_AUTO_POSITION_SYMBOL:
            	{
            		alt429=20;
            	}
                break;
            case MASTER_LOG_FILE_SYMBOL:
            case MASTER_LOG_POS_SYMBOL:
            case RELAY_LOG_FILE_SYMBOL:
            case RELAY_LOG_POS_SYMBOL:
            	{
            		alt429=21;
            	}
                break;

            default:
                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 rulemaster_optionEx;

            }

            switch (alt429)
            {
        	case 1:
        	    // MySQL.g:1512:2: MASTER_HOST_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_HOST_SYMBOL1225 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_HOST_SYMBOL, &FOLLOW_MASTER_HOST_SYMBOL_in_master_option6941);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_HOST_SYMBOL1225_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_HOST_SYMBOL1225));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_HOST_SYMBOL1225_tree);
        	        }

        	        EQUAL_OPERATOR1226 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6943);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1226_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1226));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1226_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option6945);
        	        text_string_no_linebreak1227=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1227.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1513:4: MASTER_BIND_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_BIND_SYMBOL1228 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_BIND_SYMBOL, &FOLLOW_MASTER_BIND_SYMBOL_in_master_option6950);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_BIND_SYMBOL1228_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_BIND_SYMBOL1228));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_BIND_SYMBOL1228_tree);
        	        }

        	        EQUAL_OPERATOR1229 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6952);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1229_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1229));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1229_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option6954);
        	        text_string_no_linebreak1230=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1230.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1514:4: MASTER_USER_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_USER_SYMBOL1231 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_USER_SYMBOL, &FOLLOW_MASTER_USER_SYMBOL_in_master_option6959);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_USER_SYMBOL1231_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_USER_SYMBOL1231));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_USER_SYMBOL1231_tree);
        	        }

        	        EQUAL_OPERATOR1232 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6961);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1232_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1232));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1232_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option6963);
        	        text_string_no_linebreak1233=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1233.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1515:4: MASTER_PASSWORD_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_PASSWORD_SYMBOL1234 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_PASSWORD_SYMBOL, &FOLLOW_MASTER_PASSWORD_SYMBOL_in_master_option6968);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_PASSWORD_SYMBOL1234_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_PASSWORD_SYMBOL1234));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_PASSWORD_SYMBOL1234_tree);
        	        }

        	        EQUAL_OPERATOR1235 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6970);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1235_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1235));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1235_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option6972);
        	        text_string_no_linebreak1236=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1236.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1516:4: MASTER_PORT_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_PORT_SYMBOL1237 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_PORT_SYMBOL, &FOLLOW_MASTER_PORT_SYMBOL_in_master_option6977);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_PORT_SYMBOL1237_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_PORT_SYMBOL1237));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_PORT_SYMBOL1237_tree);
        	        }

        	        EQUAL_OPERATOR1238 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6979);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1238_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1238));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1238_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option6981);
        	        ulong_number1239=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1239.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1517:4: MASTER_CONNECT_RETRY_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_CONNECT_RETRY_SYMBOL1240 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_CONNECT_RETRY_SYMBOL, &FOLLOW_MASTER_CONNECT_RETRY_SYMBOL_in_master_option6986);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_CONNECT_RETRY_SYMBOL1240_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_CONNECT_RETRY_SYMBOL1240));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_CONNECT_RETRY_SYMBOL1240_tree);
        	        }

        	        EQUAL_OPERATOR1241 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6988);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1241_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1241));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1241_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option6990);
        	        ulong_number1242=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1242.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1518:4: MASTER_RETRY_COUNT_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_RETRY_COUNT_SYMBOL1243 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_RETRY_COUNT_SYMBOL, &FOLLOW_MASTER_RETRY_COUNT_SYMBOL_in_master_option6995);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_RETRY_COUNT_SYMBOL1243_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_RETRY_COUNT_SYMBOL1243));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_RETRY_COUNT_SYMBOL1243_tree);
        	        }

        	        EQUAL_OPERATOR1244 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option6997);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1244_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1244));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1244_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option6999);
        	        ulong_number1245=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1245.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1519:4: MASTER_DELAY_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_DELAY_SYMBOL1246 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_DELAY_SYMBOL, &FOLLOW_MASTER_DELAY_SYMBOL_in_master_option7004);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_DELAY_SYMBOL1246_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_DELAY_SYMBOL1246));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_DELAY_SYMBOL1246_tree);
        	        }

        	        EQUAL_OPERATOR1247 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7006);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1247_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1247));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1247_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7008);
        	        ulong_number1248=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1248.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1520:4: MASTER_SSL_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_SYMBOL1249 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_SYMBOL, &FOLLOW_MASTER_SSL_SYMBOL_in_master_option7013);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_SYMBOL1249_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_SYMBOL1249));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_SYMBOL1249_tree);
        	        }

        	        EQUAL_OPERATOR1250 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7015);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1250_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1250));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1250_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7017);
        	        ulong_number1251=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1251.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1521:4: MASTER_SSL_CA_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CA_SYMBOL1252 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CA_SYMBOL, &FOLLOW_MASTER_SSL_CA_SYMBOL_in_master_option7022);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CA_SYMBOL1252_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CA_SYMBOL1252));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CA_SYMBOL1252_tree);
        	        }

        	        EQUAL_OPERATOR1253 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7024);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1253_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1253));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1253_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7026);
        	        text_string_no_linebreak1254=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1254.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1522:4: MASTER_SSL_CAPATH_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CAPATH_SYMBOL1255 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CAPATH_SYMBOL, &FOLLOW_MASTER_SSL_CAPATH_SYMBOL_in_master_option7031);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CAPATH_SYMBOL1255_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CAPATH_SYMBOL1255));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CAPATH_SYMBOL1255_tree);
        	        }

        	        EQUAL_OPERATOR1256 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7033);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1256_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1256));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1256_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7035);
        	        text_string_no_linebreak1257=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1257.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1523:4: MASTER_SSL_CERT_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CERT_SYMBOL1258 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CERT_SYMBOL, &FOLLOW_MASTER_SSL_CERT_SYMBOL_in_master_option7040);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CERT_SYMBOL1258_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CERT_SYMBOL1258));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CERT_SYMBOL1258_tree);
        	        }

        	        EQUAL_OPERATOR1259 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7042);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1259_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1259));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1259_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7044);
        	        text_string_no_linebreak1260=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1260.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1524:4: MASTER_SSL_CIPHER_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CIPHER_SYMBOL1261 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CIPHER_SYMBOL, &FOLLOW_MASTER_SSL_CIPHER_SYMBOL_in_master_option7049);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CIPHER_SYMBOL1261_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CIPHER_SYMBOL1261));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CIPHER_SYMBOL1261_tree);
        	        }

        	        EQUAL_OPERATOR1262 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7051);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1262_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1262));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1262_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7053);
        	        text_string_no_linebreak1263=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1263.tree);

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:1525:4: MASTER_SSL_KEY_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_KEY_SYMBOL1264 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_KEY_SYMBOL, &FOLLOW_MASTER_SSL_KEY_SYMBOL_in_master_option7058);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_KEY_SYMBOL1264_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_KEY_SYMBOL1264));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_KEY_SYMBOL1264_tree);
        	        }

        	        EQUAL_OPERATOR1265 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7060);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1265_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1265));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1265_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7062);
        	        text_string_no_linebreak1266=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1266.tree);

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:1526:4: MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1267 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL, &FOLLOW_MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL_in_master_option7067);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1267_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1267));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_VERIFY_SERVER_CERT_SYMBOL1267_tree);
        	        }

        	        EQUAL_OPERATOR1268 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7069);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1268_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1268));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1268_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7071);
        	        ulong_number1269=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1269.tree);

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:1527:4: MASTER_SSL_CRL_SYMBOL EQUAL_OPERATOR string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CRL_SYMBOL1270 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CRL_SYMBOL, &FOLLOW_MASTER_SSL_CRL_SYMBOL_in_master_option7076);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CRL_SYMBOL1270_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CRL_SYMBOL1270));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CRL_SYMBOL1270_tree);
        	        }

        	        EQUAL_OPERATOR1271 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7078);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1271_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1271));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1271_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_master_option7080);
        	        string_literal1272=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1272.tree);

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:1528:4: MASTER_SSL_CRLPATH_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SSL_CRLPATH_SYMBOL1273 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SSL_CRLPATH_SYMBOL, &FOLLOW_MASTER_SSL_CRLPATH_SYMBOL_in_master_option7085);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SSL_CRLPATH_SYMBOL1273_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SSL_CRLPATH_SYMBOL1273));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SSL_CRLPATH_SYMBOL1273_tree);
        	        }

        	        EQUAL_OPERATOR1274 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7087);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1274_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1274));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1274_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_option7089);
        	        text_string_no_linebreak1275=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1275.tree);

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:1529:4: MASTER_HEARTBEAT_PERIOD_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_HEARTBEAT_PERIOD_SYMBOL1276 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_HEARTBEAT_PERIOD_SYMBOL, &FOLLOW_MASTER_HEARTBEAT_PERIOD_SYMBOL_in_master_option7094);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_HEARTBEAT_PERIOD_SYMBOL1276_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_HEARTBEAT_PERIOD_SYMBOL1276));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_HEARTBEAT_PERIOD_SYMBOL1276_tree);
        	        }

        	        EQUAL_OPERATOR1277 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7096);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1277_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1277));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1277_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7098);
        	        ulong_number1278=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1278.tree);

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:1530:4: IGNORE_SERVER_IDS_SYMBOL EQUAL_OPERATOR server_id_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IGNORE_SERVER_IDS_SYMBOL1279 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SERVER_IDS_SYMBOL, &FOLLOW_IGNORE_SERVER_IDS_SYMBOL_in_master_option7103);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IGNORE_SERVER_IDS_SYMBOL1279_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SERVER_IDS_SYMBOL1279));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SERVER_IDS_SYMBOL1279_tree);
        	        }

        	        EQUAL_OPERATOR1280 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7105);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1280_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1280));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1280_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_server_id_list_in_master_option7107);
        	        server_id_list1281=server_id_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, server_id_list1281.tree);

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:1531:4: MASTER_AUTO_POSITION_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_AUTO_POSITION_SYMBOL1282 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_AUTO_POSITION_SYMBOL, &FOLLOW_MASTER_AUTO_POSITION_SYMBOL_in_master_option7112);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_AUTO_POSITION_SYMBOL1282_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_AUTO_POSITION_SYMBOL1282));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_AUTO_POSITION_SYMBOL1282_tree);
        	        }

        	        EQUAL_OPERATOR1283 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_option7114);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1283_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1283));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1283_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_option7116);
        	        ulong_number1284=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1284.tree);

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:1532:4: master_file_def
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_master_file_def_in_master_option7121);
        	        master_file_def1285=master_file_def(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, master_file_def1285.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 master_file_def
 * MySQL.g:1535:1: master_file_def : ( MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR ulonglong_number | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR ulong_number );
 */
static MySQLParser_master_file_def_return
master_file_def(pMySQLParser ctx)
{
    MySQLParser_master_file_def_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MASTER_LOG_FILE_SYMBOL1286;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1287;
    pANTLR3_COMMON_TOKEN    MASTER_LOG_POS_SYMBOL1289;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1290;
    pANTLR3_COMMON_TOKEN    RELAY_LOG_FILE_SYMBOL1292;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1293;
    pANTLR3_COMMON_TOKEN    RELAY_LOG_POS_SYMBOL1295;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1296;
    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1288;
    #undef	RETURN_TYPE_text_string_no_linebreak1288
    #define	RETURN_TYPE_text_string_no_linebreak1288 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulonglong_number_return ulonglong_number1291;
    #undef	RETURN_TYPE_ulonglong_number1291
    #define	RETURN_TYPE_ulonglong_number1291 MySQLParser_ulonglong_number_return

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1294;
    #undef	RETURN_TYPE_text_string_no_linebreak1294
    #define	RETURN_TYPE_text_string_no_linebreak1294 MySQLParser_text_string_no_linebreak_return

    MySQLParser_ulong_number_return ulong_number1297;
    #undef	RETURN_TYPE_ulong_number1297
    #define	RETURN_TYPE_ulong_number1297 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE MASTER_LOG_FILE_SYMBOL1286_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1287_tree;
    pANTLR3_BASE_TREE MASTER_LOG_POS_SYMBOL1289_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1290_tree;
    pANTLR3_BASE_TREE RELAY_LOG_FILE_SYMBOL1292_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1293_tree;
    pANTLR3_BASE_TREE RELAY_LOG_POS_SYMBOL1295_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1296_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MASTER_LOG_FILE_SYMBOL1286       = NULL;
    EQUAL_OPERATOR1287       = NULL;
    MASTER_LOG_POS_SYMBOL1289       = NULL;
    EQUAL_OPERATOR1290       = NULL;
    RELAY_LOG_FILE_SYMBOL1292       = NULL;
    EQUAL_OPERATOR1293       = NULL;
    RELAY_LOG_POS_SYMBOL1295       = NULL;
    EQUAL_OPERATOR1296       = NULL;
    text_string_no_linebreak1288.tree = NULL;

    ulonglong_number1291.tree = NULL;

    text_string_no_linebreak1294.tree = NULL;

    ulong_number1297.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MASTER_LOG_FILE_SYMBOL1286_tree   = NULL;
    EQUAL_OPERATOR1287_tree   = NULL;
    MASTER_LOG_POS_SYMBOL1289_tree   = NULL;
    EQUAL_OPERATOR1290_tree   = NULL;
    RELAY_LOG_FILE_SYMBOL1292_tree   = NULL;
    EQUAL_OPERATOR1293_tree   = NULL;
    RELAY_LOG_POS_SYMBOL1295_tree   = NULL;
    EQUAL_OPERATOR1296_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1535:16: ( MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR ulonglong_number | RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR text_string_no_linebreak | RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR ulong_number )

            ANTLR3_UINT32 alt430;

            alt430=4;

            switch ( LA(1) )
            {
            case MASTER_LOG_FILE_SYMBOL:
            	{
            		alt430=1;
            	}
                break;
            case MASTER_LOG_POS_SYMBOL:
            	{
            		alt430=2;
            	}
                break;
            case RELAY_LOG_FILE_SYMBOL:
            	{
            		alt430=3;
            	}
                break;
            case RELAY_LOG_POS_SYMBOL:
            	{
            		alt430=4;
            	}
                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 rulemaster_file_defEx;

            }

            switch (alt430)
            {
        	case 1:
        	    // MySQL.g:1536:2: MASTER_LOG_FILE_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_LOG_FILE_SYMBOL1286 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_LOG_FILE_SYMBOL, &FOLLOW_MASTER_LOG_FILE_SYMBOL_in_master_file_def7130);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_LOG_FILE_SYMBOL1286_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_LOG_FILE_SYMBOL1286));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_LOG_FILE_SYMBOL1286_tree);
        	        }

        	        EQUAL_OPERATOR1287 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_file_def7132);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1287_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1287));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1287_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_file_def7134);
        	        text_string_no_linebreak1288=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1288.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1537:4: MASTER_LOG_POS_SYMBOL EQUAL_OPERATOR ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_LOG_POS_SYMBOL1289 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_LOG_POS_SYMBOL, &FOLLOW_MASTER_LOG_POS_SYMBOL_in_master_file_def7139);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_LOG_POS_SYMBOL1289_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_LOG_POS_SYMBOL1289));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_LOG_POS_SYMBOL1289_tree);
        	        }

        	        EQUAL_OPERATOR1290 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_file_def7141);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1290_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1290));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1290_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_master_file_def7143);
        	        ulonglong_number1291=ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number1291.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1538:4: RELAY_LOG_FILE_SYMBOL EQUAL_OPERATOR text_string_no_linebreak
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELAY_LOG_FILE_SYMBOL1292 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_LOG_FILE_SYMBOL, &FOLLOW_RELAY_LOG_FILE_SYMBOL_in_master_file_def7148);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELAY_LOG_FILE_SYMBOL1292_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_LOG_FILE_SYMBOL1292));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_LOG_FILE_SYMBOL1292_tree);
        	        }

        	        EQUAL_OPERATOR1293 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_file_def7150);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1293));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1293_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_master_file_def7152);
        	        text_string_no_linebreak1294=text_string_no_linebreak(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1294.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1539:4: RELAY_LOG_POS_SYMBOL EQUAL_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELAY_LOG_POS_SYMBOL1295 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_LOG_POS_SYMBOL, &FOLLOW_RELAY_LOG_POS_SYMBOL_in_master_file_def7157);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELAY_LOG_POS_SYMBOL1295_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_LOG_POS_SYMBOL1295));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_LOG_POS_SYMBOL1295_tree);
        	        }

        	        EQUAL_OPERATOR1296 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_master_file_def7159);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1296_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1296));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1296_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_master_file_def7161);
        	        ulong_number1297=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulemaster_file_defEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1297.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulemaster_file_defEx; /* Prevent compiler warnings */
    rulemaster_file_defEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_file_def */

/**
 * $ANTLR start server_id_list
 * MySQL.g:1542:1: server_id_list : OPEN_PAR_SYMBOL ( ulong_number ( COMMA_SYMBOL ulong_number )* )? 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_SYMBOL1298;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1300;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1302;
    MySQLParser_ulong_number_return ulong_number1299;
    #undef	RETURN_TYPE_ulong_number1299
    #define	RETURN_TYPE_ulong_number1299 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1301;
    #undef	RETURN_TYPE_ulong_number1301
    #define	RETURN_TYPE_ulong_number1301 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1298_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1300_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1302_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL1298       = NULL;
    COMMA_SYMBOL1300       = NULL;
    CLOSE_PAR_SYMBOL1302       = NULL;
    ulong_number1299.tree = NULL;

    ulong_number1301.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL1298_tree   = NULL;
    COMMA_SYMBOL1300_tree   = NULL;
    CLOSE_PAR_SYMBOL1302_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1542:15: ( OPEN_PAR_SYMBOL ( ulong_number ( COMMA_SYMBOL ulong_number )* )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1543:2: OPEN_PAR_SYMBOL ( ulong_number ( COMMA_SYMBOL ulong_number )* )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL1298 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_server_id_list7170);
            if  (HASEXCEPTION())
            {
                goto ruleserver_id_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL1298_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1298));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1298_tree);
            }

            // MySQL.g:1543:18: ( ulong_number ( COMMA_SYMBOL ulong_number )* )?
            {
                int alt432=2;
                switch ( LA(1) )
                {
                    case DECIMAL_NUMBER:
                    case FLOAT_NUMBER:
                    case HEX_NUMBER:
                    case INT_NUMBER:
                    case LONG_NUMBER:
                    case ULONGLONG_NUMBER:
                    	{
                    		alt432=1;
                    	}
                        break;
                }

                switch (alt432)
                {
            	case 1:
            	    // MySQL.g:1543:19: ulong_number ( COMMA_SYMBOL ulong_number )*
            	    {
            	        FOLLOWPUSH(FOLLOW_ulong_number_in_server_id_list7173);
            	        ulong_number1299=ulong_number(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleserver_id_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1299.tree);

            	        // MySQL.g:1543:32: ( COMMA_SYMBOL ulong_number )*

            	        for (;;)
            	        {
            	            int alt431=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt431=1;
            	            	}
            	                break;

            	            }

            	            switch (alt431)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1543:33: COMMA_SYMBOL ulong_number
            	        	    {
            	        	        COMMA_SYMBOL1300 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_server_id_list7176);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleserver_id_listEx;
            	        	        }
            	        	        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_ulong_number_in_server_id_list7178);
            	        	        ulong_number1301=ulong_number(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleserver_id_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1301.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop431;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop431: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL1302 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_server_id_list7184);
            if  (HASEXCEPTION())
            {
                goto ruleserver_id_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL1302_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1302));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1302_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 change_replication
 * MySQL.g:1546:1: change_replication : CHANGE_SYMBOL ^ REPLICATION_SYMBOL FILTER_SYMBOL filter_definition ( COMMA_SYMBOL filter_definition )* ;
 */
static MySQLParser_change_replication_return
change_replication(pMySQLParser ctx)
{
    MySQLParser_change_replication_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHANGE_SYMBOL1303;
    pANTLR3_COMMON_TOKEN    REPLICATION_SYMBOL1304;
    pANTLR3_COMMON_TOKEN    FILTER_SYMBOL1305;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1307;
    MySQLParser_filter_definition_return filter_definition1306;
    #undef	RETURN_TYPE_filter_definition1306
    #define	RETURN_TYPE_filter_definition1306 MySQLParser_filter_definition_return

    MySQLParser_filter_definition_return filter_definition1308;
    #undef	RETURN_TYPE_filter_definition1308
    #define	RETURN_TYPE_filter_definition1308 MySQLParser_filter_definition_return

    pANTLR3_BASE_TREE CHANGE_SYMBOL1303_tree;
    pANTLR3_BASE_TREE REPLICATION_SYMBOL1304_tree;
    pANTLR3_BASE_TREE FILTER_SYMBOL1305_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1307_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHANGE_SYMBOL1303       = NULL;
    REPLICATION_SYMBOL1304       = NULL;
    FILTER_SYMBOL1305       = NULL;
    COMMA_SYMBOL1307       = NULL;
    filter_definition1306.tree = NULL;

    filter_definition1308.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHANGE_SYMBOL1303_tree   = NULL;
    REPLICATION_SYMBOL1304_tree   = NULL;
    FILTER_SYMBOL1305_tree   = NULL;
    COMMA_SYMBOL1307_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1546:19: ( CHANGE_SYMBOL ^ REPLICATION_SYMBOL FILTER_SYMBOL filter_definition ( COMMA_SYMBOL filter_definition )* )
        // MySQL.g:1547:2: CHANGE_SYMBOL ^ REPLICATION_SYMBOL FILTER_SYMBOL filter_definition ( COMMA_SYMBOL filter_definition )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CHANGE_SYMBOL1303 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGE_SYMBOL, &FOLLOW_CHANGE_SYMBOL_in_change_replication7193);
            if  (HASEXCEPTION())
            {
                goto rulechange_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CHANGE_SYMBOL1303_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGE_SYMBOL1303))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CHANGE_SYMBOL1303_tree, root_0));
            }

            REPLICATION_SYMBOL1304 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATION_SYMBOL, &FOLLOW_REPLICATION_SYMBOL_in_change_replication7196);
            if  (HASEXCEPTION())
            {
                goto rulechange_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPLICATION_SYMBOL1304_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATION_SYMBOL1304));
            ADAPTOR->addChild(ADAPTOR, root_0, REPLICATION_SYMBOL1304_tree);
            }

            FILTER_SYMBOL1305 = (pANTLR3_COMMON_TOKEN) MATCHT(FILTER_SYMBOL, &FOLLOW_FILTER_SYMBOL_in_change_replication7198);
            if  (HASEXCEPTION())
            {
                goto rulechange_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FILTER_SYMBOL1305_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FILTER_SYMBOL1305));
            ADAPTOR->addChild(ADAPTOR, root_0, FILTER_SYMBOL1305_tree);
            }

            FOLLOWPUSH(FOLLOW_filter_definition_in_change_replication7200);
            filter_definition1306=filter_definition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulechange_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_definition1306.tree);

            // MySQL.g:1547:68: ( COMMA_SYMBOL filter_definition )*

            for (;;)
            {
                int alt433=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt433=1;
                	}
                    break;

                }

                switch (alt433)
                {
            	case 1:
            	    // MySQL.g:1547:69: COMMA_SYMBOL filter_definition
            	    {
            	        COMMA_SYMBOL1307 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_change_replication7203);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_replicationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1307_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1307));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1307_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_filter_definition_in_change_replication7205);
            	        filter_definition1308=filter_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulechange_replicationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_definition1308.tree);

            	    }
            	    break;

            	default:
            	    goto loop433;	/* break out of the loop */
            	    break;
                }
            }
            loop433: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulechange_replicationEx; /* Prevent compiler warnings */
    rulechange_replicationEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_replication */

/**
 * $ANTLR start filter_definition
 * MySQL.g:1550:1: filter_definition : ( REPLICATE_DO_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_list )? CLOSE_PAR_SYMBOL | REPLICATE_IGNORE_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_list )? CLOSE_PAR_SYMBOL | REPLICATE_DO_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_table_list )? CLOSE_PAR_SYMBOL | REPLICATE_IGNORE_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_table_list )? CLOSE_PAR_SYMBOL | REPLICATE_WILD_DO_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_string_list )? CLOSE_PAR_SYMBOL | REPLICATE_WILD_IGNORE_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_string_list )? CLOSE_PAR_SYMBOL | REPLICATE_REWRITE_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_pair_list )? CLOSE_PAR_SYMBOL );
 */
static MySQLParser_filter_definition_return
filter_definition(pMySQLParser ctx)
{
    MySQLParser_filter_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REPLICATE_DO_DB_SYMBOL1309;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1310;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1311;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1313;
    pANTLR3_COMMON_TOKEN    REPLICATE_IGNORE_DB_SYMBOL1314;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1315;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1316;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1318;
    pANTLR3_COMMON_TOKEN    REPLICATE_DO_TABLE_SYMBOL1319;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1320;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1321;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1323;
    pANTLR3_COMMON_TOKEN    REPLICATE_IGNORE_TABLE_SYMBOL1324;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1325;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1326;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1328;
    pANTLR3_COMMON_TOKEN    REPLICATE_WILD_DO_TABLE_SYMBOL1329;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1330;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1331;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1333;
    pANTLR3_COMMON_TOKEN    REPLICATE_WILD_IGNORE_TABLE_SYMBOL1334;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1335;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1336;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1338;
    pANTLR3_COMMON_TOKEN    REPLICATE_REWRITE_DB_SYMBOL1339;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1340;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1341;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1343;
    MySQLParser_filter_db_list_return filter_db_list1312;
    #undef	RETURN_TYPE_filter_db_list1312
    #define	RETURN_TYPE_filter_db_list1312 MySQLParser_filter_db_list_return

    MySQLParser_filter_db_list_return filter_db_list1317;
    #undef	RETURN_TYPE_filter_db_list1317
    #define	RETURN_TYPE_filter_db_list1317 MySQLParser_filter_db_list_return

    MySQLParser_filter_table_list_return filter_table_list1322;
    #undef	RETURN_TYPE_filter_table_list1322
    #define	RETURN_TYPE_filter_table_list1322 MySQLParser_filter_table_list_return

    MySQLParser_filter_table_list_return filter_table_list1327;
    #undef	RETURN_TYPE_filter_table_list1327
    #define	RETURN_TYPE_filter_table_list1327 MySQLParser_filter_table_list_return

    MySQLParser_filter_string_list_return filter_string_list1332;
    #undef	RETURN_TYPE_filter_string_list1332
    #define	RETURN_TYPE_filter_string_list1332 MySQLParser_filter_string_list_return

    MySQLParser_filter_string_list_return filter_string_list1337;
    #undef	RETURN_TYPE_filter_string_list1337
    #define	RETURN_TYPE_filter_string_list1337 MySQLParser_filter_string_list_return

    MySQLParser_filter_db_pair_list_return filter_db_pair_list1342;
    #undef	RETURN_TYPE_filter_db_pair_list1342
    #define	RETURN_TYPE_filter_db_pair_list1342 MySQLParser_filter_db_pair_list_return

    pANTLR3_BASE_TREE REPLICATE_DO_DB_SYMBOL1309_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1310_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1311_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1313_tree;
    pANTLR3_BASE_TREE REPLICATE_IGNORE_DB_SYMBOL1314_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1315_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1316_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1318_tree;
    pANTLR3_BASE_TREE REPLICATE_DO_TABLE_SYMBOL1319_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1320_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1321_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1323_tree;
    pANTLR3_BASE_TREE REPLICATE_IGNORE_TABLE_SYMBOL1324_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1325_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1326_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1328_tree;
    pANTLR3_BASE_TREE REPLICATE_WILD_DO_TABLE_SYMBOL1329_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1330_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1331_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1333_tree;
    pANTLR3_BASE_TREE REPLICATE_WILD_IGNORE_TABLE_SYMBOL1334_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1335_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1336_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1338_tree;
    pANTLR3_BASE_TREE REPLICATE_REWRITE_DB_SYMBOL1339_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1340_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1341_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1343_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPLICATE_DO_DB_SYMBOL1309       = NULL;
    EQUAL_OPERATOR1310       = NULL;
    OPEN_PAR_SYMBOL1311       = NULL;
    CLOSE_PAR_SYMBOL1313       = NULL;
    REPLICATE_IGNORE_DB_SYMBOL1314       = NULL;
    EQUAL_OPERATOR1315       = NULL;
    OPEN_PAR_SYMBOL1316       = NULL;
    CLOSE_PAR_SYMBOL1318       = NULL;
    REPLICATE_DO_TABLE_SYMBOL1319       = NULL;
    EQUAL_OPERATOR1320       = NULL;
    OPEN_PAR_SYMBOL1321       = NULL;
    CLOSE_PAR_SYMBOL1323       = NULL;
    REPLICATE_IGNORE_TABLE_SYMBOL1324       = NULL;
    EQUAL_OPERATOR1325       = NULL;
    OPEN_PAR_SYMBOL1326       = NULL;
    CLOSE_PAR_SYMBOL1328       = NULL;
    REPLICATE_WILD_DO_TABLE_SYMBOL1329       = NULL;
    EQUAL_OPERATOR1330       = NULL;
    OPEN_PAR_SYMBOL1331       = NULL;
    CLOSE_PAR_SYMBOL1333       = NULL;
    REPLICATE_WILD_IGNORE_TABLE_SYMBOL1334       = NULL;
    EQUAL_OPERATOR1335       = NULL;
    OPEN_PAR_SYMBOL1336       = NULL;
    CLOSE_PAR_SYMBOL1338       = NULL;
    REPLICATE_REWRITE_DB_SYMBOL1339       = NULL;
    EQUAL_OPERATOR1340       = NULL;
    OPEN_PAR_SYMBOL1341       = NULL;
    CLOSE_PAR_SYMBOL1343       = NULL;
    filter_db_list1312.tree = NULL;

    filter_db_list1317.tree = NULL;

    filter_table_list1322.tree = NULL;

    filter_table_list1327.tree = NULL;

    filter_string_list1332.tree = NULL;

    filter_string_list1337.tree = NULL;

    filter_db_pair_list1342.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPLICATE_DO_DB_SYMBOL1309_tree   = NULL;
    EQUAL_OPERATOR1310_tree   = NULL;
    OPEN_PAR_SYMBOL1311_tree   = NULL;
    CLOSE_PAR_SYMBOL1313_tree   = NULL;
    REPLICATE_IGNORE_DB_SYMBOL1314_tree   = NULL;
    EQUAL_OPERATOR1315_tree   = NULL;
    OPEN_PAR_SYMBOL1316_tree   = NULL;
    CLOSE_PAR_SYMBOL1318_tree   = NULL;
    REPLICATE_DO_TABLE_SYMBOL1319_tree   = NULL;
    EQUAL_OPERATOR1320_tree   = NULL;
    OPEN_PAR_SYMBOL1321_tree   = NULL;
    CLOSE_PAR_SYMBOL1323_tree   = NULL;
    REPLICATE_IGNORE_TABLE_SYMBOL1324_tree   = NULL;
    EQUAL_OPERATOR1325_tree   = NULL;
    OPEN_PAR_SYMBOL1326_tree   = NULL;
    CLOSE_PAR_SYMBOL1328_tree   = NULL;
    REPLICATE_WILD_DO_TABLE_SYMBOL1329_tree   = NULL;
    EQUAL_OPERATOR1330_tree   = NULL;
    OPEN_PAR_SYMBOL1331_tree   = NULL;
    CLOSE_PAR_SYMBOL1333_tree   = NULL;
    REPLICATE_WILD_IGNORE_TABLE_SYMBOL1334_tree   = NULL;
    EQUAL_OPERATOR1335_tree   = NULL;
    OPEN_PAR_SYMBOL1336_tree   = NULL;
    CLOSE_PAR_SYMBOL1338_tree   = NULL;
    REPLICATE_REWRITE_DB_SYMBOL1339_tree   = NULL;
    EQUAL_OPERATOR1340_tree   = NULL;
    OPEN_PAR_SYMBOL1341_tree   = NULL;
    CLOSE_PAR_SYMBOL1343_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1550:18: ( REPLICATE_DO_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_list )? CLOSE_PAR_SYMBOL | REPLICATE_IGNORE_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_list )? CLOSE_PAR_SYMBOL | REPLICATE_DO_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_table_list )? CLOSE_PAR_SYMBOL | REPLICATE_IGNORE_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_table_list )? CLOSE_PAR_SYMBOL | REPLICATE_WILD_DO_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_string_list )? CLOSE_PAR_SYMBOL | REPLICATE_WILD_IGNORE_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_string_list )? CLOSE_PAR_SYMBOL | REPLICATE_REWRITE_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_pair_list )? CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt441;

            alt441=7;

            switch ( LA(1) )
            {
            case REPLICATE_DO_DB_SYMBOL:
            	{
            		alt441=1;
            	}
                break;
            case REPLICATE_IGNORE_DB_SYMBOL:
            	{
            		alt441=2;
            	}
                break;
            case REPLICATE_DO_TABLE_SYMBOL:
            	{
            		alt441=3;
            	}
                break;
            case REPLICATE_IGNORE_TABLE_SYMBOL:
            	{
            		alt441=4;
            	}
                break;
            case REPLICATE_WILD_DO_TABLE_SYMBOL:
            	{
            		alt441=5;
            	}
                break;
            case REPLICATE_WILD_IGNORE_TABLE_SYMBOL:
            	{
            		alt441=6;
            	}
                break;
            case REPLICATE_REWRITE_DB_SYMBOL:
            	{
            		alt441=7;
            	}
                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        = 0;


                goto rulefilter_definitionEx;

            }

            switch (alt441)
            {
        	case 1:
        	    // MySQL.g:1551:2: REPLICATE_DO_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_list )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATE_DO_DB_SYMBOL1309 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_DO_DB_SYMBOL, &FOLLOW_REPLICATE_DO_DB_SYMBOL_in_filter_definition7216);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_DO_DB_SYMBOL1309_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_DO_DB_SYMBOL1309));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_DO_DB_SYMBOL1309_tree);
        	        }

        	        EQUAL_OPERATOR1310 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7218);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1310_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1310));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1310_tree);
        	        }

        	        OPEN_PAR_SYMBOL1311 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7220);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1311_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1311));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1311_tree);
        	        }

        	        // MySQL.g:1551:56: ( filter_db_list )?
        	        {
        	            int alt434=2;
        	            {
        	                int LA434_0 = LA(1);
        	                if ( (((LA434_0 >= ACCOUNT_SYMBOL) && (LA434_0 <= YEAR_SYMBOL)) || LA434_0 == BACK_TICK_QUOTED_ID || LA434_0 == DOUBLE_QUOTED_TEXT || LA434_0 == IDENTIFIER))
        	                {
        	                    alt434=1;
        	                }
        	            }
        	            switch (alt434)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1551:56: filter_db_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_db_list_in_filter_definition7222);
        	        	        filter_db_list1312=filter_db_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_db_list1312.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1313 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7225);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1313_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1313));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1313_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1552:4: REPLICATE_IGNORE_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_list )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATE_IGNORE_DB_SYMBOL1314 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_IGNORE_DB_SYMBOL, &FOLLOW_REPLICATE_IGNORE_DB_SYMBOL_in_filter_definition7230);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_IGNORE_DB_SYMBOL1314_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_IGNORE_DB_SYMBOL1314));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_IGNORE_DB_SYMBOL1314_tree);
        	        }

        	        EQUAL_OPERATOR1315 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7232);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1315_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1315));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1315_tree);
        	        }

        	        OPEN_PAR_SYMBOL1316 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7234);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1316_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1316));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1316_tree);
        	        }

        	        // MySQL.g:1552:62: ( filter_db_list )?
        	        {
        	            int alt435=2;
        	            {
        	                int LA435_0 = LA(1);
        	                if ( (((LA435_0 >= ACCOUNT_SYMBOL) && (LA435_0 <= YEAR_SYMBOL)) || LA435_0 == BACK_TICK_QUOTED_ID || LA435_0 == DOUBLE_QUOTED_TEXT || LA435_0 == IDENTIFIER))
        	                {
        	                    alt435=1;
        	                }
        	            }
        	            switch (alt435)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1552:62: filter_db_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_db_list_in_filter_definition7236);
        	        	        filter_db_list1317=filter_db_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_db_list1317.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1318 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7239);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1318_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1318));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1318_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1553:4: REPLICATE_DO_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_table_list )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATE_DO_TABLE_SYMBOL1319 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_DO_TABLE_SYMBOL, &FOLLOW_REPLICATE_DO_TABLE_SYMBOL_in_filter_definition7244);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_DO_TABLE_SYMBOL1319_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_DO_TABLE_SYMBOL1319));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_DO_TABLE_SYMBOL1319_tree);
        	        }

        	        EQUAL_OPERATOR1320 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7246);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1320_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1320));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1320_tree);
        	        }

        	        OPEN_PAR_SYMBOL1321 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7248);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1321_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1321));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1321_tree);
        	        }

        	        // MySQL.g:1553:61: ( filter_table_list )?
        	        {
        	            int alt436=2;
        	            {
        	                int LA436_0 = LA(1);
        	                if ( (((LA436_0 >= ACCOUNT_SYMBOL) && (LA436_0 <= YEAR_SYMBOL)) || LA436_0 == BACK_TICK_QUOTED_ID || LA436_0 == DOUBLE_QUOTED_TEXT || LA436_0 == IDENTIFIER))
        	                {
        	                    alt436=1;
        	                }
        	            }
        	            switch (alt436)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1553:61: filter_table_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_table_list_in_filter_definition7250);
        	        	        filter_table_list1322=filter_table_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_table_list1322.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1323 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7253);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1323_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1323));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1323_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1554:4: REPLICATE_IGNORE_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_table_list )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATE_IGNORE_TABLE_SYMBOL1324 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_IGNORE_TABLE_SYMBOL, &FOLLOW_REPLICATE_IGNORE_TABLE_SYMBOL_in_filter_definition7258);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_IGNORE_TABLE_SYMBOL1324_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_IGNORE_TABLE_SYMBOL1324));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_IGNORE_TABLE_SYMBOL1324_tree);
        	        }

        	        EQUAL_OPERATOR1325 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7260);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1325_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1325));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1325_tree);
        	        }

        	        OPEN_PAR_SYMBOL1326 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7262);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        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);
        	        }

        	        // MySQL.g:1554:65: ( filter_table_list )?
        	        {
        	            int alt437=2;
        	            {
        	                int LA437_0 = LA(1);
        	                if ( (((LA437_0 >= ACCOUNT_SYMBOL) && (LA437_0 <= YEAR_SYMBOL)) || LA437_0 == BACK_TICK_QUOTED_ID || LA437_0 == DOUBLE_QUOTED_TEXT || LA437_0 == IDENTIFIER))
        	                {
        	                    alt437=1;
        	                }
        	            }
        	            switch (alt437)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1554:65: filter_table_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_table_list_in_filter_definition7264);
        	        	        filter_table_list1327=filter_table_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_table_list1327.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1328 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7267);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        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 5:
        	    // MySQL.g:1555:4: REPLICATE_WILD_DO_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_string_list )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATE_WILD_DO_TABLE_SYMBOL1329 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_WILD_DO_TABLE_SYMBOL, &FOLLOW_REPLICATE_WILD_DO_TABLE_SYMBOL_in_filter_definition7272);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_WILD_DO_TABLE_SYMBOL1329_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_WILD_DO_TABLE_SYMBOL1329));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_WILD_DO_TABLE_SYMBOL1329_tree);
        	        }

        	        EQUAL_OPERATOR1330 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7274);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1330_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1330));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1330_tree);
        	        }

        	        OPEN_PAR_SYMBOL1331 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7276);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1331_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1331));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1331_tree);
        	        }

        	        // MySQL.g:1555:66: ( filter_string_list )?
        	        {
        	            int alt438=2;
        	            switch ( LA(1) )
        	            {
        	                case BIN_NUMBER:
        	                case HEX_NUMBER:
        	                case SINGLE_QUOTED_TEXT:
        	                	{
        	                		alt438=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt438)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1555:66: filter_string_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_string_list_in_filter_definition7278);
        	        	        filter_string_list1332=filter_string_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_string_list1332.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1333 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7281);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1333_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1333));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1333_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1556:4: REPLICATE_WILD_IGNORE_TABLE_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_string_list )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATE_WILD_IGNORE_TABLE_SYMBOL1334 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_WILD_IGNORE_TABLE_SYMBOL, &FOLLOW_REPLICATE_WILD_IGNORE_TABLE_SYMBOL_in_filter_definition7286);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_WILD_IGNORE_TABLE_SYMBOL1334_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_WILD_IGNORE_TABLE_SYMBOL1334));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_WILD_IGNORE_TABLE_SYMBOL1334_tree);
        	        }

        	        EQUAL_OPERATOR1335 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7288);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1335_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1335));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1335_tree);
        	        }

        	        OPEN_PAR_SYMBOL1336 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7290);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1336_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1336));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1336_tree);
        	        }

        	        // MySQL.g:1556:70: ( filter_string_list )?
        	        {
        	            int alt439=2;
        	            switch ( LA(1) )
        	            {
        	                case BIN_NUMBER:
        	                case HEX_NUMBER:
        	                case SINGLE_QUOTED_TEXT:
        	                	{
        	                		alt439=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt439)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1556:70: filter_string_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_string_list_in_filter_definition7292);
        	        	        filter_string_list1337=filter_string_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_string_list1337.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1338 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7295);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1338_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1338));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1338_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1557:4: REPLICATE_REWRITE_DB_SYMBOL EQUAL_OPERATOR OPEN_PAR_SYMBOL ( filter_db_pair_list )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATE_REWRITE_DB_SYMBOL1339 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATE_REWRITE_DB_SYMBOL, &FOLLOW_REPLICATE_REWRITE_DB_SYMBOL_in_filter_definition7300);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATE_REWRITE_DB_SYMBOL1339_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATE_REWRITE_DB_SYMBOL1339));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATE_REWRITE_DB_SYMBOL1339_tree);
        	        }

        	        EQUAL_OPERATOR1340 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_filter_definition7302);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EQUAL_OPERATOR1340_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1340));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1340_tree);
        	        }

        	        OPEN_PAR_SYMBOL1341 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_filter_definition7304);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL1341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1341));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1341_tree);
        	        }

        	        // MySQL.g:1557:63: ( filter_db_pair_list )?
        	        {
        	            int alt440=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt440=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt440)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1557:63: filter_db_pair_list
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_filter_db_pair_list_in_filter_definition7306);
        	        	        filter_db_pair_list1342=filter_db_pair_list(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefilter_definitionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_db_pair_list1342.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL1343 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_filter_definition7309);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefilter_definitionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL1343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1343));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1343_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulefilter_definitionEx; /* Prevent compiler warnings */
    rulefilter_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 filter_definition */

/**
 * $ANTLR start filter_db_list
 * MySQL.g:1560:1: filter_db_list : schema_ref ( COMMA_SYMBOL schema_ref )* ;
 */
static MySQLParser_filter_db_list_return
filter_db_list(pMySQLParser ctx)
{
    MySQLParser_filter_db_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1345;
    MySQLParser_schema_ref_return schema_ref1344;
    #undef	RETURN_TYPE_schema_ref1344
    #define	RETURN_TYPE_schema_ref1344 MySQLParser_schema_ref_return

    MySQLParser_schema_ref_return schema_ref1346;
    #undef	RETURN_TYPE_schema_ref1346
    #define	RETURN_TYPE_schema_ref1346 MySQLParser_schema_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1345_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1345       = NULL;
    schema_ref1344.tree = NULL;

    schema_ref1346.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1345_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1560:15: ( schema_ref ( COMMA_SYMBOL schema_ref )* )
        // MySQL.g:1561:2: schema_ref ( COMMA_SYMBOL schema_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_schema_ref_in_filter_db_list7318);
            schema_ref1344=schema_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_db_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref1344.tree);

            // MySQL.g:1561:13: ( COMMA_SYMBOL schema_ref )*

            for (;;)
            {
                int alt442=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt442=1;
                	}
                    break;

                }

                switch (alt442)
                {
            	case 1:
            	    // MySQL.g:1561:14: COMMA_SYMBOL schema_ref
            	    {
            	        COMMA_SYMBOL1345 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_filter_db_list7321);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_db_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1345_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1345));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1345_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_schema_ref_in_filter_db_list7323);
            	        schema_ref1346=schema_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_db_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref1346.tree);

            	    }
            	    break;

            	default:
            	    goto loop442;	/* break out of the loop */
            	    break;
                }
            }
            loop442: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefilter_db_listEx; /* Prevent compiler warnings */
    rulefilter_db_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 filter_db_list */

/**
 * $ANTLR start filter_table_list
 * MySQL.g:1564:1: filter_table_list : filter_table_ref ( COMMA_SYMBOL filter_table_ref )* ;
 */
static MySQLParser_filter_table_list_return
filter_table_list(pMySQLParser ctx)
{
    MySQLParser_filter_table_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1348;
    MySQLParser_filter_table_ref_return filter_table_ref1347;
    #undef	RETURN_TYPE_filter_table_ref1347
    #define	RETURN_TYPE_filter_table_ref1347 MySQLParser_filter_table_ref_return

    MySQLParser_filter_table_ref_return filter_table_ref1349;
    #undef	RETURN_TYPE_filter_table_ref1349
    #define	RETURN_TYPE_filter_table_ref1349 MySQLParser_filter_table_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1348_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1348       = NULL;
    filter_table_ref1347.tree = NULL;

    filter_table_ref1349.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1348_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1564:18: ( filter_table_ref ( COMMA_SYMBOL filter_table_ref )* )
        // MySQL.g:1565:2: filter_table_ref ( COMMA_SYMBOL filter_table_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_filter_table_ref_in_filter_table_list7334);
            filter_table_ref1347=filter_table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_table_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_table_ref1347.tree);

            // MySQL.g:1565:19: ( COMMA_SYMBOL filter_table_ref )*

            for (;;)
            {
                int alt443=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt443=1;
                	}
                    break;

                }

                switch (alt443)
                {
            	case 1:
            	    // MySQL.g:1565:20: COMMA_SYMBOL filter_table_ref
            	    {
            	        COMMA_SYMBOL1348 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_filter_table_list7337);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_table_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1348_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1348));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1348_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_filter_table_ref_in_filter_table_list7339);
            	        filter_table_ref1349=filter_table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_table_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_table_ref1349.tree);

            	    }
            	    break;

            	default:
            	    goto loop443;	/* break out of the loop */
            	    break;
                }
            }
            loop443: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefilter_table_listEx; /* Prevent compiler warnings */
    rulefilter_table_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 filter_table_list */

/**
 * $ANTLR start filter_string_list
 * MySQL.g:1568:1: filter_string_list : filter_wild_db_table_string ( COMMA_SYMBOL filter_wild_db_table_string )* ;
 */
static MySQLParser_filter_string_list_return
filter_string_list(pMySQLParser ctx)
{
    MySQLParser_filter_string_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1351;
    MySQLParser_filter_wild_db_table_string_return filter_wild_db_table_string1350;
    #undef	RETURN_TYPE_filter_wild_db_table_string1350
    #define	RETURN_TYPE_filter_wild_db_table_string1350 MySQLParser_filter_wild_db_table_string_return

    MySQLParser_filter_wild_db_table_string_return filter_wild_db_table_string1352;
    #undef	RETURN_TYPE_filter_wild_db_table_string1352
    #define	RETURN_TYPE_filter_wild_db_table_string1352 MySQLParser_filter_wild_db_table_string_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1351_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1351       = NULL;
    filter_wild_db_table_string1350.tree = NULL;

    filter_wild_db_table_string1352.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1351_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1568:19: ( filter_wild_db_table_string ( COMMA_SYMBOL filter_wild_db_table_string )* )
        // MySQL.g:1569:2: filter_wild_db_table_string ( COMMA_SYMBOL filter_wild_db_table_string )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_filter_wild_db_table_string_in_filter_string_list7350);
            filter_wild_db_table_string1350=filter_wild_db_table_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_string_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_wild_db_table_string1350.tree);

            // MySQL.g:1569:30: ( COMMA_SYMBOL filter_wild_db_table_string )*

            for (;;)
            {
                int alt444=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt444=1;
                	}
                    break;

                }

                switch (alt444)
                {
            	case 1:
            	    // MySQL.g:1569:31: COMMA_SYMBOL filter_wild_db_table_string
            	    {
            	        COMMA_SYMBOL1351 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_filter_string_list7353);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_string_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1351_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1351));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1351_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_filter_wild_db_table_string_in_filter_string_list7355);
            	        filter_wild_db_table_string1352=filter_wild_db_table_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_string_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, filter_wild_db_table_string1352.tree);

            	    }
            	    break;

            	default:
            	    goto loop444;	/* break out of the loop */
            	    break;
                }
            }
            loop444: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefilter_string_listEx; /* Prevent compiler warnings */
    rulefilter_string_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 filter_string_list */

/**
 * $ANTLR start filter_wild_db_table_string
 * MySQL.g:1572:1: filter_wild_db_table_string : text_string_no_linebreak ;
 */
static MySQLParser_filter_wild_db_table_string_return
filter_wild_db_table_string(pMySQLParser ctx)
{
    MySQLParser_filter_wild_db_table_string_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak1353;
    #undef	RETURN_TYPE_text_string_no_linebreak1353
    #define	RETURN_TYPE_text_string_no_linebreak1353 MySQLParser_text_string_no_linebreak_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    text_string_no_linebreak1353.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1572:28: ( text_string_no_linebreak )
        // MySQL.g:1573:2: text_string_no_linebreak
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_filter_wild_db_table_string7366);
            text_string_no_linebreak1353=text_string_no_linebreak(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_wild_db_table_stringEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak1353.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefilter_wild_db_table_stringEx; /* Prevent compiler warnings */
    rulefilter_wild_db_table_stringEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end filter_wild_db_table_string */

/**
 * $ANTLR start filter_db_pair_list
 * MySQL.g:1576:1: filter_db_pair_list : schema_identifier_pair ( COMMA_SYMBOL schema_identifier_pair )* ;
 */
static MySQLParser_filter_db_pair_list_return
filter_db_pair_list(pMySQLParser ctx)
{
    MySQLParser_filter_db_pair_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1355;
    MySQLParser_schema_identifier_pair_return schema_identifier_pair1354;
    #undef	RETURN_TYPE_schema_identifier_pair1354
    #define	RETURN_TYPE_schema_identifier_pair1354 MySQLParser_schema_identifier_pair_return

    MySQLParser_schema_identifier_pair_return schema_identifier_pair1356;
    #undef	RETURN_TYPE_schema_identifier_pair1356
    #define	RETURN_TYPE_schema_identifier_pair1356 MySQLParser_schema_identifier_pair_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1355_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1355       = NULL;
    schema_identifier_pair1354.tree = NULL;

    schema_identifier_pair1356.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1355_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1576:20: ( schema_identifier_pair ( COMMA_SYMBOL schema_identifier_pair )* )
        // MySQL.g:1577:2: schema_identifier_pair ( COMMA_SYMBOL schema_identifier_pair )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_schema_identifier_pair_in_filter_db_pair_list7376);
            schema_identifier_pair1354=schema_identifier_pair(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_db_pair_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_identifier_pair1354.tree);

            // MySQL.g:1577:25: ( COMMA_SYMBOL schema_identifier_pair )*

            for (;;)
            {
                int alt445=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt445=1;
                	}
                    break;

                }

                switch (alt445)
                {
            	case 1:
            	    // MySQL.g:1577:26: COMMA_SYMBOL schema_identifier_pair
            	    {
            	        COMMA_SYMBOL1355 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_filter_db_pair_list7379);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_db_pair_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1355_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1355));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1355_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_schema_identifier_pair_in_filter_db_pair_list7381);
            	        schema_identifier_pair1356=schema_identifier_pair(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefilter_db_pair_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_identifier_pair1356.tree);

            	    }
            	    break;

            	default:
            	    goto loop445;	/* break out of the loop */
            	    break;
                }
            }
            loop445: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefilter_db_pair_listEx; /* Prevent compiler warnings */
    rulefilter_db_pair_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 filter_db_pair_list */

/**
 * $ANTLR start slave
 * MySQL.g:1580:1: slave : ( START_SYMBOL ^ SLAVE_SYMBOL ( slave_thread_options )? ( UNTIL_SYMBOL slave_until_options )? slave_connection_options ( channel )? | STOP_SYMBOL ^ SLAVE_SYMBOL ( slave_thread_options )? ( channel )? );
 */
static MySQLParser_slave_return
slave(pMySQLParser ctx)
{
    MySQLParser_slave_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    START_SYMBOL1357;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1358;
    pANTLR3_COMMON_TOKEN    UNTIL_SYMBOL1360;
    pANTLR3_COMMON_TOKEN    STOP_SYMBOL1364;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1365;
    MySQLParser_slave_thread_options_return slave_thread_options1359;
    #undef	RETURN_TYPE_slave_thread_options1359
    #define	RETURN_TYPE_slave_thread_options1359 MySQLParser_slave_thread_options_return

    MySQLParser_slave_until_options_return slave_until_options1361;
    #undef	RETURN_TYPE_slave_until_options1361
    #define	RETURN_TYPE_slave_until_options1361 MySQLParser_slave_until_options_return

    MySQLParser_slave_connection_options_return slave_connection_options1362;
    #undef	RETURN_TYPE_slave_connection_options1362
    #define	RETURN_TYPE_slave_connection_options1362 MySQLParser_slave_connection_options_return

    MySQLParser_channel_return channel1363;
    #undef	RETURN_TYPE_channel1363
    #define	RETURN_TYPE_channel1363 MySQLParser_channel_return

    MySQLParser_slave_thread_options_return slave_thread_options1366;
    #undef	RETURN_TYPE_slave_thread_options1366
    #define	RETURN_TYPE_slave_thread_options1366 MySQLParser_slave_thread_options_return

    MySQLParser_channel_return channel1367;
    #undef	RETURN_TYPE_channel1367
    #define	RETURN_TYPE_channel1367 MySQLParser_channel_return

    pANTLR3_BASE_TREE START_SYMBOL1357_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1358_tree;
    pANTLR3_BASE_TREE UNTIL_SYMBOL1360_tree;
    pANTLR3_BASE_TREE STOP_SYMBOL1364_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1365_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    START_SYMBOL1357       = NULL;
    SLAVE_SYMBOL1358       = NULL;
    UNTIL_SYMBOL1360       = NULL;
    STOP_SYMBOL1364       = NULL;
    SLAVE_SYMBOL1365       = NULL;
    slave_thread_options1359.tree = NULL;

    slave_until_options1361.tree = NULL;

    slave_connection_options1362.tree = NULL;

    channel1363.tree = NULL;

    slave_thread_options1366.tree = NULL;

    channel1367.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    START_SYMBOL1357_tree   = NULL;
    SLAVE_SYMBOL1358_tree   = NULL;
    UNTIL_SYMBOL1360_tree   = NULL;
    STOP_SYMBOL1364_tree   = NULL;
    SLAVE_SYMBOL1365_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1580:6: ( START_SYMBOL ^ SLAVE_SYMBOL ( slave_thread_options )? ( UNTIL_SYMBOL slave_until_options )? slave_connection_options ( channel )? | STOP_SYMBOL ^ SLAVE_SYMBOL ( slave_thread_options )? ( channel )? )

            ANTLR3_UINT32 alt451;

            alt451=2;

            switch ( LA(1) )
            {
            case START_SYMBOL:
            	{
            		alt451=1;
            	}
                break;
            case STOP_SYMBOL:
            	{
            		alt451=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 451;
                EXCEPTION->state        = 0;


                goto ruleslaveEx;

            }

            switch (alt451)
            {
        	case 1:
        	    // MySQL.g:1581:2: START_SYMBOL ^ SLAVE_SYMBOL ( slave_thread_options )? ( UNTIL_SYMBOL slave_until_options )? slave_connection_options ( channel )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        START_SYMBOL1357 = (pANTLR3_COMMON_TOKEN) MATCHT(START_SYMBOL, &FOLLOW_START_SYMBOL_in_slave7392);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        START_SYMBOL1357_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, START_SYMBOL1357))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, START_SYMBOL1357_tree, root_0));
        	        }

        	        SLAVE_SYMBOL1358 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_slave7395);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SLAVE_SYMBOL1358_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1358));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1358_tree);
        	        }

        	        // MySQL.g:1581:29: ( slave_thread_options )?
        	        {
        	            int alt446=2;
        	            switch ( LA(1) )
        	            {
        	                case RELAY_THREAD_SYMBOL:
        	                case SQL_THREAD_SYMBOL:
        	                	{
        	                		alt446=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt446)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1581:29: slave_thread_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_slave_thread_options_in_slave7397);
        	        	        slave_thread_options1359=slave_thread_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave_thread_options1359.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1581:51: ( UNTIL_SYMBOL slave_until_options )?
        	        {
        	            int alt447=2;
        	            switch ( LA(1) )
        	            {
        	                case UNTIL_SYMBOL:
        	                	{
        	                		alt447=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt447)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1581:52: UNTIL_SYMBOL slave_until_options
        	        	    {
        	        	        UNTIL_SYMBOL1360 = (pANTLR3_COMMON_TOKEN) MATCHT(UNTIL_SYMBOL, &FOLLOW_UNTIL_SYMBOL_in_slave7401);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNTIL_SYMBOL1360_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNTIL_SYMBOL1360));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNTIL_SYMBOL1360_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_slave_until_options_in_slave7403);
        	        	        slave_until_options1361=slave_until_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave_until_options1361.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_slave_connection_options_in_slave7407);
        	        slave_connection_options1362=slave_connection_options(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave_connection_options1362.tree);

        	        // MySQL.g:1581:112: ( channel )?
        	        {
        	            int alt448=2;
        	            {
        	                int LA448_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50706)) && (LA448_0 == FOR_SYMBOL))
        	                {
        	                    alt448=1;
        	                }
        	            }
        	            switch (alt448)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1581:112: channel
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_channel_in_slave7409);
        	        	        channel1363=channel(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1363.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1582:4: STOP_SYMBOL ^ SLAVE_SYMBOL ( slave_thread_options )? ( channel )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STOP_SYMBOL1364 = (pANTLR3_COMMON_TOKEN) MATCHT(STOP_SYMBOL, &FOLLOW_STOP_SYMBOL_in_slave7415);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STOP_SYMBOL1364_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STOP_SYMBOL1364))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, STOP_SYMBOL1364_tree, root_0));
        	        }

        	        SLAVE_SYMBOL1365 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_slave7418);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleslaveEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SLAVE_SYMBOL1365_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1365));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1365_tree);
        	        }

        	        // MySQL.g:1582:30: ( slave_thread_options )?
        	        {
        	            int alt449=2;
        	            switch ( LA(1) )
        	            {
        	                case RELAY_THREAD_SYMBOL:
        	                case SQL_THREAD_SYMBOL:
        	                	{
        	                		alt449=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt449)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1582:30: slave_thread_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_slave_thread_options_in_slave7420);
        	        	        slave_thread_options1366=slave_thread_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, slave_thread_options1366.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1582:52: ( channel )?
        	        {
        	            int alt450=2;
        	            {
        	                int LA450_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50706)) && (LA450_0 == FOR_SYMBOL))
        	                {
        	                    alt450=1;
        	                }
        	            }
        	            switch (alt450)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1582:52: channel
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_channel_in_slave7423);
        	        	        channel1367=channel(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslaveEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1367.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleslaveEx; /* Prevent compiler warnings */
    ruleslaveEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end slave */

/**
 * $ANTLR start slave_until_options
 * MySQL.g:1585:1: slave_until_options : ( master_file_def |{...}? ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR text_string |{...}? SQL_AFTER_MTS_GAPS_SYMBOL ) ( COMMA_SYMBOL master_file_def )* ;
 */
static MySQLParser_slave_until_options_return
slave_until_options(pMySQLParser ctx)
{
    MySQLParser_slave_until_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1369;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1370;
    pANTLR3_COMMON_TOKEN    SQL_AFTER_MTS_GAPS_SYMBOL1372;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1373;
    MySQLParser_master_file_def_return master_file_def1368;
    #undef	RETURN_TYPE_master_file_def1368
    #define	RETURN_TYPE_master_file_def1368 MySQLParser_master_file_def_return

    MySQLParser_text_string_return text_string1371;
    #undef	RETURN_TYPE_text_string1371
    #define	RETURN_TYPE_text_string1371 MySQLParser_text_string_return

    MySQLParser_master_file_def_return master_file_def1374;
    #undef	RETURN_TYPE_master_file_def1374
    #define	RETURN_TYPE_master_file_def1374 MySQLParser_master_file_def_return

    pANTLR3_BASE_TREE set1369_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1370_tree;
    pANTLR3_BASE_TREE SQL_AFTER_MTS_GAPS_SYMBOL1372_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1373_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1369       = NULL;
    EQUAL_OPERATOR1370       = NULL;
    SQL_AFTER_MTS_GAPS_SYMBOL1372       = NULL;
    COMMA_SYMBOL1373       = NULL;
    master_file_def1368.tree = NULL;

    text_string1371.tree = NULL;

    master_file_def1374.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1369_tree   = NULL;
    EQUAL_OPERATOR1370_tree   = NULL;
    SQL_AFTER_MTS_GAPS_SYMBOL1372_tree   = NULL;
    COMMA_SYMBOL1373_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1585:20: ( ( master_file_def |{...}? ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR text_string |{...}? SQL_AFTER_MTS_GAPS_SYMBOL ) ( COMMA_SYMBOL master_file_def )* )
        // MySQL.g:1586:2: ( master_file_def |{...}? ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR text_string |{...}? SQL_AFTER_MTS_GAPS_SYMBOL ) ( COMMA_SYMBOL master_file_def )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1586:2: ( master_file_def |{...}? ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR text_string |{...}? SQL_AFTER_MTS_GAPS_SYMBOL )
            {
                int alt452=3;
                switch ( LA(1) )
                {
                case MASTER_LOG_FILE_SYMBOL:
                case MASTER_LOG_POS_SYMBOL:
                case RELAY_LOG_FILE_SYMBOL:
                case RELAY_LOG_POS_SYMBOL:
                	{
                		alt452=1;
                	}
                    break;
                case SQL_AFTER_GTIDS_SYMBOL:
                case SQL_BEFORE_GTIDS_SYMBOL:
                	{
                		alt452=2;
                	}
                    break;
                case SQL_AFTER_MTS_GAPS_SYMBOL:
                	{
                		alt452=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 452;
                    EXCEPTION->state        = 0;


                    goto ruleslave_until_optionsEx;

                }

                switch (alt452)
                {
            	case 1:
            	    // MySQL.g:1587:3: master_file_def
            	    {
            	        FOLLOWPUSH(FOLLOW_master_file_def_in_slave_until_options7437);
            	        master_file_def1368=master_file_def(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, master_file_def1368.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1588:5: {...}? ( SQL_BEFORE_GTIDS_SYMBOL | SQL_AFTER_GTIDS_SYMBOL ) EQUAL_OPERATOR text_string
            	    {
            	        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 *)"slave_until_options";


            	        }

            	        set1369=(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, set1369))
            	            );
            	            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 ruleslave_until_optionsEx;
            	        }


            	        EQUAL_OPERATOR1370 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_until_options7453);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EQUAL_OPERATOR1370_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1370));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1370_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_string_in_slave_until_options7455);
            	        text_string1371=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1371.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1589:5: {...}? 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 *)"slave_until_options";


            	        }

            	        SQL_AFTER_MTS_GAPS_SYMBOL1372 = (pANTLR3_COMMON_TOKEN) MATCHT(SQL_AFTER_MTS_GAPS_SYMBOL, &FOLLOW_SQL_AFTER_MTS_GAPS_SYMBOL_in_slave_until_options7463);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQL_AFTER_MTS_GAPS_SYMBOL1372_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQL_AFTER_MTS_GAPS_SYMBOL1372));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQL_AFTER_MTS_GAPS_SYMBOL1372_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:1591:2: ( COMMA_SYMBOL master_file_def )*

            for (;;)
            {
                int alt453=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt453=1;
                	}
                    break;

                }

                switch (alt453)
                {
            	case 1:
            	    // MySQL.g:1591:3: COMMA_SYMBOL master_file_def
            	    {
            	        COMMA_SYMBOL1373 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_slave_until_options7470);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1373_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1373));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1373_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_master_file_def_in_slave_until_options7472);
            	        master_file_def1374=master_file_def(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_until_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, master_file_def1374.tree);

            	    }
            	    break;

            	default:
            	    goto loop453;	/* break out of the loop */
            	    break;
                }
            }
            loop453: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleslave_until_optionsEx; /* Prevent compiler warnings */
    ruleslave_until_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 slave_until_options */

/**
 * $ANTLR start slave_connection_options
 * MySQL.g:1594:1: slave_connection_options : ({...}? ( USER_SYMBOL EQUAL_OPERATOR text_string )? ( PASSWORD_SYMBOL EQUAL_OPERATOR text_string )? ( DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR text_string )? ( PLUGIN_DIR_SYMBOL EQUAL_OPERATOR text_string )? |);
 */
static MySQLParser_slave_connection_options_return
slave_connection_options(pMySQLParser ctx)
{
    MySQLParser_slave_connection_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    USER_SYMBOL1375;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1376;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1378;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1379;
    pANTLR3_COMMON_TOKEN    DEFAULT_AUTH_SYMBOL1381;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1382;
    pANTLR3_COMMON_TOKEN    PLUGIN_DIR_SYMBOL1384;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1385;
    MySQLParser_text_string_return text_string1377;
    #undef	RETURN_TYPE_text_string1377
    #define	RETURN_TYPE_text_string1377 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1380;
    #undef	RETURN_TYPE_text_string1380
    #define	RETURN_TYPE_text_string1380 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1383;
    #undef	RETURN_TYPE_text_string1383
    #define	RETURN_TYPE_text_string1383 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1386;
    #undef	RETURN_TYPE_text_string1386
    #define	RETURN_TYPE_text_string1386 MySQLParser_text_string_return

    pANTLR3_BASE_TREE USER_SYMBOL1375_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1376_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1378_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1379_tree;
    pANTLR3_BASE_TREE DEFAULT_AUTH_SYMBOL1381_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1382_tree;
    pANTLR3_BASE_TREE PLUGIN_DIR_SYMBOL1384_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1385_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    USER_SYMBOL1375       = NULL;
    EQUAL_OPERATOR1376       = NULL;
    PASSWORD_SYMBOL1378       = NULL;
    EQUAL_OPERATOR1379       = NULL;
    DEFAULT_AUTH_SYMBOL1381       = NULL;
    EQUAL_OPERATOR1382       = NULL;
    PLUGIN_DIR_SYMBOL1384       = NULL;
    EQUAL_OPERATOR1385       = NULL;
    text_string1377.tree = NULL;

    text_string1380.tree = NULL;

    text_string1383.tree = NULL;

    text_string1386.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    USER_SYMBOL1375_tree   = NULL;
    EQUAL_OPERATOR1376_tree   = NULL;
    PASSWORD_SYMBOL1378_tree   = NULL;
    EQUAL_OPERATOR1379_tree   = NULL;
    DEFAULT_AUTH_SYMBOL1381_tree   = NULL;
    EQUAL_OPERATOR1382_tree   = NULL;
    PLUGIN_DIR_SYMBOL1384_tree   = NULL;
    EQUAL_OPERATOR1385_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1594:25: ({...}? ( USER_SYMBOL EQUAL_OPERATOR text_string )? ( PASSWORD_SYMBOL EQUAL_OPERATOR text_string )? ( DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR text_string )? ( PLUGIN_DIR_SYMBOL EQUAL_OPERATOR text_string )? |)

            ANTLR3_UINT32 alt458;

            alt458=2;

            {
                int LA458_0 = LA(1);
                if ( (LA458_0 == DEFAULT_AUTH_SYMBOL || LA458_0 == PASSWORD_SYMBOL || LA458_0 == PLUGIN_DIR_SYMBOL || LA458_0 == USER_SYMBOL))
                {
                    alt458=1;
                }
                else if ( ((SERVER_VERSION >= 50706)) && (LA458_0 == FOR_SYMBOL))
                {
                    {
                        int LA458_5 = LA(2);
                        if ( (( (( ((SERVER_VERSION >= 50604)) && ((SERVER_VERSION >= 50604)) )) && ((SERVER_VERSION >= 50706)) )))
                        {
                            alt458=1;
                        }
                        else if ( ((SERVER_VERSION >= 50706)))
                        {
                            alt458=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 458;
                            EXCEPTION->state        = 5;


                            goto ruleslave_connection_optionsEx;

                        }
                    }
                }
                else if ( (LA458_0 == SEMICOLON_SYMBOL))
                {
                    {
                        int LA458_6 = LA(2);
                        if ( ((SERVER_VERSION >= 50604)))
                        {
                            alt458=1;
                        }
                        else if ( (ANTLR3_TRUE))
                        {
                            alt458=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 458;
                            EXCEPTION->state        = 6;


                            goto ruleslave_connection_optionsEx;

                        }
                    }
                }
                else if ( (LA458_0 == EOF))
                {
                    {
                        int LA458_7 = LA(2);
                        if ( ((SERVER_VERSION >= 50604)))
                        {
                            alt458=1;
                        }
                        else if ( (ANTLR3_TRUE))
                        {
                            alt458=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 458;
                            EXCEPTION->state        = 7;


                            goto ruleslave_connection_optionsEx;

                        }
                    }
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 458;
                    EXCEPTION->state        = 0;


                    goto ruleslave_connection_optionsEx;

                }
            }
            switch (alt458)
            {
        	case 1:
        	    // MySQL.g:1595:2: {...}? ( USER_SYMBOL EQUAL_OPERATOR text_string )? ( PASSWORD_SYMBOL EQUAL_OPERATOR text_string )? ( DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR text_string )? ( PLUGIN_DIR_SYMBOL EQUAL_OPERATOR text_string )?
        	    {
        	        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 *)"slave_connection_options";


        	        }

        	        // MySQL.g:1595:29: ( USER_SYMBOL EQUAL_OPERATOR text_string )?
        	        {
        	            int alt454=2;
        	            switch ( LA(1) )
        	            {
        	                case USER_SYMBOL:
        	                	{
        	                		alt454=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt454)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1595:30: USER_SYMBOL EQUAL_OPERATOR text_string
        	        	    {
        	        	        USER_SYMBOL1375 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_slave_connection_options7486);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USER_SYMBOL1375_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1375));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1375_tree);
        	        	        }

        	        	        EQUAL_OPERATOR1376 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7488);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR1376_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1376));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1376_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_slave_connection_options7490);
        	        	        text_string1377=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1377.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1595:71: ( PASSWORD_SYMBOL EQUAL_OPERATOR text_string )?
        	        {
        	            int alt455=2;
        	            switch ( LA(1) )
        	            {
        	                case PASSWORD_SYMBOL:
        	                	{
        	                		alt455=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt455)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1595:72: PASSWORD_SYMBOL EQUAL_OPERATOR text_string
        	        	    {
        	        	        PASSWORD_SYMBOL1378 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_slave_connection_options7495);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PASSWORD_SYMBOL1378_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1378));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1378_tree);
        	        	        }

        	        	        EQUAL_OPERATOR1379 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7497);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR1379_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1379));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1379_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_slave_connection_options7499);
        	        	        text_string1380=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1380.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1596:3: ( DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR text_string )?
        	        {
        	            int alt456=2;
        	            switch ( LA(1) )
        	            {
        	                case DEFAULT_AUTH_SYMBOL:
        	                	{
        	                		alt456=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt456)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1596:4: DEFAULT_AUTH_SYMBOL EQUAL_OPERATOR text_string
        	        	    {
        	        	        DEFAULT_AUTH_SYMBOL1381 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_AUTH_SYMBOL, &FOLLOW_DEFAULT_AUTH_SYMBOL_in_slave_connection_options7506);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_AUTH_SYMBOL1381_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_AUTH_SYMBOL1381));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_AUTH_SYMBOL1381_tree);
        	        	        }

        	        	        EQUAL_OPERATOR1382 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7508);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR1382_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1382));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1382_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_slave_connection_options7510);
        	        	        text_string1383=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1383.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1596:53: ( PLUGIN_DIR_SYMBOL EQUAL_OPERATOR text_string )?
        	        {
        	            int alt457=2;
        	            switch ( LA(1) )
        	            {
        	                case PLUGIN_DIR_SYMBOL:
        	                	{
        	                		alt457=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt457)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1596:54: PLUGIN_DIR_SYMBOL EQUAL_OPERATOR text_string
        	        	    {
        	        	        PLUGIN_DIR_SYMBOL1384 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_DIR_SYMBOL, &FOLLOW_PLUGIN_DIR_SYMBOL_in_slave_connection_options7515);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PLUGIN_DIR_SYMBOL1384_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_DIR_SYMBOL1384));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_DIR_SYMBOL1384_tree);
        	        	        }

        	        	        EQUAL_OPERATOR1385 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_slave_connection_options7517);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR1385_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1385));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1385_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_slave_connection_options7519);
        	        	        text_string1386=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleslave_connection_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1386.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1598:2: 
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleslave_connection_optionsEx; /* Prevent compiler warnings */
    ruleslave_connection_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 slave_connection_options */

/**
 * $ANTLR start slave_thread_options
 * MySQL.g:1600:1: slave_thread_options : slave_thread_option ( COMMA_SYMBOL slave_thread_option )* -> ^( SLAVE_THREAD_OPTIONS_TOKEN slave_thread_option ( COMMA_SYMBOL slave_thread_option )* ) ;
 */
static MySQLParser_slave_thread_options_return
slave_thread_options(pMySQLParser ctx)
{
    MySQLParser_slave_thread_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1388;
    MySQLParser_slave_thread_option_return slave_thread_option1387;
    #undef	RETURN_TYPE_slave_thread_option1387
    #define	RETURN_TYPE_slave_thread_option1387 MySQLParser_slave_thread_option_return

    MySQLParser_slave_thread_option_return slave_thread_option1389;
    #undef	RETURN_TYPE_slave_thread_option1389
    #define	RETURN_TYPE_slave_thread_option1389 MySQLParser_slave_thread_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1388_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_slave_thread_option;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1388       = NULL;
    slave_thread_option1387.tree = NULL;

    slave_thread_option1389.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1388_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_slave_thread_option   = NULL;
    #define CREATE_stream_slave_thread_option  if (stream_slave_thread_option == NULL) {stream_slave_thread_option = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule slave_thread_option"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1600:21: ( slave_thread_option ( COMMA_SYMBOL slave_thread_option )* -> ^( SLAVE_THREAD_OPTIONS_TOKEN slave_thread_option ( COMMA_SYMBOL slave_thread_option )* ) )
        // MySQL.g:1601:2: slave_thread_option ( COMMA_SYMBOL slave_thread_option )*
        {
            FOLLOWPUSH(FOLLOW_slave_thread_option_in_slave_thread_options7535);
            slave_thread_option1387=slave_thread_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleslave_thread_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_slave_thread_option; stream_slave_thread_option->add(stream_slave_thread_option, slave_thread_option1387.tree, NULL); }

            // MySQL.g:1601:22: ( COMMA_SYMBOL slave_thread_option )*

            for (;;)
            {
                int alt459=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt459=1;
                	}
                    break;

                }

                switch (alt459)
                {
            	case 1:
            	    // MySQL.g:1601:23: COMMA_SYMBOL slave_thread_option
            	    {
            	        COMMA_SYMBOL1388 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_slave_thread_options7538);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_thread_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL1388, NULL); }


            	        FOLLOWPUSH(FOLLOW_slave_thread_option_in_slave_thread_options7540);
            	        slave_thread_option1389=slave_thread_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleslave_thread_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_slave_thread_option; stream_slave_thread_option->add(stream_slave_thread_option, slave_thread_option1389.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop459;	/* break out of the loop */
            	    break;
                }
            }
            loop459: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : COMMA_SYMBOL, slave_thread_option, slave_thread_option
             * 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:58: -> ^( SLAVE_THREAD_OPTIONS_TOKEN slave_thread_option ( COMMA_SYMBOL slave_thread_option )* )
            	{
            	    // MySQL.g:1601:61: ^( SLAVE_THREAD_OPTIONS_TOKEN slave_thread_option ( COMMA_SYMBOL slave_thread_option )* )
            	    {
            	        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, SLAVE_THREAD_OPTIONS_TOKEN, (pANTLR3_UINT8)"SLAVE_THREAD_OPTIONS_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_slave_thread_option == NULL ? NULL : stream_slave_thread_option->nextTree(stream_slave_thread_option));

            	        // MySQL.g:1601:110: ( COMMA_SYMBOL slave_thread_option )*
            	        {
            	        	while ( (stream_COMMA_SYMBOL != NULL && stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL)) || (stream_slave_thread_option != NULL && stream_slave_thread_option->hasNext(stream_slave_thread_option))  )
            	        	{
            	        		ADAPTOR->addChild(ADAPTOR, root_1, 
            	        		stream_COMMA_SYMBOL == NULL ? NULL : stream_COMMA_SYMBOL->nextNode(stream_COMMA_SYMBOL)
            	        		);

            	        		ADAPTOR->addChild(ADAPTOR, root_1, stream_slave_thread_option == NULL ? NULL : stream_slave_thread_option->nextTree(stream_slave_thread_option));

            	        	}
            	        	if (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);
            	        	if (stream_slave_thread_option != NULL) stream_slave_thread_option->reset(stream_slave_thread_option);

            	        }

            	        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 ruleslave_thread_optionsEx; /* Prevent compiler warnings */
    ruleslave_thread_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 (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_slave_thread_option != NULL) stream_slave_thread_option->free(stream_slave_thread_option);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end slave_thread_options */

/**
 * $ANTLR start slave_thread_option
 * MySQL.g:1604:1: slave_thread_option : ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL );
 */
static MySQLParser_slave_thread_option_return
slave_thread_option(pMySQLParser ctx)
{
    MySQLParser_slave_thread_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1390;

    pANTLR3_BASE_TREE set1390_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1390       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1390_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1604:20: ( RELAY_THREAD_SYMBOL | SQL_THREAD_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1390=(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, set1390))
                );
                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 ruleslave_thread_optionEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleslave_thread_optionEx; /* Prevent compiler warnings */
    ruleslave_thread_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 slave_thread_option */

/**
 * $ANTLR start group_replication
 * MySQL.g:1608:1: group_replication : ( START_SYMBOL | STOP_SYMBOL ) GROUP_REPLICATION_SYMBOL ;
 */
static MySQLParser_group_replication_return
group_replication(pMySQLParser ctx)
{
    MySQLParser_group_replication_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1391;
    pANTLR3_COMMON_TOKEN    GROUP_REPLICATION_SYMBOL1392;

    pANTLR3_BASE_TREE set1391_tree;
    pANTLR3_BASE_TREE GROUP_REPLICATION_SYMBOL1392_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1391       = NULL;
    GROUP_REPLICATION_SYMBOL1392       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1391_tree   = NULL;
    GROUP_REPLICATION_SYMBOL1392_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1608:18: ( ( START_SYMBOL | STOP_SYMBOL ) GROUP_REPLICATION_SYMBOL )
        // MySQL.g:1609:2: ( START_SYMBOL | STOP_SYMBOL ) GROUP_REPLICATION_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1391=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= START_SYMBOL) && (LA(1) <= STOP_SYMBOL)) )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1391))
                );
                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 rulegroup_replicationEx;
            }


            GROUP_REPLICATION_SYMBOL1392 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_REPLICATION_SYMBOL, &FOLLOW_GROUP_REPLICATION_SYMBOL_in_group_replication7587);
            if  (HASEXCEPTION())
            {
                goto rulegroup_replicationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GROUP_REPLICATION_SYMBOL1392_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_REPLICATION_SYMBOL1392));
            ADAPTOR->addChild(ADAPTOR, root_0, GROUP_REPLICATION_SYMBOL1392_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulegroup_replicationEx; /* Prevent compiler warnings */
    rulegroup_replicationEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_replication */

/**
 * $ANTLR start prepared_statement
 * MySQL.g:1614:1: prepared_statement : ( PREPARE_SYMBOL ^ identifier FROM_SYMBOL ( string_literal | user_variable ) | execute_statement | ( DEALLOCATE_SYMBOL | DROP_SYMBOL ) ^ PREPARE_SYMBOL identifier );
 */
static MySQLParser_prepared_statement_return
prepared_statement(pMySQLParser ctx)
{
    MySQLParser_prepared_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PREPARE_SYMBOL1393;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1395;
    pANTLR3_COMMON_TOKEN    set1399;
    pANTLR3_COMMON_TOKEN    PREPARE_SYMBOL1400;
    MySQLParser_identifier_return identifier1394;
    #undef	RETURN_TYPE_identifier1394
    #define	RETURN_TYPE_identifier1394 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal1396;
    #undef	RETURN_TYPE_string_literal1396
    #define	RETURN_TYPE_string_literal1396 MySQLParser_string_literal_return

    MySQLParser_user_variable_return user_variable1397;
    #undef	RETURN_TYPE_user_variable1397
    #define	RETURN_TYPE_user_variable1397 MySQLParser_user_variable_return

    MySQLParser_execute_statement_return execute_statement1398;
    #undef	RETURN_TYPE_execute_statement1398
    #define	RETURN_TYPE_execute_statement1398 MySQLParser_execute_statement_return

    MySQLParser_identifier_return identifier1401;
    #undef	RETURN_TYPE_identifier1401
    #define	RETURN_TYPE_identifier1401 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PREPARE_SYMBOL1393_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1395_tree;
    pANTLR3_BASE_TREE set1399_tree;
    pANTLR3_BASE_TREE PREPARE_SYMBOL1400_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PREPARE_SYMBOL1393       = NULL;
    FROM_SYMBOL1395       = NULL;
    set1399       = NULL;
    PREPARE_SYMBOL1400       = NULL;
    identifier1394.tree = NULL;

    string_literal1396.tree = NULL;

    user_variable1397.tree = NULL;

    execute_statement1398.tree = NULL;

    identifier1401.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PREPARE_SYMBOL1393_tree   = NULL;
    FROM_SYMBOL1395_tree   = NULL;
    set1399_tree   = NULL;
    PREPARE_SYMBOL1400_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1614:19: ( PREPARE_SYMBOL ^ identifier FROM_SYMBOL ( string_literal | user_variable ) | execute_statement | ( DEALLOCATE_SYMBOL | DROP_SYMBOL ) ^ PREPARE_SYMBOL identifier )

            ANTLR3_UINT32 alt461;

            alt461=3;

            switch ( LA(1) )
            {
            case PREPARE_SYMBOL:
            	{
            		alt461=1;
            	}
                break;
            case EXECUTE_SYMBOL:
            	{
            		alt461=2;
            	}
                break;
            case DEALLOCATE_SYMBOL:
            case DROP_SYMBOL:
            	{
            		alt461=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 461;
                EXCEPTION->state        = 0;


                goto ruleprepared_statementEx;

            }

            switch (alt461)
            {
        	case 1:
        	    // MySQL.g:1615:2: PREPARE_SYMBOL ^ identifier FROM_SYMBOL ( string_literal | user_variable )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PREPARE_SYMBOL1393 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_prepared_statement7598);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PREPARE_SYMBOL1393_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1393))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PREPARE_SYMBOL1393_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_prepared_statement7601);
        	        identifier1394=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1394.tree);

        	        FROM_SYMBOL1395 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_prepared_statement7603);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL1395_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1395));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1395_tree);
        	        }

        	        // MySQL.g:1615:41: ( string_literal | user_variable )
        	        {
        	            int alt460=2;
        	            switch ( LA(1) )
        	            {
        	            case DOUBLE_QUOTED_TEXT:
        	            case NCHAR_TEXT:
        	            case SINGLE_QUOTED_TEXT:
        	            case UNDERSCORE_CHARSET:
        	            	{
        	            		alt460=1;
        	            	}
        	                break;
        	            case AT_SIGN_SYMBOL:
        	            case AT_TEXT_SUFFIX:
        	            	{
        	            		alt460=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 460;
        	                EXCEPTION->state        = 0;


        	                goto ruleprepared_statementEx;

        	            }

        	            switch (alt460)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1615:42: string_literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_literal_in_prepared_statement7606);
        	        	        string_literal1396=string_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprepared_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1396.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1615:59: user_variable
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_user_variable_in_prepared_statement7610);
        	        	        user_variable1397=user_variable(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprepared_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1397.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1616:4: execute_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_execute_statement_in_prepared_statement7616);
        	        execute_statement1398=execute_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, execute_statement1398.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1617:4: ( DEALLOCATE_SYMBOL | DROP_SYMBOL ) ^ PREPARE_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set1399=(pANTLR3_COMMON_TOKEN)LT(1);

        	        set1399=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DEALLOCATE_SYMBOL || LA(1) == DROP_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1399))
        	            , 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 ruleprepared_statementEx;
        	        }


        	        PREPARE_SYMBOL1400 = (pANTLR3_COMMON_TOKEN) MATCHT(PREPARE_SYMBOL, &FOLLOW_PREPARE_SYMBOL_in_prepared_statement7630);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PREPARE_SYMBOL1400_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PREPARE_SYMBOL1400));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PREPARE_SYMBOL1400_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_prepared_statement7632);
        	        identifier1401=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprepared_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1401.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:1620:1: execute_statement : EXECUTE_SYMBOL ^ 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_SYMBOL1402;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL1404;
    MySQLParser_identifier_return identifier1403;
    #undef	RETURN_TYPE_identifier1403
    #define	RETURN_TYPE_identifier1403 MySQLParser_identifier_return

    MySQLParser_execute_var_list_return execute_var_list1405;
    #undef	RETURN_TYPE_execute_var_list1405
    #define	RETURN_TYPE_execute_var_list1405 MySQLParser_execute_var_list_return

    pANTLR3_BASE_TREE EXECUTE_SYMBOL1402_tree;
    pANTLR3_BASE_TREE USING_SYMBOL1404_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EXECUTE_SYMBOL1402       = NULL;
    USING_SYMBOL1404       = NULL;
    identifier1403.tree = NULL;

    execute_var_list1405.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EXECUTE_SYMBOL1402_tree   = NULL;
    USING_SYMBOL1404_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1620:18: ( EXECUTE_SYMBOL ^ identifier ( USING_SYMBOL execute_var_list )? )
        // MySQL.g:1621:2: EXECUTE_SYMBOL ^ identifier ( USING_SYMBOL execute_var_list )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            EXECUTE_SYMBOL1402 = (pANTLR3_COMMON_TOKEN) MATCHT(EXECUTE_SYMBOL, &FOLLOW_EXECUTE_SYMBOL_in_execute_statement7641);
            if  (HASEXCEPTION())
            {
                goto ruleexecute_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXECUTE_SYMBOL1402_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXECUTE_SYMBOL1402))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, EXECUTE_SYMBOL1402_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_identifier_in_execute_statement7644);
            identifier1403=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexecute_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1403.tree);

            // MySQL.g:1621:29: ( USING_SYMBOL execute_var_list )?
            {
                int alt462=2;
                switch ( LA(1) )
                {
                    case USING_SYMBOL:
                    	{
                    		alt462=1;
                    	}
                        break;
                }

                switch (alt462)
                {
            	case 1:
            	    // MySQL.g:1621:30: USING_SYMBOL execute_var_list
            	    {
            	        USING_SYMBOL1404 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_execute_statement7647);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        USING_SYMBOL1404_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL1404));
            	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL1404_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_execute_var_list_in_execute_statement7649);
            	        execute_var_list1405=execute_var_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, execute_var_list1405.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // 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:1624: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_SYMBOL1407;
    MySQLParser_user_variable_return user_variable1406;
    #undef	RETURN_TYPE_user_variable1406
    #define	RETURN_TYPE_user_variable1406 MySQLParser_user_variable_return

    MySQLParser_user_variable_return user_variable1408;
    #undef	RETURN_TYPE_user_variable1408
    #define	RETURN_TYPE_user_variable1408 MySQLParser_user_variable_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1407_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1407       = NULL;
    user_variable1406.tree = NULL;

    user_variable1408.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1407_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1624:17: ( user_variable ( COMMA_SYMBOL user_variable )* )
        // MySQL.g:1625:2: user_variable ( COMMA_SYMBOL user_variable )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_user_variable_in_execute_var_list7660);
            user_variable1406=user_variable(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexecute_var_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1406.tree);

            // MySQL.g:1625:16: ( COMMA_SYMBOL user_variable )*

            for (;;)
            {
                int alt463=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt463=1;
                	}
                    break;

                }

                switch (alt463)
                {
            	case 1:
            	    // MySQL.g:1625:17: COMMA_SYMBOL user_variable
            	    {
            	        COMMA_SYMBOL1407 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_execute_var_list7663);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_var_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1407_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1407));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1407_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_variable_in_execute_var_list7665);
            	        user_variable1408=user_variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexecute_var_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1408.tree);

            	    }
            	    break;

            	default:
            	    goto loop463;	/* break out of the loop */
            	    break;
                }
            }
            loop463: ; /* 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:1630: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_user1409;
    #undef	RETURN_TYPE_alter_user1409
    #define	RETURN_TYPE_alter_user1409 MySQLParser_alter_user_return

    MySQLParser_create_user_return create_user1410;
    #undef	RETURN_TYPE_create_user1410
    #define	RETURN_TYPE_create_user1410 MySQLParser_create_user_return

    MySQLParser_drop_user_return drop_user1411;
    #undef	RETURN_TYPE_drop_user1411
    #define	RETURN_TYPE_drop_user1411 MySQLParser_drop_user_return

    MySQLParser_grant_proxy_return grant_proxy1412;
    #undef	RETURN_TYPE_grant_proxy1412
    #define	RETURN_TYPE_grant_proxy1412 MySQLParser_grant_proxy_return

    MySQLParser_grant_return grant1413;
    #undef	RETURN_TYPE_grant1413
    #define	RETURN_TYPE_grant1413 MySQLParser_grant_return

    MySQLParser_rename_user_return rename_user1414;
    #undef	RETURN_TYPE_rename_user1414
    #define	RETURN_TYPE_rename_user1414 MySQLParser_rename_user_return

    MySQLParser_revoke_statement_return revoke_statement1415;
    #undef	RETURN_TYPE_revoke_statement1415
    #define	RETURN_TYPE_revoke_statement1415 MySQLParser_revoke_statement_return

    MySQLParser_set_password_return set_password1416;
    #undef	RETURN_TYPE_set_password1416
    #define	RETURN_TYPE_set_password1416 MySQLParser_set_password_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    alter_user1409.tree = NULL;

    create_user1410.tree = NULL;

    drop_user1411.tree = NULL;

    grant_proxy1412.tree = NULL;

    grant1413.tree = NULL;

    rename_user1414.tree = NULL;

    revoke_statement1415.tree = NULL;

    set_password1416.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1630:29: ({...}? alter_user | create_user | drop_user |{...}? grant_proxy | grant | rename_user | revoke_statement | set_password )

            ANTLR3_UINT32 alt464;

            alt464=8;

            switch ( LA(1) )
            {
            case ALTER_SYMBOL:
            	{
            		alt464=1;
            	}
                break;
            case CREATE_SYMBOL:
            	{
            		alt464=2;
            	}
                break;
            case DROP_SYMBOL:
            	{
            		alt464=3;
            	}
                break;
            case GRANT_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case PROXY_SYMBOL:
            			{
            				{
            				    int LA464_8 = LA(3);
            				    if ( ((SERVER_VERSION >= 50500)))
            				    {
            				        alt464=4;
            				    }
            				    else if ( (ANTLR3_TRUE))
            				    {
            				        alt464=5;
            				    }
            				    else
            				    {
            				        if (BACKTRACKING>0)
            				        {
            				            FAILEDFLAG = ANTLR3_TRUE;
            				            return retval;
            				        }


            				        CONSTRUCTEX();
            				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            				        EXCEPTION->message      = (void *)"";
            				        EXCEPTION->decisionNum  = 464;
            				        EXCEPTION->state        = 8;


            				        goto ruleaccount_management_statementEx;

            				    }
            				}
            			}
            		    break;
            		case EXECUTE_SYMBOL:
            		case EVENT_SYMBOL:
            		case FILE_SYMBOL:
            		case PROCESS_SYMBOL:
            		case RELOAD_SYMBOL:
            		case REPLICATION_SYMBOL:
            		case SHUTDOWN_SYMBOL:
            		case SUPER_SYMBOL:
            		case ALL_SYMBOL:
            		case ALTER_SYMBOL:
            		case CREATE_SYMBOL:
            		case DELETE_SYMBOL:
            		case DROP_SYMBOL:
            		case GRANT_SYMBOL:
            		case INDEX_SYMBOL:
            		case INSERT_SYMBOL:
            		case LOCK_SYMBOL:
            		case REFERENCES_SYMBOL:
            		case SELECT_SYMBOL:
            		case SHOW_SYMBOL:
            		case TRIGGER_SYMBOL:
            		case UPDATE_SYMBOL:
            		case USAGE_SYMBOL:
            			{
            				alt464=5;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 464;
            		    EXCEPTION->state        = 4;


            		    goto ruleaccount_management_statementEx;

            		}

            	}
                break;
            case RENAME_SYMBOL:
            	{
            		alt464=6;
            	}
                break;
            case REVOKE_SYMBOL:
            	{
            		alt464=7;
            	}
                break;
            case SET_SYMBOL:
            	{
            		alt464=8;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 464;
                EXCEPTION->state        = 0;


                goto ruleaccount_management_statementEx;

            }

            switch (alt464)
            {
        	case 1:
        	    // MySQL.g:1631: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_statement7680);
        	        alter_user1409=alter_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_user1409.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1632:4: create_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_create_user_in_account_management_statement7685);
        	        create_user1410=create_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_user1410.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1633:4: drop_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_drop_user_in_account_management_statement7690);
        	        drop_user1411=drop_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, drop_user1411.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1634:4: {...}? grant_proxy
        	    {
        	        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 *)"account_management_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_grant_proxy_in_account_management_statement7697);
        	        grant_proxy1412=grant_proxy(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_proxy1412.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1635:4: grant
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_grant_in_account_management_statement7702);
        	        grant1413=grant(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant1413.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1636:4: rename_user
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_rename_user_in_account_management_statement7707);
        	        rename_user1414=rename_user(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, rename_user1414.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1637:4: revoke_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_revoke_statement_in_account_management_statement7712);
        	        revoke_statement1415=revoke_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, revoke_statement1415.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1638:4: set_password
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_set_password_in_account_management_statement7717);
        	        set_password1416=set_password(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_management_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_password1416.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:1641:1: alter_user : ALTER_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) alter_user_tail ;
 */
static MySQLParser_alter_user_return
alter_user(pMySQLParser ctx)
{
    MySQLParser_alter_user_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALTER_SYMBOL1417;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1418;
    MySQLParser_if_exists_return if_exists1419;
    #undef	RETURN_TYPE_if_exists1419
    #define	RETURN_TYPE_if_exists1419 MySQLParser_if_exists_return

    MySQLParser_alter_user_tail_return alter_user_tail1420;
    #undef	RETURN_TYPE_alter_user_tail1420
    #define	RETURN_TYPE_alter_user_tail1420 MySQLParser_alter_user_tail_return

    pANTLR3_BASE_TREE ALTER_SYMBOL1417_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1418_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALTER_SYMBOL1417       = NULL;
    USER_SYMBOL1418       = NULL;
    if_exists1419.tree = NULL;

    alter_user_tail1420.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALTER_SYMBOL1417_tree   = NULL;
    USER_SYMBOL1418_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1641:11: ( ALTER_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) alter_user_tail )
        // MySQL.g:1642:2: ALTER_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) alter_user_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ALTER_SYMBOL1417 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_alter_user7726);
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALTER_SYMBOL1417_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL1417))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ALTER_SYMBOL1417_tree, root_0));
            }

            USER_SYMBOL1418 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_alter_user7729);
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1418_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1418));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1418_tree);
            }

            // MySQL.g:1642:28: ({...}? if_exists |)
            {
                int alt465=2;
                {
                    int LA465_0 = LA(1);
                    if ( (LA465_0 == IF_SYMBOL))
                    {
                        alt465=1;
                    }
                    else if ( (((LA465_0 >= ACCOUNT_SYMBOL) && (LA465_0 <= YEAR_SYMBOL)) || LA465_0 == BACK_TICK_QUOTED_ID || LA465_0 == CURRENT_USER_SYMBOL || LA465_0 == DOUBLE_QUOTED_TEXT || LA465_0 == IDENTIFIER || LA465_0 == SINGLE_QUOTED_TEXT))
                    {
                        alt465=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 465;
                        EXCEPTION->state        = 0;


                        goto rulealter_userEx;

                    }
                }
                switch (alt465)
                {
            	case 1:
            	    // MySQL.g:1642:29: {...}? if_exists
            	    {
            	        if ( !((SERVER_VERSION >= 50706)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50706";
            	                EXCEPTION->ruleName	 = (void *)"alter_user";


            	        }

            	        FOLLOWPUSH(FOLLOW_if_exists_in_alter_user7734);
            	        if_exists1419=if_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealter_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists1419.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1642:79: 
            	    {
            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_alter_user_tail_in_alter_user7741);
            alter_user_tail1420=alter_user_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealter_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, alter_user_tail1420.tree);

        }

    }

    // 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 alter_user_tail
 * MySQL.g:1645:1: alter_user_tail : ( grant_list create_user_tail |{...}? USER_SYMBOL parentheses IDENTIFIED_SYMBOL BY_SYMBOL text_string );
 */
static MySQLParser_alter_user_tail_return
alter_user_tail(pMySQLParser ctx)
{
    MySQLParser_alter_user_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    USER_SYMBOL1423;
    pANTLR3_COMMON_TOKEN    IDENTIFIED_SYMBOL1425;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL1426;
    MySQLParser_grant_list_return grant_list1421;
    #undef	RETURN_TYPE_grant_list1421
    #define	RETURN_TYPE_grant_list1421 MySQLParser_grant_list_return

    MySQLParser_create_user_tail_return create_user_tail1422;
    #undef	RETURN_TYPE_create_user_tail1422
    #define	RETURN_TYPE_create_user_tail1422 MySQLParser_create_user_tail_return

    MySQLParser_parentheses_return parentheses1424;
    #undef	RETURN_TYPE_parentheses1424
    #define	RETURN_TYPE_parentheses1424 MySQLParser_parentheses_return

    MySQLParser_text_string_return text_string1427;
    #undef	RETURN_TYPE_text_string1427
    #define	RETURN_TYPE_text_string1427 MySQLParser_text_string_return

    pANTLR3_BASE_TREE USER_SYMBOL1423_tree;
    pANTLR3_BASE_TREE IDENTIFIED_SYMBOL1425_tree;
    pANTLR3_BASE_TREE BY_SYMBOL1426_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    USER_SYMBOL1423       = NULL;
    IDENTIFIED_SYMBOL1425       = NULL;
    BY_SYMBOL1426       = NULL;
    grant_list1421.tree = NULL;

    create_user_tail1422.tree = NULL;

    parentheses1424.tree = NULL;

    text_string1427.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    USER_SYMBOL1423_tree   = NULL;
    IDENTIFIED_SYMBOL1425_tree   = NULL;
    BY_SYMBOL1426_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1645:16: ( grant_list create_user_tail |{...}? USER_SYMBOL parentheses IDENTIFIED_SYMBOL BY_SYMBOL text_string )

            ANTLR3_UINT32 alt466;

            alt466=2;

            {
                int LA466_0 = LA(1);
                if ( (((LA466_0 >= ACCOUNT_SYMBOL) && (LA466_0 <= USER_RESOURCES_SYMBOL)) || ((LA466_0 >= USE_FRM_SYMBOL) && (LA466_0 <= YEAR_SYMBOL)) || LA466_0 == BACK_TICK_QUOTED_ID || LA466_0 == CURRENT_USER_SYMBOL || LA466_0 == DOUBLE_QUOTED_TEXT || LA466_0 == IDENTIFIER || LA466_0 == SINGLE_QUOTED_TEXT))
                {
                    alt466=1;
                }
                else if ( (LA466_0 == USER_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case EOF:
                    case ACCOUNT_SYMBOL:
                    case IDENTIFIED_SYMBOL:
                    case PASSWORD_SYMBOL:
                    case AT_SIGN_SYMBOL:
                    case AT_TEXT_SUFFIX:
                    case COMMA_SYMBOL:
                    case REQUIRE_SYMBOL:
                    case SEMICOLON_SYMBOL:
                    case WITH_SYMBOL:
                    	{
                    		alt466=1;
                    	}
                        break;
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt466=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 466;
                        EXCEPTION->state        = 5;


                        goto rulealter_user_tailEx;

                    }

                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 466;
                    EXCEPTION->state        = 0;


                    goto rulealter_user_tailEx;

                }
            }
            switch (alt466)
            {
        	case 1:
        	    // MySQL.g:1646:2: grant_list create_user_tail
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_grant_list_in_alter_user_tail7750);
        	        grant_list1421=grant_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_list1421.tree);

        	        FOLLOWPUSH(FOLLOW_create_user_tail_in_alter_user_tail7752);
        	        create_user_tail1422=create_user_tail(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_user_tail1422.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1647:4: {...}? USER_SYMBOL parentheses IDENTIFIED_SYMBOL BY_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50706)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50706";
        	                EXCEPTION->ruleName	 = (void *)"alter_user_tail";


        	        }

        	        USER_SYMBOL1423 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_alter_user_tail7759);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_SYMBOL1423_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1423));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1423_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_alter_user_tail7761);
        	        parentheses1424=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses1424.tree);

        	        IDENTIFIED_SYMBOL1425 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIED_SYMBOL, &FOLLOW_IDENTIFIED_SYMBOL_in_alter_user_tail7763);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IDENTIFIED_SYMBOL1425_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIED_SYMBOL1425));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIED_SYMBOL1425_tree);
        	        }

        	        BY_SYMBOL1426 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_alter_user_tail7765);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL1426_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL1426));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL1426_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_alter_user_tail7767);
        	        text_string1427=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulealter_user_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1427.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulealter_user_tailEx; /* Prevent compiler warnings */
    rulealter_user_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 alter_user_tail */

/**
 * $ANTLR start create_user
 * MySQL.g:1650:1: create_user : CREATE_SYMBOL ^ USER_SYMBOL ({...}? if_not_exists |) grant_list create_user_tail ;
 */
static MySQLParser_create_user_return
create_user(pMySQLParser ctx)
{
    MySQLParser_create_user_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL1428;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1429;
    MySQLParser_if_not_exists_return if_not_exists1430;
    #undef	RETURN_TYPE_if_not_exists1430
    #define	RETURN_TYPE_if_not_exists1430 MySQLParser_if_not_exists_return

    MySQLParser_grant_list_return grant_list1431;
    #undef	RETURN_TYPE_grant_list1431
    #define	RETURN_TYPE_grant_list1431 MySQLParser_grant_list_return

    MySQLParser_create_user_tail_return create_user_tail1432;
    #undef	RETURN_TYPE_create_user_tail1432
    #define	RETURN_TYPE_create_user_tail1432 MySQLParser_create_user_tail_return

    pANTLR3_BASE_TREE CREATE_SYMBOL1428_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1429_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CREATE_SYMBOL1428       = NULL;
    USER_SYMBOL1429       = NULL;
    if_not_exists1430.tree = NULL;

    grant_list1431.tree = NULL;

    create_user_tail1432.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CREATE_SYMBOL1428_tree   = NULL;
    USER_SYMBOL1429_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1650:12: ( CREATE_SYMBOL ^ USER_SYMBOL ({...}? if_not_exists |) grant_list create_user_tail )
        // MySQL.g:1651:2: CREATE_SYMBOL ^ USER_SYMBOL ({...}? if_not_exists |) grant_list create_user_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CREATE_SYMBOL1428 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_create_user7776);
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CREATE_SYMBOL1428_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1428))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CREATE_SYMBOL1428_tree, root_0));
            }

            USER_SYMBOL1429 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_create_user7779);
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1429_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1429));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1429_tree);
            }

            // MySQL.g:1651:29: ({...}? if_not_exists |)
            {
                int alt467=2;
                {
                    int LA467_0 = LA(1);
                    if ( (LA467_0 == IF_SYMBOL))
                    {
                        alt467=1;
                    }
                    else if ( (((LA467_0 >= ACCOUNT_SYMBOL) && (LA467_0 <= YEAR_SYMBOL)) || LA467_0 == BACK_TICK_QUOTED_ID || LA467_0 == CURRENT_USER_SYMBOL || LA467_0 == DOUBLE_QUOTED_TEXT || LA467_0 == IDENTIFIER || LA467_0 == SINGLE_QUOTED_TEXT))
                    {
                        alt467=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 467;
                        EXCEPTION->state        = 0;


                        goto rulecreate_userEx;

                    }
                }
                switch (alt467)
                {
            	case 1:
            	    // MySQL.g:1651:30: {...}? if_not_exists
            	    {
            	        if ( !((SERVER_VERSION >= 50706)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50706";
            	                EXCEPTION->ruleName	 = (void *)"create_user";


            	        }

            	        FOLLOWPUSH(FOLLOW_if_not_exists_in_create_user7784);
            	        if_not_exists1430=if_not_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecreate_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_not_exists1430.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1651:84: 
            	    {
            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_grant_list_in_create_user7791);
            grant_list1431=grant_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_list1431.tree);

            FOLLOWPUSH(FOLLOW_create_user_tail_in_create_user7793);
            create_user_tail1432=create_user_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecreate_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, create_user_tail1432.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 create_user_tail
 * MySQL.g:1654:1: create_user_tail : ({...}? ( require_clause )? ( connect_options )? ( account_lock_password_expire_options )? |);
 */
static MySQLParser_create_user_tail_return
create_user_tail(pMySQLParser ctx)
{
    MySQLParser_create_user_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_require_clause_return require_clause1433;
    #undef	RETURN_TYPE_require_clause1433
    #define	RETURN_TYPE_require_clause1433 MySQLParser_require_clause_return

    MySQLParser_connect_options_return connect_options1434;
    #undef	RETURN_TYPE_connect_options1434
    #define	RETURN_TYPE_connect_options1434 MySQLParser_connect_options_return

    MySQLParser_account_lock_password_expire_options_return account_lock_password_expire_options1435;
    #undef	RETURN_TYPE_account_lock_password_expire_options1435
    #define	RETURN_TYPE_account_lock_password_expire_options1435 MySQLParser_account_lock_password_expire_options_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    require_clause1433.tree = NULL;

    connect_options1434.tree = NULL;

    account_lock_password_expire_options1435.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1654:17: ({...}? ( require_clause )? ( connect_options )? ( account_lock_password_expire_options )? |)

            ANTLR3_UINT32 alt471;

            alt471=2;

            switch ( LA(1) )
            {
            case ACCOUNT_SYMBOL:
            case PASSWORD_SYMBOL:
            case REQUIRE_SYMBOL:
            case WITH_SYMBOL:
            	{
            		alt471=1;
            	}
                break;
            case SEMICOLON_SYMBOL:
            	{
            		{
            		    int LA471_5 = LA(2);
            		    if ( ((SERVER_VERSION >= 50706)))
            		    {
            		        alt471=1;
            		    }
            		    else if ( (ANTLR3_TRUE))
            		    {
            		        alt471=2;
            		    }
            		    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        = 5;


            		        goto rulecreate_user_tailEx;

            		    }
            		}
            	}
                break;
            case EOF:
            	{
            		{
            		    int LA471_6 = LA(2);
            		    if ( ((SERVER_VERSION >= 50706)))
            		    {
            		        alt471=1;
            		    }
            		    else if ( (ANTLR3_TRUE))
            		    {
            		        alt471=2;
            		    }
            		    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        = 6;


            		        goto rulecreate_user_tailEx;

            		    }
            		}
            	}
                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        = 0;


                goto rulecreate_user_tailEx;

            }

            switch (alt471)
            {
        	case 1:
        	    // MySQL.g:1655:2: {...}? ( require_clause )? ( connect_options )? ( account_lock_password_expire_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50706)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50706";
        	                EXCEPTION->ruleName	 = (void *)"create_user_tail";


        	        }

        	        // MySQL.g:1655:29: ( require_clause )?
        	        {
        	            int alt468=2;
        	            switch ( LA(1) )
        	            {
        	                case REQUIRE_SYMBOL:
        	                	{
        	                		alt468=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt468)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1655:29: require_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_require_clause_in_create_user_tail7804);
        	        	        require_clause1433=require_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_user_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_clause1433.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1655:45: ( connect_options )?
        	        {
        	            int alt469=2;
        	            switch ( LA(1) )
        	            {
        	                case WITH_SYMBOL:
        	                	{
        	                		alt469=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt469)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1655:45: connect_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_connect_options_in_create_user_tail7807);
        	        	        connect_options1434=connect_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_user_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, connect_options1434.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1655:62: ( account_lock_password_expire_options )?
        	        {
        	            int alt470=2;
        	            switch ( LA(1) )
        	            {
        	                case ACCOUNT_SYMBOL:
        	                case PASSWORD_SYMBOL:
        	                	{
        	                		alt470=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt470)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1655:62: account_lock_password_expire_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_account_lock_password_expire_options_in_create_user_tail7810);
        	        	        account_lock_password_expire_options1435=account_lock_password_expire_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_user_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, account_lock_password_expire_options1435.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1657:2: 
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecreate_user_tailEx; /* Prevent compiler warnings */
    rulecreate_user_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 create_user_tail */

/**
 * $ANTLR start require_clause
 * MySQL.g:1659:1: require_clause : REQUIRE_SYMBOL ( require_list | SSL_SYMBOL | X509_SYMBOL | NONE_SYMBOL ) ;
 */
static MySQLParser_require_clause_return
require_clause(pMySQLParser ctx)
{
    MySQLParser_require_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    REQUIRE_SYMBOL1436;
    pANTLR3_COMMON_TOKEN    SSL_SYMBOL1438;
    pANTLR3_COMMON_TOKEN    X509_SYMBOL1439;
    pANTLR3_COMMON_TOKEN    NONE_SYMBOL1440;
    MySQLParser_require_list_return require_list1437;
    #undef	RETURN_TYPE_require_list1437
    #define	RETURN_TYPE_require_list1437 MySQLParser_require_list_return

    pANTLR3_BASE_TREE REQUIRE_SYMBOL1436_tree;
    pANTLR3_BASE_TREE SSL_SYMBOL1438_tree;
    pANTLR3_BASE_TREE X509_SYMBOL1439_tree;
    pANTLR3_BASE_TREE NONE_SYMBOL1440_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REQUIRE_SYMBOL1436       = NULL;
    SSL_SYMBOL1438       = NULL;
    X509_SYMBOL1439       = NULL;
    NONE_SYMBOL1440       = NULL;
    require_list1437.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REQUIRE_SYMBOL1436_tree   = NULL;
    SSL_SYMBOL1438_tree   = NULL;
    X509_SYMBOL1439_tree   = NULL;
    NONE_SYMBOL1440_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1659:15: ( REQUIRE_SYMBOL ( require_list | SSL_SYMBOL | X509_SYMBOL | NONE_SYMBOL ) )
        // MySQL.g:1660:2: REQUIRE_SYMBOL ( require_list | SSL_SYMBOL | X509_SYMBOL | NONE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REQUIRE_SYMBOL1436 = (pANTLR3_COMMON_TOKEN) MATCHT(REQUIRE_SYMBOL, &FOLLOW_REQUIRE_SYMBOL_in_require_clause7825);
            if  (HASEXCEPTION())
            {
                goto rulerequire_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REQUIRE_SYMBOL1436_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REQUIRE_SYMBOL1436));
            ADAPTOR->addChild(ADAPTOR, root_0, REQUIRE_SYMBOL1436_tree);
            }

            // MySQL.g:1660:17: ( require_list | SSL_SYMBOL | X509_SYMBOL | NONE_SYMBOL )
            {
                int alt472=4;
                switch ( LA(1) )
                {
                case CIPHER_SYMBOL:
                case ISSUER_SYMBOL:
                case SUBJECT_SYMBOL:
                	{
                		alt472=1;
                	}
                    break;
                case SSL_SYMBOL:
                	{
                		alt472=2;
                	}
                    break;
                case X509_SYMBOL:
                	{
                		alt472=3;
                	}
                    break;
                case NONE_SYMBOL:
                	{
                		alt472=4;
                	}
                    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 rulerequire_clauseEx;

                }

                switch (alt472)
                {
            	case 1:
            	    // MySQL.g:1660:18: require_list
            	    {
            	        FOLLOWPUSH(FOLLOW_require_list_in_require_clause7828);
            	        require_list1437=require_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_list1437.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1660:33: SSL_SYMBOL
            	    {
            	        SSL_SYMBOL1438 = (pANTLR3_COMMON_TOKEN) MATCHT(SSL_SYMBOL, &FOLLOW_SSL_SYMBOL_in_require_clause7832);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SSL_SYMBOL1438_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SSL_SYMBOL1438));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SSL_SYMBOL1438_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1660:46: X509_SYMBOL
            	    {
            	        X509_SYMBOL1439 = (pANTLR3_COMMON_TOKEN) MATCHT(X509_SYMBOL, &FOLLOW_X509_SYMBOL_in_require_clause7836);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        X509_SYMBOL1439_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, X509_SYMBOL1439));
            	        ADAPTOR->addChild(ADAPTOR, root_0, X509_SYMBOL1439_tree);
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1660:60: NONE_SYMBOL
            	    {
            	        NONE_SYMBOL1440 = (pANTLR3_COMMON_TOKEN) MATCHT(NONE_SYMBOL, &FOLLOW_NONE_SYMBOL_in_require_clause7840);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        NONE_SYMBOL1440_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NONE_SYMBOL1440));
            	        ADAPTOR->addChild(ADAPTOR, root_0, NONE_SYMBOL1440_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulerequire_clauseEx; /* Prevent compiler warnings */
    rulerequire_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 require_clause */

/**
 * $ANTLR start connect_options
 * MySQL.g:1663:1: connect_options : WITH_SYMBOL ( MAX_QUERIES_PER_HOUR_SYMBOL ulong_number | MAX_UPDATES_PER_HOUR_SYMBOL ulong_number | MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number | MAX_USER_CONNECTIONS_SYMBOL ulong_number )+ ;
 */
static MySQLParser_connect_options_return
connect_options(pMySQLParser ctx)
{
    MySQLParser_connect_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1441;
    pANTLR3_COMMON_TOKEN    MAX_QUERIES_PER_HOUR_SYMBOL1442;
    pANTLR3_COMMON_TOKEN    MAX_UPDATES_PER_HOUR_SYMBOL1444;
    pANTLR3_COMMON_TOKEN    MAX_CONNECTIONS_PER_HOUR_SYMBOL1446;
    pANTLR3_COMMON_TOKEN    MAX_USER_CONNECTIONS_SYMBOL1448;
    MySQLParser_ulong_number_return ulong_number1443;
    #undef	RETURN_TYPE_ulong_number1443
    #define	RETURN_TYPE_ulong_number1443 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1445;
    #undef	RETURN_TYPE_ulong_number1445
    #define	RETURN_TYPE_ulong_number1445 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1447;
    #undef	RETURN_TYPE_ulong_number1447
    #define	RETURN_TYPE_ulong_number1447 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1449;
    #undef	RETURN_TYPE_ulong_number1449
    #define	RETURN_TYPE_ulong_number1449 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE WITH_SYMBOL1441_tree;
    pANTLR3_BASE_TREE MAX_QUERIES_PER_HOUR_SYMBOL1442_tree;
    pANTLR3_BASE_TREE MAX_UPDATES_PER_HOUR_SYMBOL1444_tree;
    pANTLR3_BASE_TREE MAX_CONNECTIONS_PER_HOUR_SYMBOL1446_tree;
    pANTLR3_BASE_TREE MAX_USER_CONNECTIONS_SYMBOL1448_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL1441       = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1442       = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1444       = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1446       = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1448       = NULL;
    ulong_number1443.tree = NULL;

    ulong_number1445.tree = NULL;

    ulong_number1447.tree = NULL;

    ulong_number1449.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL1441_tree   = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1442_tree   = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1444_tree   = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1446_tree   = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1448_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1663:16: ( WITH_SYMBOL ( MAX_QUERIES_PER_HOUR_SYMBOL ulong_number | MAX_UPDATES_PER_HOUR_SYMBOL ulong_number | MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number | MAX_USER_CONNECTIONS_SYMBOL ulong_number )+ )
        // MySQL.g:1664:2: WITH_SYMBOL ( MAX_QUERIES_PER_HOUR_SYMBOL ulong_number | MAX_UPDATES_PER_HOUR_SYMBOL ulong_number | MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number | MAX_USER_CONNECTIONS_SYMBOL ulong_number )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WITH_SYMBOL1441 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_connect_options7850);
            if  (HASEXCEPTION())
            {
                goto ruleconnect_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WITH_SYMBOL1441_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1441));
            ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1441_tree);
            }

            // MySQL.g:1665:2: ( MAX_QUERIES_PER_HOUR_SYMBOL ulong_number | MAX_UPDATES_PER_HOUR_SYMBOL ulong_number | MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number | MAX_USER_CONNECTIONS_SYMBOL ulong_number )+
            {
                int cnt473=0;

                for (;;)
                {
                    int alt473=5;
            	switch ( LA(1) )
            	{
            	case MAX_QUERIES_PER_HOUR_SYMBOL:
            		{
            			alt473=1;
            		}
            	    break;
            	case MAX_UPDATES_PER_HOUR_SYMBOL:
            		{
            			alt473=2;
            		}
            	    break;
            	case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            		{
            			alt473=3;
            		}
            	    break;
            	case MAX_USER_CONNECTIONS_SYMBOL:
            		{
            			alt473=4;
            		}
            	    break;

            	}

            	switch (alt473)
            	{
            	    case 1:
            	        // MySQL.g:1666:3: MAX_QUERIES_PER_HOUR_SYMBOL ulong_number
            	        {
            	            MAX_QUERIES_PER_HOUR_SYMBOL1442 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_QUERIES_PER_HOUR_SYMBOL, &FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_connect_options7857);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            MAX_QUERIES_PER_HOUR_SYMBOL1442_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_QUERIES_PER_HOUR_SYMBOL1442));
            	            ADAPTOR->addChild(ADAPTOR, root_0, MAX_QUERIES_PER_HOUR_SYMBOL1442_tree);
            	            }

            	            FOLLOWPUSH(FOLLOW_ulong_number_in_connect_options7859);
            	            ulong_number1443=ulong_number(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1443.tree);

            	        }
            	        break;
            	    case 2:
            	        // MySQL.g:1667:5: MAX_UPDATES_PER_HOUR_SYMBOL ulong_number
            	        {
            	            MAX_UPDATES_PER_HOUR_SYMBOL1444 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_UPDATES_PER_HOUR_SYMBOL, &FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_connect_options7865);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            MAX_UPDATES_PER_HOUR_SYMBOL1444_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_UPDATES_PER_HOUR_SYMBOL1444));
            	            ADAPTOR->addChild(ADAPTOR, root_0, MAX_UPDATES_PER_HOUR_SYMBOL1444_tree);
            	            }

            	            FOLLOWPUSH(FOLLOW_ulong_number_in_connect_options7867);
            	            ulong_number1445=ulong_number(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1445.tree);

            	        }
            	        break;
            	    case 3:
            	        // MySQL.g:1668:5: MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number
            	        {
            	            MAX_CONNECTIONS_PER_HOUR_SYMBOL1446 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_CONNECTIONS_PER_HOUR_SYMBOL, &FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_connect_options7873);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            MAX_CONNECTIONS_PER_HOUR_SYMBOL1446_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_CONNECTIONS_PER_HOUR_SYMBOL1446));
            	            ADAPTOR->addChild(ADAPTOR, root_0, MAX_CONNECTIONS_PER_HOUR_SYMBOL1446_tree);
            	            }

            	            FOLLOWPUSH(FOLLOW_ulong_number_in_connect_options7875);
            	            ulong_number1447=ulong_number(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1447.tree);

            	        }
            	        break;
            	    case 4:
            	        // MySQL.g:1669:5: MAX_USER_CONNECTIONS_SYMBOL ulong_number
            	        {
            	            MAX_USER_CONNECTIONS_SYMBOL1448 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_USER_CONNECTIONS_SYMBOL, &FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_connect_options7881);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            MAX_USER_CONNECTIONS_SYMBOL1448_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_USER_CONNECTIONS_SYMBOL1448));
            	            ADAPTOR->addChild(ADAPTOR, root_0, MAX_USER_CONNECTIONS_SYMBOL1448_tree);
            	            }

            	            FOLLOWPUSH(FOLLOW_ulong_number_in_connect_options7883);
            	            ulong_number1449=ulong_number(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleconnect_optionsEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1449.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt473 >= 1 )
            		{
            		    goto loop473;
            		}
            		if (BACKTRACKING>0)
            		{
            		    FAILEDFLAG = ANTLR3_TRUE;
            		    return retval;
            		}

            		/* mismatchedSetEx()
            		 */
            		CONSTRUCTEX();
            		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
            		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


            		goto ruleconnect_optionsEx;
            	}
            	cnt473++;
                }
                loop473: ;	/* Jump to here if this rule does not match */
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleconnect_optionsEx; /* Prevent compiler warnings */
    ruleconnect_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 connect_options */

/**
 * $ANTLR start account_lock_password_expire_options
 * MySQL.g:1673:1: account_lock_password_expire_options : ( ACCOUNT_SYMBOL ( LOCK_SYMBOL | UNLOCK_SYMBOL ) | PASSWORD_SYMBOL EXPIRE_SYMBOL ( INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL | NEVER_SYMBOL | DEFAULT_SYMBOL ) );
 */
static MySQLParser_account_lock_password_expire_options_return
account_lock_password_expire_options(pMySQLParser ctx)
{
    MySQLParser_account_lock_password_expire_options_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ACCOUNT_SYMBOL1450;
    pANTLR3_COMMON_TOKEN    set1451;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1452;
    pANTLR3_COMMON_TOKEN    EXPIRE_SYMBOL1453;
    pANTLR3_COMMON_TOKEN    INTERVAL_SYMBOL1454;
    pANTLR3_COMMON_TOKEN    DAY_SYMBOL1456;
    pANTLR3_COMMON_TOKEN    NEVER_SYMBOL1457;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL1458;
    MySQLParser_real_ulong_number_return real_ulong_number1455;
    #undef	RETURN_TYPE_real_ulong_number1455
    #define	RETURN_TYPE_real_ulong_number1455 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE ACCOUNT_SYMBOL1450_tree;
    pANTLR3_BASE_TREE set1451_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1452_tree;
    pANTLR3_BASE_TREE EXPIRE_SYMBOL1453_tree;
    pANTLR3_BASE_TREE INTERVAL_SYMBOL1454_tree;
    pANTLR3_BASE_TREE DAY_SYMBOL1456_tree;
    pANTLR3_BASE_TREE NEVER_SYMBOL1457_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL1458_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ACCOUNT_SYMBOL1450       = NULL;
    set1451       = NULL;
    PASSWORD_SYMBOL1452       = NULL;
    EXPIRE_SYMBOL1453       = NULL;
    INTERVAL_SYMBOL1454       = NULL;
    DAY_SYMBOL1456       = NULL;
    NEVER_SYMBOL1457       = NULL;
    DEFAULT_SYMBOL1458       = NULL;
    real_ulong_number1455.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ACCOUNT_SYMBOL1450_tree   = NULL;
    set1451_tree   = NULL;
    PASSWORD_SYMBOL1452_tree   = NULL;
    EXPIRE_SYMBOL1453_tree   = NULL;
    INTERVAL_SYMBOL1454_tree   = NULL;
    DAY_SYMBOL1456_tree   = NULL;
    NEVER_SYMBOL1457_tree   = NULL;
    DEFAULT_SYMBOL1458_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1673:37: ( ACCOUNT_SYMBOL ( LOCK_SYMBOL | UNLOCK_SYMBOL ) | PASSWORD_SYMBOL EXPIRE_SYMBOL ( INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL | NEVER_SYMBOL | DEFAULT_SYMBOL ) )

            ANTLR3_UINT32 alt475;

            alt475=2;

            switch ( LA(1) )
            {
            case ACCOUNT_SYMBOL:
            	{
            		alt475=1;
            	}
                break;
            case PASSWORD_SYMBOL:
            	{
            		alt475=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 475;
                EXCEPTION->state        = 0;


                goto ruleaccount_lock_password_expire_optionsEx;

            }

            switch (alt475)
            {
        	case 1:
        	    // MySQL.g:1674:2: ACCOUNT_SYMBOL ( LOCK_SYMBOL | UNLOCK_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ACCOUNT_SYMBOL1450 = (pANTLR3_COMMON_TOKEN) MATCHT(ACCOUNT_SYMBOL, &FOLLOW_ACCOUNT_SYMBOL_in_account_lock_password_expire_options7896);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ACCOUNT_SYMBOL1450_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ACCOUNT_SYMBOL1450));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ACCOUNT_SYMBOL1450_tree);
        	        }

        	        set1451=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == LOCK_SYMBOL || LA(1) == UNLOCK_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1451))
        	            );
        	            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 ruleaccount_lock_password_expire_optionsEx;
        	        }


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1675:4: PASSWORD_SYMBOL EXPIRE_SYMBOL ( INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL | NEVER_SYMBOL | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL1452 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_account_lock_password_expire_options7909);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL1452_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1452));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1452_tree);
        	        }

        	        EXPIRE_SYMBOL1453 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPIRE_SYMBOL, &FOLLOW_EXPIRE_SYMBOL_in_account_lock_password_expire_options7911);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXPIRE_SYMBOL1453_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPIRE_SYMBOL1453));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXPIRE_SYMBOL1453_tree);
        	        }

        	        // MySQL.g:1676:3: ( INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL | NEVER_SYMBOL | DEFAULT_SYMBOL )
        	        {
        	            int alt474=3;
        	            switch ( LA(1) )
        	            {
        	            case INTERVAL_SYMBOL:
        	            	{
        	            		alt474=1;
        	            	}
        	                break;
        	            case NEVER_SYMBOL:
        	            	{
        	            		alt474=2;
        	            	}
        	                break;
        	            case DEFAULT_SYMBOL:
        	            	{
        	            		alt474=3;
        	            	}
        	                break;

        	            default:
        	                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 ruleaccount_lock_password_expire_optionsEx;

        	            }

        	            switch (alt474)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1677:4: INTERVAL_SYMBOL real_ulong_number DAY_SYMBOL
        	        	    {
        	        	        INTERVAL_SYMBOL1454 = (pANTLR3_COMMON_TOKEN) MATCHT(INTERVAL_SYMBOL, &FOLLOW_INTERVAL_SYMBOL_in_account_lock_password_expire_options7920);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INTERVAL_SYMBOL1454_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTERVAL_SYMBOL1454));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INTERVAL_SYMBOL1454_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_account_lock_password_expire_options7922);
        	        	        real_ulong_number1455=real_ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number1455.tree);

        	        	        DAY_SYMBOL1456 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SYMBOL, &FOLLOW_DAY_SYMBOL_in_account_lock_password_expire_options7924);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DAY_SYMBOL1456_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SYMBOL1456));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SYMBOL1456_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1678:6: NEVER_SYMBOL
        	        	    {
        	        	        NEVER_SYMBOL1457 = (pANTLR3_COMMON_TOKEN) MATCHT(NEVER_SYMBOL, &FOLLOW_NEVER_SYMBOL_in_account_lock_password_expire_options7931);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NEVER_SYMBOL1457_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NEVER_SYMBOL1457));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NEVER_SYMBOL1457_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1679:6: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL1458 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_account_lock_password_expire_options7938);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaccount_lock_password_expire_optionsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL1458_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL1458));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL1458_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleaccount_lock_password_expire_optionsEx; /* Prevent compiler warnings */
    ruleaccount_lock_password_expire_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 account_lock_password_expire_options */

/**
 * $ANTLR start drop_user
 * MySQL.g:1683:1: drop_user : DROP_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) 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_SYMBOL1459;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1460;
    MySQLParser_if_exists_return if_exists1461;
    #undef	RETURN_TYPE_if_exists1461
    #define	RETURN_TYPE_if_exists1461 MySQLParser_if_exists_return

    MySQLParser_user_list_return user_list1462;
    #undef	RETURN_TYPE_user_list1462
    #define	RETURN_TYPE_user_list1462 MySQLParser_user_list_return

    pANTLR3_BASE_TREE DROP_SYMBOL1459_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1460_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DROP_SYMBOL1459       = NULL;
    USER_SYMBOL1460       = NULL;
    if_exists1461.tree = NULL;

    user_list1462.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DROP_SYMBOL1459_tree   = NULL;
    USER_SYMBOL1460_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1683:10: ( DROP_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) user_list )
        // MySQL.g:1684:2: DROP_SYMBOL ^ USER_SYMBOL ({...}? if_exists |) user_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DROP_SYMBOL1459 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_drop_user7952);
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DROP_SYMBOL1459_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL1459))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DROP_SYMBOL1459_tree, root_0));
            }

            USER_SYMBOL1460 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_drop_user7955);
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1460_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1460));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1460_tree);
            }

            // MySQL.g:1684:27: ({...}? if_exists |)
            {
                int alt476=2;
                {
                    int LA476_0 = LA(1);
                    if ( (LA476_0 == IF_SYMBOL))
                    {
                        alt476=1;
                    }
                    else if ( (((LA476_0 >= ACCOUNT_SYMBOL) && (LA476_0 <= YEAR_SYMBOL)) || LA476_0 == BACK_TICK_QUOTED_ID || LA476_0 == CURRENT_USER_SYMBOL || LA476_0 == DOUBLE_QUOTED_TEXT || LA476_0 == IDENTIFIER || LA476_0 == SINGLE_QUOTED_TEXT))
                    {
                        alt476=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 476;
                        EXCEPTION->state        = 0;


                        goto ruledrop_userEx;

                    }
                }
                switch (alt476)
                {
            	case 1:
            	    // MySQL.g:1684:28: {...}? if_exists
            	    {
            	        if ( !((SERVER_VERSION >= 50706)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50706";
            	                EXCEPTION->ruleName	 = (void *)"drop_user";


            	        }

            	        FOLLOWPUSH(FOLLOW_if_exists_in_drop_user7960);
            	        if_exists1461=if_exists(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledrop_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_exists1461.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1684:78: 
            	    {
            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_user_list_in_drop_user7967);
            user_list1462=user_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledrop_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1462.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 parse_grant
 * MySQL.g:1687:1: parse_grant : grant EOF ;
 */
static MySQLParser_parse_grant_return
parse_grant(pMySQLParser ctx)
{
    MySQLParser_parse_grant_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EOF1464;
    MySQLParser_grant_return grant1463;
    #undef	RETURN_TYPE_grant1463
    #define	RETURN_TYPE_grant1463 MySQLParser_grant_return

    pANTLR3_BASE_TREE EOF1464_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EOF1464       = NULL;
    grant1463.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EOF1464_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1687:12: ( grant EOF )
        // MySQL.g:1688:2: grant EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_grant_in_parse_grant7977);
            grant1463=grant(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleparse_grantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant1463.tree);

            EOF1464 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_parse_grant7979);
            if  (HASEXCEPTION())
            {
                goto ruleparse_grantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF1464_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF1464));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF1464_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleparse_grantEx; /* Prevent compiler warnings */
    ruleparse_grantEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end parse_grant */

/**
 * $ANTLR start grant
 * MySQL.g:1691:1: grant : GRANT_SYMBOL ^ grant_privileges privilege_target TO_SYMBOL grant_list ( require_clause )? ( WITH_SYMBOL ( grant_option )+ )? ;
 */
static MySQLParser_grant_return
grant(pMySQLParser ctx)
{
    MySQLParser_grant_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1465;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1468;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1471;
    MySQLParser_grant_privileges_return grant_privileges1466;
    #undef	RETURN_TYPE_grant_privileges1466
    #define	RETURN_TYPE_grant_privileges1466 MySQLParser_grant_privileges_return

    MySQLParser_privilege_target_return privilege_target1467;
    #undef	RETURN_TYPE_privilege_target1467
    #define	RETURN_TYPE_privilege_target1467 MySQLParser_privilege_target_return

    MySQLParser_grant_list_return grant_list1469;
    #undef	RETURN_TYPE_grant_list1469
    #define	RETURN_TYPE_grant_list1469 MySQLParser_grant_list_return

    MySQLParser_require_clause_return require_clause1470;
    #undef	RETURN_TYPE_require_clause1470
    #define	RETURN_TYPE_require_clause1470 MySQLParser_require_clause_return

    MySQLParser_grant_option_return grant_option1472;
    #undef	RETURN_TYPE_grant_option1472
    #define	RETURN_TYPE_grant_option1472 MySQLParser_grant_option_return

    pANTLR3_BASE_TREE GRANT_SYMBOL1465_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1468_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1471_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1465       = NULL;
    TO_SYMBOL1468       = NULL;
    WITH_SYMBOL1471       = NULL;
    grant_privileges1466.tree = NULL;

    privilege_target1467.tree = NULL;

    grant_list1469.tree = NULL;

    require_clause1470.tree = NULL;

    grant_option1472.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1465_tree   = NULL;
    TO_SYMBOL1468_tree   = NULL;
    WITH_SYMBOL1471_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1691:6: ( GRANT_SYMBOL ^ grant_privileges privilege_target TO_SYMBOL grant_list ( require_clause )? ( WITH_SYMBOL ( grant_option )+ )? )
        // MySQL.g:1692:2: GRANT_SYMBOL ^ grant_privileges privilege_target TO_SYMBOL grant_list ( require_clause )? ( WITH_SYMBOL ( grant_option )+ )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GRANT_SYMBOL1465 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant7988);
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GRANT_SYMBOL1465_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1465))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, GRANT_SYMBOL1465_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_grant_privileges_in_grant7991);
            grant_privileges1466=grant_privileges(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_privileges1466.tree);

            FOLLOWPUSH(FOLLOW_privilege_target_in_grant7993);
            privilege_target1467=privilege_target(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_target1467.tree);

            TO_SYMBOL1468 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_grant7997);
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1468_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1468));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1468_tree);
            }

            FOLLOWPUSH(FOLLOW_grant_list_in_grant7999);
            grant_list1469=grant_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrantEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_list1469.tree);

            // MySQL.g:1693:24: ( require_clause )?
            {
                int alt477=2;
                switch ( LA(1) )
                {
                    case REQUIRE_SYMBOL:
                    	{
                    		alt477=1;
                    	}
                        break;
                }

                switch (alt477)
                {
            	case 1:
            	    // MySQL.g:1693:24: require_clause
            	    {
            	        FOLLOWPUSH(FOLLOW_require_clause_in_grant8001);
            	        require_clause1470=require_clause(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_clause1470.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:1693:40: ( WITH_SYMBOL ( grant_option )+ )?
            {
                int alt479=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt479=1;
                    	}
                        break;
                }

                switch (alt479)
                {
            	case 1:
            	    // MySQL.g:1693:41: WITH_SYMBOL ( grant_option )+
            	    {
            	        WITH_SYMBOL1471 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_grant8005);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrantEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL1471_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1471));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1471_tree);
            	        }

            	        // MySQL.g:1693:53: ( grant_option )+
            	        {
            	            int cnt478=0;

            	            for (;;)
            	            {
            	                int alt478=2;
            	        	switch ( LA(1) )
            	        	{
            	        	case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	        	case MAX_QUERIES_PER_HOUR_SYMBOL:
            	        	case MAX_UPDATES_PER_HOUR_SYMBOL:
            	        	case MAX_USER_CONNECTIONS_SYMBOL:
            	        	case GRANT_SYMBOL:
            	        		{
            	        			alt478=1;
            	        		}
            	        	    break;

            	        	}

            	        	switch (alt478)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:1693:53: grant_option
            	        	        {
            	        	            FOLLOWPUSH(FOLLOW_grant_option_in_grant8007);
            	        	            grant_option1472=grant_option(ctx);

            	        	            FOLLOWPOP();
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto rulegrantEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_option1472.tree);

            	        	        }
            	        	        break;

            	        	    default:

            	        		if ( cnt478 >= 1 )
            	        		{
            	        		    goto loop478;
            	        		}
            	        		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;
            	        	}
            	        	cnt478++;
            	            }
            	            loop478: ;	/* 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:1696:1: grant_proxy : GRANT_SYMBOL ^ PROXY_SYMBOL ON_SYMBOL grant_user TO_SYMBOL grant_user ( COMMA_SYMBOL grant_user )* ( 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_SYMBOL1473;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1474;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1475;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1477;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1479;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1481;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1482;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1483;
    MySQLParser_grant_user_return grant_user1476;
    #undef	RETURN_TYPE_grant_user1476
    #define	RETURN_TYPE_grant_user1476 MySQLParser_grant_user_return

    MySQLParser_grant_user_return grant_user1478;
    #undef	RETURN_TYPE_grant_user1478
    #define	RETURN_TYPE_grant_user1478 MySQLParser_grant_user_return

    MySQLParser_grant_user_return grant_user1480;
    #undef	RETURN_TYPE_grant_user1480
    #define	RETURN_TYPE_grant_user1480 MySQLParser_grant_user_return

    pANTLR3_BASE_TREE GRANT_SYMBOL1473_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1474_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1475_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1477_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1479_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1481_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1482_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1483_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1473       = NULL;
    PROXY_SYMBOL1474       = NULL;
    ON_SYMBOL1475       = NULL;
    TO_SYMBOL1477       = NULL;
    COMMA_SYMBOL1479       = NULL;
    WITH_SYMBOL1481       = NULL;
    GRANT_SYMBOL1482       = NULL;
    OPTION_SYMBOL1483       = NULL;
    grant_user1476.tree = NULL;

    grant_user1478.tree = NULL;

    grant_user1480.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1473_tree   = NULL;
    PROXY_SYMBOL1474_tree   = NULL;
    ON_SYMBOL1475_tree   = NULL;
    TO_SYMBOL1477_tree   = NULL;
    COMMA_SYMBOL1479_tree   = NULL;
    WITH_SYMBOL1481_tree   = NULL;
    GRANT_SYMBOL1482_tree   = NULL;
    OPTION_SYMBOL1483_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1696:12: ( GRANT_SYMBOL ^ PROXY_SYMBOL ON_SYMBOL grant_user TO_SYMBOL grant_user ( COMMA_SYMBOL grant_user )* ( WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL )? )
        // MySQL.g:1697:2: GRANT_SYMBOL ^ PROXY_SYMBOL ON_SYMBOL grant_user TO_SYMBOL grant_user ( COMMA_SYMBOL grant_user )* ( WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GRANT_SYMBOL1473 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_proxy8019);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GRANT_SYMBOL1473_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1473))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, GRANT_SYMBOL1473_tree, root_0));
            }

            PROXY_SYMBOL1474 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_grant_proxy8022);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PROXY_SYMBOL1474_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1474));
            ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1474_tree);
            }

            ON_SYMBOL1475 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_grant_proxy8024);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ON_SYMBOL1475_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1475));
            ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1475_tree);
            }

            FOLLOWPUSH(FOLLOW_grant_user_in_grant_proxy8026);
            grant_user1476=grant_user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user1476.tree);

            TO_SYMBOL1477 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_grant_proxy8028);
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1477_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1477));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1477_tree);
            }

            FOLLOWPUSH(FOLLOW_grant_user_in_grant_proxy8030);
            grant_user1478=grant_user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_proxyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user1478.tree);

            // MySQL.g:1697:71: ( COMMA_SYMBOL grant_user )*

            for (;;)
            {
                int alt480=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt480=1;
                	}
                    break;

                }

                switch (alt480)
                {
            	case 1:
            	    // MySQL.g:1697:72: COMMA_SYMBOL grant_user
            	    {
            	        COMMA_SYMBOL1479 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant_proxy8033);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1479_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1479));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1479_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_grant_user_in_grant_proxy8035);
            	        grant_user1480=grant_user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user1480.tree);

            	    }
            	    break;

            	default:
            	    goto loop480;	/* break out of the loop */
            	    break;
                }
            }
            loop480: ; /* Jump out to here if this rule does not match */


            // MySQL.g:1698:3: ( WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL )?
            {
                int alt481=2;
                switch ( LA(1) )
                {
                    case WITH_SYMBOL:
                    	{
                    		alt481=1;
                    	}
                        break;
                }

                switch (alt481)
                {
            	case 1:
            	    // MySQL.g:1698:4: WITH_SYMBOL GRANT_SYMBOL OPTION_SYMBOL
            	    {
            	        WITH_SYMBOL1481 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_grant_proxy8042);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL1481_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1481));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1481_tree);
            	        }

            	        GRANT_SYMBOL1482 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_proxy8044);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANT_SYMBOL1482_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1482));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1482_tree);
            	        }

            	        OPTION_SYMBOL1483 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_grant_proxy8046);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_proxyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL1483_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1483));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1483_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:1701: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_SYMBOL1484;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1485;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1487;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1489;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1491;
    MySQLParser_user_return user1486;
    #undef	RETURN_TYPE_user1486
    #define	RETURN_TYPE_user1486 MySQLParser_user_return

    MySQLParser_user_return user1488;
    #undef	RETURN_TYPE_user1488
    #define	RETURN_TYPE_user1488 MySQLParser_user_return

    MySQLParser_user_return user1490;
    #undef	RETURN_TYPE_user1490
    #define	RETURN_TYPE_user1490 MySQLParser_user_return

    MySQLParser_user_return user1492;
    #undef	RETURN_TYPE_user1492
    #define	RETURN_TYPE_user1492 MySQLParser_user_return

    pANTLR3_BASE_TREE RENAME_SYMBOL1484_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1485_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1487_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1489_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1491_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RENAME_SYMBOL1484       = NULL;
    USER_SYMBOL1485       = NULL;
    TO_SYMBOL1487       = NULL;
    COMMA_SYMBOL1489       = NULL;
    TO_SYMBOL1491       = NULL;
    user1486.tree = NULL;

    user1488.tree = NULL;

    user1490.tree = NULL;

    user1492.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RENAME_SYMBOL1484_tree   = NULL;
    USER_SYMBOL1485_tree   = NULL;
    TO_SYMBOL1487_tree   = NULL;
    COMMA_SYMBOL1489_tree   = NULL;
    TO_SYMBOL1491_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1701:12: ( RENAME_SYMBOL ^ USER_SYMBOL user TO_SYMBOL user ( COMMA_SYMBOL user TO_SYMBOL user )* )
        // MySQL.g:1702:2: RENAME_SYMBOL ^ USER_SYMBOL user TO_SYMBOL user ( COMMA_SYMBOL user TO_SYMBOL user )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RENAME_SYMBOL1484 = (pANTLR3_COMMON_TOKEN) MATCHT(RENAME_SYMBOL, &FOLLOW_RENAME_SYMBOL_in_rename_user8057);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RENAME_SYMBOL1484_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RENAME_SYMBOL1484))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RENAME_SYMBOL1484_tree, root_0));
            }

            USER_SYMBOL1485 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_rename_user8060);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            USER_SYMBOL1485_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1485));
            ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1485_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_rename_user8062);
            user1486=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1486.tree);

            TO_SYMBOL1487 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_user8064);
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TO_SYMBOL1487_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1487));
            ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1487_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_rename_user8066);
            user1488=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerename_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1488.tree);

            // MySQL.g:1702:49: ( COMMA_SYMBOL user TO_SYMBOL user )*

            for (;;)
            {
                int alt482=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt482=1;
                	}
                    break;

                }

                switch (alt482)
                {
            	case 1:
            	    // MySQL.g:1702:50: COMMA_SYMBOL user TO_SYMBOL user
            	    {
            	        COMMA_SYMBOL1489 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_rename_user8069);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1489_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1489));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1489_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_rename_user8071);
            	        user1490=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1490.tree);

            	        TO_SYMBOL1491 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_rename_user8073);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TO_SYMBOL1491_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1491));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1491_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_rename_user8075);
            	        user1492=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerename_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1492.tree);

            	    }
            	    break;

            	default:
            	    goto loop482;	/* break out of the loop */
            	    break;
                }
            }
            loop482: ; /* 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:1705:1: revoke_statement : REVOKE_SYMBOL ^ ({...}? => ALL_SYMBOL ( PRIVILEGES_SYMBOL )? COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list | grant_privileges privilege_target 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_SYMBOL1493;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1494;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1495;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1496;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1497;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1498;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1499;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1503;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1505;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1506;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1508;
    MySQLParser_user_list_return user_list1500;
    #undef	RETURN_TYPE_user_list1500
    #define	RETURN_TYPE_user_list1500 MySQLParser_user_list_return

    MySQLParser_grant_privileges_return grant_privileges1501;
    #undef	RETURN_TYPE_grant_privileges1501
    #define	RETURN_TYPE_grant_privileges1501 MySQLParser_grant_privileges_return

    MySQLParser_privilege_target_return privilege_target1502;
    #undef	RETURN_TYPE_privilege_target1502
    #define	RETURN_TYPE_privilege_target1502 MySQLParser_privilege_target_return

    MySQLParser_user_list_return user_list1504;
    #undef	RETURN_TYPE_user_list1504
    #define	RETURN_TYPE_user_list1504 MySQLParser_user_list_return

    MySQLParser_user_return user1507;
    #undef	RETURN_TYPE_user1507
    #define	RETURN_TYPE_user1507 MySQLParser_user_return

    MySQLParser_user_list_return user_list1509;
    #undef	RETURN_TYPE_user_list1509
    #define	RETURN_TYPE_user_list1509 MySQLParser_user_list_return

    pANTLR3_BASE_TREE REVOKE_SYMBOL1493_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1494_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1495_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1496_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1497_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1498_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1499_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1503_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1505_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1506_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1508_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REVOKE_SYMBOL1493       = NULL;
    ALL_SYMBOL1494       = NULL;
    PRIVILEGES_SYMBOL1495       = NULL;
    COMMA_SYMBOL1496       = NULL;
    GRANT_SYMBOL1497       = NULL;
    OPTION_SYMBOL1498       = NULL;
    FROM_SYMBOL1499       = NULL;
    FROM_SYMBOL1503       = NULL;
    PROXY_SYMBOL1505       = NULL;
    ON_SYMBOL1506       = NULL;
    FROM_SYMBOL1508       = NULL;
    user_list1500.tree = NULL;

    grant_privileges1501.tree = NULL;

    privilege_target1502.tree = NULL;

    user_list1504.tree = NULL;

    user1507.tree = NULL;

    user_list1509.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REVOKE_SYMBOL1493_tree   = NULL;
    ALL_SYMBOL1494_tree   = NULL;
    PRIVILEGES_SYMBOL1495_tree   = NULL;
    COMMA_SYMBOL1496_tree   = NULL;
    GRANT_SYMBOL1497_tree   = NULL;
    OPTION_SYMBOL1498_tree   = NULL;
    FROM_SYMBOL1499_tree   = NULL;
    FROM_SYMBOL1503_tree   = NULL;
    PROXY_SYMBOL1505_tree   = NULL;
    ON_SYMBOL1506_tree   = NULL;
    FROM_SYMBOL1508_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1705:17: ( REVOKE_SYMBOL ^ ({...}? => ALL_SYMBOL ( PRIVILEGES_SYMBOL )? COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list | grant_privileges privilege_target FROM_SYMBOL user_list |{...}? PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list ) )
        // MySQL.g:1706:2: REVOKE_SYMBOL ^ ({...}? => ALL_SYMBOL ( PRIVILEGES_SYMBOL )? COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list | grant_privileges privilege_target FROM_SYMBOL user_list |{...}? PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REVOKE_SYMBOL1493 = (pANTLR3_COMMON_TOKEN) MATCHT(REVOKE_SYMBOL, &FOLLOW_REVOKE_SYMBOL_in_revoke_statement8086);
            if  (HASEXCEPTION())
            {
                goto rulerevoke_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REVOKE_SYMBOL1493_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVOKE_SYMBOL1493))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REVOKE_SYMBOL1493_tree, root_0));
            }

            // MySQL.g:1707:2: ({...}? => ALL_SYMBOL ( PRIVILEGES_SYMBOL )? COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list | grant_privileges privilege_target FROM_SYMBOL user_list |{...}? PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list )
            {
                int alt484=3;
                switch ( LA(1) )
                {
                case ALL_SYMBOL:
                	{
                		{
                		    int LA484_1 = LA(2);
                		    if ( (LA484_1 == PRIVILEGES_SYMBOL))
                		    {
                		        {
                		            int LA484_25 = LA(3);
                		            if ( ((LA(1) == ALL_SYMBOL)))
                		            {
                		                alt484=1;
                		            }
                		            else if ( (ANTLR3_TRUE))
                		            {
                		                alt484=2;
                		            }
                		            else
                		            {
                		                if (BACKTRACKING>0)
                		                {
                		                    FAILEDFLAG = ANTLR3_TRUE;
                		                    return retval;
                		                }


                		                CONSTRUCTEX();
                		                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		                EXCEPTION->message      = (void *)"";
                		                EXCEPTION->decisionNum  = 484;
                		                EXCEPTION->state        = 25;


                		                goto rulerevoke_statementEx;

                		            }
                		        }
                		    }
                		    else if ( ((LA(1) == ALL_SYMBOL)) && (LA484_1 == COMMA_SYMBOL))
                		    {
                		        alt484=1;
                		    }
                		    else if ( (LA484_1 == ON_SYMBOL))
                		    {
                		        alt484=2;
                		    }
                		    else
                		    {
                		        if (BACKTRACKING>0)
                		        {
                		            FAILEDFLAG = ANTLR3_TRUE;
                		            return retval;
                		        }


                		        CONSTRUCTEX();
                		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		        EXCEPTION->message      = (void *)"";
                		        EXCEPTION->decisionNum  = 484;
                		        EXCEPTION->state        = 1;


                		        goto rulerevoke_statementEx;

                		    }
                		}
                	}
                    break;
                case EXECUTE_SYMBOL:
                case EVENT_SYMBOL:
                case FILE_SYMBOL:
                case PROCESS_SYMBOL:
                case RELOAD_SYMBOL:
                case REPLICATION_SYMBOL:
                case SHUTDOWN_SYMBOL:
                case SUPER_SYMBOL:
                case ALTER_SYMBOL:
                case CREATE_SYMBOL:
                case DELETE_SYMBOL:
                case DROP_SYMBOL:
                case GRANT_SYMBOL:
                case INDEX_SYMBOL:
                case INSERT_SYMBOL:
                case LOCK_SYMBOL:
                case REFERENCES_SYMBOL:
                case SELECT_SYMBOL:
                case SHOW_SYMBOL:
                case TRIGGER_SYMBOL:
                case UPDATE_SYMBOL:
                case USAGE_SYMBOL:
                	{
                		alt484=2;
                	}
                    break;
                case PROXY_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case ON_SYMBOL:
                			{
                				{
                				    int LA484_28 = LA(3);
                				    if ( (!( ((SERVER_VERSION >= 50500)) )))
                				    {
                				        alt484=2;
                				    }
                				    else if ( ((SERVER_VERSION >= 50500)))
                				    {
                				        alt484=3;
                				    }
                				    else
                				    {
                				        if (BACKTRACKING>0)
                				        {
                				            FAILEDFLAG = ANTLR3_TRUE;
                				            return retval;
                				        }


                				        CONSTRUCTEX();
                				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                				        EXCEPTION->message      = (void *)"";
                				        EXCEPTION->decisionNum  = 484;
                				        EXCEPTION->state        = 28;


                				        goto rulerevoke_statementEx;

                				    }
                				}
                			}
                		    break;
                		case COMMA_SYMBOL:
                			{
                				alt484=2;
                			}
                		    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        = 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  = 484;
                    EXCEPTION->state        = 0;


                    goto rulerevoke_statementEx;

                }

                switch (alt484)
                {
            	case 1:
            	    // MySQL.g:1708:3: {...}? => ALL_SYMBOL ( PRIVILEGES_SYMBOL )? COMMA_SYMBOL GRANT_SYMBOL OPTION_SYMBOL FROM_SYMBOL user_list
            	    {
            	        if ( !((LA(1) == ALL_SYMBOL)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"LA(1) == ALL_SYMBOL";
            	                EXCEPTION->ruleName	 = (void *)"revoke_statement";


            	        }

            	        ALL_SYMBOL1494 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_revoke_statement8098);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ALL_SYMBOL1494_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1494));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1494_tree);
            	        }

            	        // MySQL.g:1708:40: ( PRIVILEGES_SYMBOL )?
            	        {
            	            int alt483=2;
            	            switch ( LA(1) )
            	            {
            	                case PRIVILEGES_SYMBOL:
            	                	{
            	                		alt483=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt483)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1708:40: PRIVILEGES_SYMBOL
            	        	    {
            	        	        PRIVILEGES_SYMBOL1495 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_revoke_statement8100);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulerevoke_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PRIVILEGES_SYMBOL1495_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1495));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1495_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        COMMA_SYMBOL1496 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_revoke_statement8103);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1496_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1496));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1496_tree);
            	        }

            	        GRANT_SYMBOL1497 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_revoke_statement8105);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANT_SYMBOL1497_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1497));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1497_tree);
            	        }

            	        OPTION_SYMBOL1498 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_revoke_statement8107);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPTION_SYMBOL1498_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1498));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1498_tree);
            	        }

            	        FROM_SYMBOL1499 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement8109);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1499_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1499));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1499_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_list_in_revoke_statement8111);
            	        user_list1500=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1500.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1709:5: grant_privileges privilege_target FROM_SYMBOL user_list
            	    {
            	        FOLLOWPUSH(FOLLOW_grant_privileges_in_revoke_statement8117);
            	        grant_privileges1501=grant_privileges(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_privileges1501.tree);

            	        FOLLOWPUSH(FOLLOW_privilege_target_in_revoke_statement8119);
            	        privilege_target1502=privilege_target(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_target1502.tree);

            	        FROM_SYMBOL1503 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement8121);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_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_user_list_in_revoke_statement8123);
            	        user_list1504=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1504.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1710:5: {...}? PROXY_SYMBOL ON_SYMBOL user FROM_SYMBOL user_list
            	    {
            	        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 *)"revoke_statement";


            	        }

            	        PROXY_SYMBOL1505 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_revoke_statement8131);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROXY_SYMBOL1505_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1505));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1505_tree);
            	        }

            	        ON_SYMBOL1506 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_revoke_statement8133);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL1506_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1506));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1506_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_revoke_statement8135);
            	        user1507=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1507.tree);

            	        FROM_SYMBOL1508 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_revoke_statement8137);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL1508_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1508));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1508_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_list_in_revoke_statement8139);
            	        user_list1509=user_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerevoke_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_list1509.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 privilege_target
 * MySQL.g:1714:1: privilege_target : ON_SYMBOL grant_object_type privilege_level -> ^( PRIVILEGE_TARGET_TOKEN ON_SYMBOL grant_object_type privilege_level ) ;
 */
static MySQLParser_privilege_target_return
privilege_target(pMySQLParser ctx)
{
    MySQLParser_privilege_target_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ON_SYMBOL1510;
    MySQLParser_grant_object_type_return grant_object_type1511;
    #undef	RETURN_TYPE_grant_object_type1511
    #define	RETURN_TYPE_grant_object_type1511 MySQLParser_grant_object_type_return

    MySQLParser_privilege_level_return privilege_level1512;
    #undef	RETURN_TYPE_privilege_level1512
    #define	RETURN_TYPE_privilege_level1512 MySQLParser_privilege_level_return

    pANTLR3_BASE_TREE ON_SYMBOL1510_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_ON_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_privilege_level;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_grant_object_type;
    /* Initialize rule variables
     */

    root_0 = NULL;

    ON_SYMBOL1510       = NULL;
    grant_object_type1511.tree = NULL;

    privilege_level1512.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ON_SYMBOL1510_tree   = NULL;

    stream_ON_SYMBOL   = NULL;
    #define CREATE_stream_ON_SYMBOL  if (stream_ON_SYMBOL == NULL) {stream_ON_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token ON_SYMBOL"); } 
    stream_privilege_level   = NULL;
    #define CREATE_stream_privilege_level  if (stream_privilege_level == NULL) {stream_privilege_level = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule privilege_level"); }
    stream_grant_object_type   = NULL;
    #define CREATE_stream_grant_object_type  if (stream_grant_object_type == NULL) {stream_grant_object_type = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule grant_object_type"); }

    retval.tree  = NULL;

    {
        // MySQL.g:1714:17: ( ON_SYMBOL grant_object_type privilege_level -> ^( PRIVILEGE_TARGET_TOKEN ON_SYMBOL grant_object_type privilege_level ) )
        // MySQL.g:1715:2: ON_SYMBOL grant_object_type privilege_level
        {
            ON_SYMBOL1510 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_privilege_target8151);
            if  (HASEXCEPTION())
            {
                goto ruleprivilege_targetEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_ON_SYMBOL; stream_ON_SYMBOL->add(stream_ON_SYMBOL, ON_SYMBOL1510, NULL); }


            FOLLOWPUSH(FOLLOW_grant_object_type_in_privilege_target8153);
            grant_object_type1511=grant_object_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprivilege_targetEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_grant_object_type; stream_grant_object_type->add(stream_grant_object_type, grant_object_type1511.tree, NULL); }

            FOLLOWPUSH(FOLLOW_privilege_level_in_privilege_target8155);
            privilege_level1512=privilege_level(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprivilege_targetEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_privilege_level; stream_privilege_level->add(stream_privilege_level, privilege_level1512.tree, NULL); }

            /* AST REWRITE
             * elements          : grant_object_type, privilege_level, ON_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;
            	// 1715:46: -> ^( PRIVILEGE_TARGET_TOKEN ON_SYMBOL grant_object_type privilege_level )
            	{
            	    // MySQL.g:1715:49: ^( PRIVILEGE_TARGET_TOKEN ON_SYMBOL grant_object_type privilege_level )
            	    {
            	        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, PRIVILEGE_TARGET_TOKEN, (pANTLR3_UINT8)"PRIVILEGE_TARGET_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_ON_SYMBOL == NULL ? NULL : stream_ON_SYMBOL->nextNode(stream_ON_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_grant_object_type == NULL ? NULL : stream_grant_object_type->nextTree(stream_grant_object_type));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_privilege_level == NULL ? NULL : stream_privilege_level->nextTree(stream_privilege_level));

            	        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 ruleprivilege_targetEx; /* Prevent compiler warnings */
    ruleprivilege_targetEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	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_ON_SYMBOL != NULL) stream_ON_SYMBOL->free(stream_ON_SYMBOL);
        if (stream_privilege_level != NULL) stream_privilege_level->free(stream_privilege_level);
        if (stream_grant_object_type != NULL) stream_grant_object_type->free(stream_grant_object_type);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end privilege_target */

/**
 * $ANTLR start set_password
 * MySQL.g:1718:1: set_password : SET_SYMBOL ^ PASSWORD_SYMBOL ( FOR_SYMBOL user )? equal ( PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL |{...}? OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL | text_string ) ;
 */
static MySQLParser_set_password_return
set_password(pMySQLParser ctx)
{
    MySQLParser_set_password_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SET_SYMBOL1513;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1514;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1515;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL1518;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1519;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1521;
    pANTLR3_COMMON_TOKEN    OLD_PASSWORD_SYMBOL1522;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1523;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1525;
    MySQLParser_user_return user1516;
    #undef	RETURN_TYPE_user1516
    #define	RETURN_TYPE_user1516 MySQLParser_user_return

    MySQLParser_equal_return equal1517;
    #undef	RETURN_TYPE_equal1517
    #define	RETURN_TYPE_equal1517 MySQLParser_equal_return

    MySQLParser_text_string_return text_string1520;
    #undef	RETURN_TYPE_text_string1520
    #define	RETURN_TYPE_text_string1520 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1524;
    #undef	RETURN_TYPE_text_string1524
    #define	RETURN_TYPE_text_string1524 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1526;
    #undef	RETURN_TYPE_text_string1526
    #define	RETURN_TYPE_text_string1526 MySQLParser_text_string_return

    pANTLR3_BASE_TREE SET_SYMBOL1513_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1514_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1515_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL1518_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1519_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1521_tree;
    pANTLR3_BASE_TREE OLD_PASSWORD_SYMBOL1522_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1523_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1525_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SET_SYMBOL1513       = NULL;
    PASSWORD_SYMBOL1514       = NULL;
    FOR_SYMBOL1515       = NULL;
    PASSWORD_SYMBOL1518       = NULL;
    OPEN_PAR_SYMBOL1519       = NULL;
    CLOSE_PAR_SYMBOL1521       = NULL;
    OLD_PASSWORD_SYMBOL1522       = NULL;
    OPEN_PAR_SYMBOL1523       = NULL;
    CLOSE_PAR_SYMBOL1525       = NULL;
    user1516.tree = NULL;

    equal1517.tree = NULL;

    text_string1520.tree = NULL;

    text_string1524.tree = NULL;

    text_string1526.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SET_SYMBOL1513_tree   = NULL;
    PASSWORD_SYMBOL1514_tree   = NULL;
    FOR_SYMBOL1515_tree   = NULL;
    PASSWORD_SYMBOL1518_tree   = NULL;
    OPEN_PAR_SYMBOL1519_tree   = NULL;
    CLOSE_PAR_SYMBOL1521_tree   = NULL;
    OLD_PASSWORD_SYMBOL1522_tree   = NULL;
    OPEN_PAR_SYMBOL1523_tree   = NULL;
    CLOSE_PAR_SYMBOL1525_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1718:13: ( SET_SYMBOL ^ PASSWORD_SYMBOL ( FOR_SYMBOL user )? equal ( PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL |{...}? OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL | text_string ) )
        // MySQL.g:1719:2: SET_SYMBOL ^ PASSWORD_SYMBOL ( FOR_SYMBOL user )? equal ( PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL |{...}? OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL | text_string )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SET_SYMBOL1513 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_set_password8176);
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL1513_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1513))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SET_SYMBOL1513_tree, root_0));
            }

            PASSWORD_SYMBOL1514 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_set_password8179);
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PASSWORD_SYMBOL1514_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1514));
            ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1514_tree);
            }

            // MySQL.g:1719:30: ( FOR_SYMBOL user )?
            {
                int alt485=2;
                switch ( LA(1) )
                {
                    case FOR_SYMBOL:
                    	{
                    		alt485=1;
                    	}
                        break;
                }

                switch (alt485)
                {
            	case 1:
            	    // MySQL.g:1719:31: FOR_SYMBOL user
            	    {
            	        FOR_SYMBOL1515 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_set_password8182);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FOR_SYMBOL1515_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1515));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1515_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_set_password8184);
            	        user1516=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1516.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_equal_in_set_password8188);
            equal1517=equal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleset_passwordEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1517.tree);

            // MySQL.g:1720:2: ( PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL |{...}? OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL | text_string )
            {
                int alt486=3;
                switch ( LA(1) )
                {
                case PASSWORD_SYMBOL:
                	{
                		alt486=1;
                	}
                    break;
                case OLD_PASSWORD_SYMBOL:
                	{
                		alt486=2;
                	}
                    break;
                case BIN_NUMBER:
                case HEX_NUMBER:
                case SINGLE_QUOTED_TEXT:
                	{
                		alt486=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 486;
                    EXCEPTION->state        = 0;


                    goto ruleset_passwordEx;

                }

                switch (alt486)
                {
            	case 1:
            	    // MySQL.g:1721:3: PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL
            	    {
            	        PASSWORD_SYMBOL1518 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_set_password8195);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PASSWORD_SYMBOL1518_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL1518));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL1518_tree);
            	        }

            	        OPEN_PAR_SYMBOL1519 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_set_password8197);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL1519_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1519));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1519_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_string_in_set_password8199);
            	        text_string1520=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1520.tree);

            	        CLOSE_PAR_SYMBOL1521 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8201);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL1521_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1521));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1521_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1722:5: {...}? OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL text_string CLOSE_PAR_SYMBOL
            	    {
            	        if ( !((SERVER_VERSION < 50706)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50706";
            	                EXCEPTION->ruleName	 = (void *)"set_password";


            	        }

            	        OLD_PASSWORD_SYMBOL1522 = (pANTLR3_COMMON_TOKEN) MATCHT(OLD_PASSWORD_SYMBOL, &FOLLOW_OLD_PASSWORD_SYMBOL_in_set_password8209);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OLD_PASSWORD_SYMBOL1522_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OLD_PASSWORD_SYMBOL1522));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OLD_PASSWORD_SYMBOL1522_tree);
            	        }

            	        OPEN_PAR_SYMBOL1523 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_set_password8211);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL1523_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1523));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1523_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_string_in_set_password8213);
            	        text_string1524=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1524.tree);

            	        CLOSE_PAR_SYMBOL1525 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_set_password8215);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL1525_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1525));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1525_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1723:5: text_string
            	    {
            	        FOLLOWPUSH(FOLLOW_text_string_in_set_password8221);
            	        text_string1526=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_passwordEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1526.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:1727: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    TABLE_SYMBOL1527;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1528;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1529;

    pANTLR3_BASE_TREE TABLE_SYMBOL1527_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1528_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1529_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLE_SYMBOL1527       = NULL;
    FUNCTION_SYMBOL1528       = NULL;
    PROCEDURE_SYMBOL1529       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TABLE_SYMBOL1527_tree   = NULL;
    FUNCTION_SYMBOL1528_tree   = NULL;
    PROCEDURE_SYMBOL1529_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1727:18: ( ( ( TABLE_SYMBOL )? | FUNCTION_SYMBOL | PROCEDURE_SYMBOL ) )
        // MySQL.g:1728:2: ( ( TABLE_SYMBOL )? | FUNCTION_SYMBOL | PROCEDURE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:1728:2: ( ( TABLE_SYMBOL )? | FUNCTION_SYMBOL | PROCEDURE_SYMBOL )
            {
                int alt488=3;
                {
                    int LA488_0 = LA(1);
                    if ( (((LA488_0 >= ACCOUNT_SYMBOL) && (LA488_0 <= UDF_RETURNS_SYMBOL)) || ((LA488_0 >= UNCOMMITTED_SYMBOL) && (LA488_0 <= YEAR_SYMBOL)) || LA488_0 == BACK_TICK_QUOTED_ID || LA488_0 == DOUBLE_QUOTED_TEXT || LA488_0 == IDENTIFIER || LA488_0 == MULT_OPERATOR || LA488_0 == TABLE_SYMBOL))
                    {
                        alt488=1;
                    }
                    else if ( (LA488_0 == FUNCTION_SYMBOL))
                    {
                        {
                            int LA488_6 = LA(2);
                            if ( (LA488_6 == DOT_SYMBOL || LA488_6 == FROM_SYMBOL || LA488_6 == TO_SYMBOL))
                            {
                                alt488=1;
                            }
                            else if ( (((LA488_6 >= ACCOUNT_SYMBOL) && (LA488_6 <= YEAR_SYMBOL)) || LA488_6 == BACK_TICK_QUOTED_ID || LA488_6 == DOUBLE_QUOTED_TEXT || LA488_6 == IDENTIFIER || LA488_6 == MULT_OPERATOR))
                            {
                                alt488=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 488;
                                EXCEPTION->state        = 6;


                                goto rulegrant_object_typeEx;

                            }
                        }
                    }
                    else if ( (LA488_0 == PROCEDURE_SYMBOL))
                    {
                        alt488=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 488;
                        EXCEPTION->state        = 0;


                        goto rulegrant_object_typeEx;

                    }
                }
                switch (alt488)
                {
            	case 1:
            	    // MySQL.g:1728:3: ( TABLE_SYMBOL )?
            	    {
            	        // MySQL.g:1728:3: ( TABLE_SYMBOL )?
            	        {
            	            int alt487=2;
            	            switch ( LA(1) )
            	            {
            	                case TABLE_SYMBOL:
            	                	{
            	                		alt487=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt487)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1728:3: TABLE_SYMBOL
            	        	    {
            	        	        TABLE_SYMBOL1527 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_grant_object_type8234);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_object_typeEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TABLE_SYMBOL1527_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1527));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1527_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1728:19: FUNCTION_SYMBOL
            	    {
            	        FUNCTION_SYMBOL1528 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_grant_object_type8239);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_object_typeEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL1528_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1528));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1528_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1728:37: PROCEDURE_SYMBOL
            	    {
            	        PROCEDURE_SYMBOL1529 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_grant_object_type8243);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_object_typeEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCEDURE_SYMBOL1529_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1529));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1529_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // 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 grant_privileges
 * MySQL.g:1731:1: grant_privileges : ( ALL_SYMBOL ( PRIVILEGES_SYMBOL )? | privilege_type ( COMMA_SYMBOL privilege_type )* );
 */
static MySQLParser_grant_privileges_return
grant_privileges(pMySQLParser ctx)
{
    MySQLParser_grant_privileges_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1530;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1531;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1533;
    MySQLParser_privilege_type_return privilege_type1532;
    #undef	RETURN_TYPE_privilege_type1532
    #define	RETURN_TYPE_privilege_type1532 MySQLParser_privilege_type_return

    MySQLParser_privilege_type_return privilege_type1534;
    #undef	RETURN_TYPE_privilege_type1534
    #define	RETURN_TYPE_privilege_type1534 MySQLParser_privilege_type_return

    pANTLR3_BASE_TREE ALL_SYMBOL1530_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1531_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1533_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL1530       = NULL;
    PRIVILEGES_SYMBOL1531       = NULL;
    COMMA_SYMBOL1533       = NULL;
    privilege_type1532.tree = NULL;

    privilege_type1534.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL1530_tree   = NULL;
    PRIVILEGES_SYMBOL1531_tree   = NULL;
    COMMA_SYMBOL1533_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1731:17: ( ALL_SYMBOL ( PRIVILEGES_SYMBOL )? | privilege_type ( COMMA_SYMBOL privilege_type )* )

            ANTLR3_UINT32 alt491;

            alt491=2;

            switch ( LA(1) )
            {
            case ALL_SYMBOL:
            	{
            		alt491=1;
            	}
                break;
            case EXECUTE_SYMBOL:
            case EVENT_SYMBOL:
            case FILE_SYMBOL:
            case PROCESS_SYMBOL:
            case PROXY_SYMBOL:
            case RELOAD_SYMBOL:
            case REPLICATION_SYMBOL:
            case SHUTDOWN_SYMBOL:
            case SUPER_SYMBOL:
            case ALTER_SYMBOL:
            case CREATE_SYMBOL:
            case DELETE_SYMBOL:
            case DROP_SYMBOL:
            case GRANT_SYMBOL:
            case INDEX_SYMBOL:
            case INSERT_SYMBOL:
            case LOCK_SYMBOL:
            case REFERENCES_SYMBOL:
            case SELECT_SYMBOL:
            case SHOW_SYMBOL:
            case TRIGGER_SYMBOL:
            case UPDATE_SYMBOL:
            case USAGE_SYMBOL:
            	{
            		alt491=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 491;
                EXCEPTION->state        = 0;


                goto rulegrant_privilegesEx;

            }

            switch (alt491)
            {
        	case 1:
        	    // MySQL.g:1732:2: ALL_SYMBOL ( PRIVILEGES_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1530 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_grant_privileges8253);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_privilegesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1530_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1530));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1530_tree);
        	        }

        	        // MySQL.g:1732:13: ( PRIVILEGES_SYMBOL )?
        	        {
        	            int alt489=2;
        	            switch ( LA(1) )
        	            {
        	                case PRIVILEGES_SYMBOL:
        	                	{
        	                		alt489=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt489)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1732:13: PRIVILEGES_SYMBOL
        	        	    {
        	        	        PRIVILEGES_SYMBOL1531 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_grant_privileges8255);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegrant_privilegesEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRIVILEGES_SYMBOL1531_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1531));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1531_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1733:4: privilege_type ( COMMA_SYMBOL privilege_type )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_privilege_type_in_grant_privileges8261);
        	        privilege_type1532=privilege_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_privilegesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_type1532.tree);

        	        // MySQL.g:1733:19: ( COMMA_SYMBOL privilege_type )*

        	        for (;;)
        	        {
        	            int alt490=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt490=1;
        	            	}
        	                break;

        	            }

        	            switch (alt490)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1733:20: COMMA_SYMBOL privilege_type
        	        	    {
        	        	        COMMA_SYMBOL1533 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant_privileges8264);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegrant_privilegesEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1533_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1533));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1533_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_privilege_type_in_grant_privileges8266);
        	        	        privilege_type1534=privilege_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegrant_privilegesEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, privilege_type1534.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop490;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop490: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulegrant_privilegesEx; /* Prevent compiler warnings */
    rulegrant_privilegesEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_privileges */

/**
 * $ANTLR start privilege_type
 * MySQL.g:1736:1: privilege_type : ( 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 ( identifier_list_with_parentheses )? | LOCK_SYMBOL TABLES_SYMBOL | PROCESS_SYMBOL | PROXY_SYMBOL | REFERENCES_SYMBOL ( identifier_list_with_parentheses )? | RELOAD_SYMBOL | REPLICATION_SYMBOL ( CLIENT_SYMBOL | SLAVE_SYMBOL ) | SELECT_SYMBOL ( identifier_list_with_parentheses )? | SHOW_SYMBOL DATABASES_SYMBOL | SHOW_SYMBOL VIEW_SYMBOL | SHUTDOWN_SYMBOL | SUPER_SYMBOL | TRIGGER_SYMBOL | UPDATE_SYMBOL ( identifier_list_with_parentheses )? | USAGE_SYMBOL );
 */
static MySQLParser_privilege_type_return
privilege_type(pMySQLParser ctx)
{
    MySQLParser_privilege_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALTER_SYMBOL1535;
    pANTLR3_COMMON_TOKEN    ROUTINE_SYMBOL1536;
    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL1537;
    pANTLR3_COMMON_TOKEN    ROUTINE_SYMBOL1538;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL1539;
    pANTLR3_COMMON_TOKEN    TEMPORARY_SYMBOL1540;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1541;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1542;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL1543;
    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL1544;
    pANTLR3_COMMON_TOKEN    DROP_SYMBOL1545;
    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL1546;
    pANTLR3_COMMON_TOKEN    EXECUTE_SYMBOL1547;
    pANTLR3_COMMON_TOKEN    FILE_SYMBOL1548;
    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1549;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1550;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1551;
    pANTLR3_COMMON_TOKEN    INSERT_SYMBOL1552;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1554;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1555;
    pANTLR3_COMMON_TOKEN    PROCESS_SYMBOL1556;
    pANTLR3_COMMON_TOKEN    PROXY_SYMBOL1557;
    pANTLR3_COMMON_TOKEN    REFERENCES_SYMBOL1558;
    pANTLR3_COMMON_TOKEN    RELOAD_SYMBOL1560;
    pANTLR3_COMMON_TOKEN    REPLICATION_SYMBOL1561;
    pANTLR3_COMMON_TOKEN    set1562;
    pANTLR3_COMMON_TOKEN    SELECT_SYMBOL1563;
    pANTLR3_COMMON_TOKEN    SHOW_SYMBOL1565;
    pANTLR3_COMMON_TOKEN    DATABASES_SYMBOL1566;
    pANTLR3_COMMON_TOKEN    SHOW_SYMBOL1567;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL1568;
    pANTLR3_COMMON_TOKEN    SHUTDOWN_SYMBOL1569;
    pANTLR3_COMMON_TOKEN    SUPER_SYMBOL1570;
    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL1571;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL1572;
    pANTLR3_COMMON_TOKEN    USAGE_SYMBOL1574;
    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1553;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1553
    #define	RETURN_TYPE_identifier_list_with_parentheses1553 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1559;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1559
    #define	RETURN_TYPE_identifier_list_with_parentheses1559 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1564;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1564
    #define	RETURN_TYPE_identifier_list_with_parentheses1564 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1573;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1573
    #define	RETURN_TYPE_identifier_list_with_parentheses1573 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE ALTER_SYMBOL1535_tree;
    pANTLR3_BASE_TREE ROUTINE_SYMBOL1536_tree;
    pANTLR3_BASE_TREE CREATE_SYMBOL1537_tree;
    pANTLR3_BASE_TREE ROUTINE_SYMBOL1538_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL1539_tree;
    pANTLR3_BASE_TREE TEMPORARY_SYMBOL1540_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1541_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1542_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL1543_tree;
    pANTLR3_BASE_TREE DELETE_SYMBOL1544_tree;
    pANTLR3_BASE_TREE DROP_SYMBOL1545_tree;
    pANTLR3_BASE_TREE EVENT_SYMBOL1546_tree;
    pANTLR3_BASE_TREE EXECUTE_SYMBOL1547_tree;
    pANTLR3_BASE_TREE FILE_SYMBOL1548_tree;
    pANTLR3_BASE_TREE GRANT_SYMBOL1549_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1550_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1551_tree;
    pANTLR3_BASE_TREE INSERT_SYMBOL1552_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1554_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1555_tree;
    pANTLR3_BASE_TREE PROCESS_SYMBOL1556_tree;
    pANTLR3_BASE_TREE PROXY_SYMBOL1557_tree;
    pANTLR3_BASE_TREE REFERENCES_SYMBOL1558_tree;
    pANTLR3_BASE_TREE RELOAD_SYMBOL1560_tree;
    pANTLR3_BASE_TREE REPLICATION_SYMBOL1561_tree;
    pANTLR3_BASE_TREE set1562_tree;
    pANTLR3_BASE_TREE SELECT_SYMBOL1563_tree;
    pANTLR3_BASE_TREE SHOW_SYMBOL1565_tree;
    pANTLR3_BASE_TREE DATABASES_SYMBOL1566_tree;
    pANTLR3_BASE_TREE SHOW_SYMBOL1567_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL1568_tree;
    pANTLR3_BASE_TREE SHUTDOWN_SYMBOL1569_tree;
    pANTLR3_BASE_TREE SUPER_SYMBOL1570_tree;
    pANTLR3_BASE_TREE TRIGGER_SYMBOL1571_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL1572_tree;
    pANTLR3_BASE_TREE USAGE_SYMBOL1574_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALTER_SYMBOL1535       = NULL;
    ROUTINE_SYMBOL1536       = NULL;
    CREATE_SYMBOL1537       = NULL;
    ROUTINE_SYMBOL1538       = NULL;
    TABLESPACE_SYMBOL1539       = NULL;
    TEMPORARY_SYMBOL1540       = NULL;
    TABLES_SYMBOL1541       = NULL;
    USER_SYMBOL1542       = NULL;
    VIEW_SYMBOL1543       = NULL;
    DELETE_SYMBOL1544       = NULL;
    DROP_SYMBOL1545       = NULL;
    EVENT_SYMBOL1546       = NULL;
    EXECUTE_SYMBOL1547       = NULL;
    FILE_SYMBOL1548       = NULL;
    GRANT_SYMBOL1549       = NULL;
    OPTION_SYMBOL1550       = NULL;
    INDEX_SYMBOL1551       = NULL;
    INSERT_SYMBOL1552       = NULL;
    LOCK_SYMBOL1554       = NULL;
    TABLES_SYMBOL1555       = NULL;
    PROCESS_SYMBOL1556       = NULL;
    PROXY_SYMBOL1557       = NULL;
    REFERENCES_SYMBOL1558       = NULL;
    RELOAD_SYMBOL1560       = NULL;
    REPLICATION_SYMBOL1561       = NULL;
    set1562       = NULL;
    SELECT_SYMBOL1563       = NULL;
    SHOW_SYMBOL1565       = NULL;
    DATABASES_SYMBOL1566       = NULL;
    SHOW_SYMBOL1567       = NULL;
    VIEW_SYMBOL1568       = NULL;
    SHUTDOWN_SYMBOL1569       = NULL;
    SUPER_SYMBOL1570       = NULL;
    TRIGGER_SYMBOL1571       = NULL;
    UPDATE_SYMBOL1572       = NULL;
    USAGE_SYMBOL1574       = NULL;
    identifier_list_with_parentheses1553.tree = NULL;

    identifier_list_with_parentheses1559.tree = NULL;

    identifier_list_with_parentheses1564.tree = NULL;

    identifier_list_with_parentheses1573.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALTER_SYMBOL1535_tree   = NULL;
    ROUTINE_SYMBOL1536_tree   = NULL;
    CREATE_SYMBOL1537_tree   = NULL;
    ROUTINE_SYMBOL1538_tree   = NULL;
    TABLESPACE_SYMBOL1539_tree   = NULL;
    TEMPORARY_SYMBOL1540_tree   = NULL;
    TABLES_SYMBOL1541_tree   = NULL;
    USER_SYMBOL1542_tree   = NULL;
    VIEW_SYMBOL1543_tree   = NULL;
    DELETE_SYMBOL1544_tree   = NULL;
    DROP_SYMBOL1545_tree   = NULL;
    EVENT_SYMBOL1546_tree   = NULL;
    EXECUTE_SYMBOL1547_tree   = NULL;
    FILE_SYMBOL1548_tree   = NULL;
    GRANT_SYMBOL1549_tree   = NULL;
    OPTION_SYMBOL1550_tree   = NULL;
    INDEX_SYMBOL1551_tree   = NULL;
    INSERT_SYMBOL1552_tree   = NULL;
    LOCK_SYMBOL1554_tree   = NULL;
    TABLES_SYMBOL1555_tree   = NULL;
    PROCESS_SYMBOL1556_tree   = NULL;
    PROXY_SYMBOL1557_tree   = NULL;
    REFERENCES_SYMBOL1558_tree   = NULL;
    RELOAD_SYMBOL1560_tree   = NULL;
    REPLICATION_SYMBOL1561_tree   = NULL;
    set1562_tree   = NULL;
    SELECT_SYMBOL1563_tree   = NULL;
    SHOW_SYMBOL1565_tree   = NULL;
    DATABASES_SYMBOL1566_tree   = NULL;
    SHOW_SYMBOL1567_tree   = NULL;
    VIEW_SYMBOL1568_tree   = NULL;
    SHUTDOWN_SYMBOL1569_tree   = NULL;
    SUPER_SYMBOL1570_tree   = NULL;
    TRIGGER_SYMBOL1571_tree   = NULL;
    UPDATE_SYMBOL1572_tree   = NULL;
    USAGE_SYMBOL1574_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1736:15: ( 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 ( identifier_list_with_parentheses )? | LOCK_SYMBOL TABLES_SYMBOL | PROCESS_SYMBOL | PROXY_SYMBOL | REFERENCES_SYMBOL ( identifier_list_with_parentheses )? | RELOAD_SYMBOL | REPLICATION_SYMBOL ( CLIENT_SYMBOL | SLAVE_SYMBOL ) | SELECT_SYMBOL ( identifier_list_with_parentheses )? | SHOW_SYMBOL DATABASES_SYMBOL | SHOW_SYMBOL VIEW_SYMBOL | SHUTDOWN_SYMBOL | SUPER_SYMBOL | TRIGGER_SYMBOL | UPDATE_SYMBOL ( identifier_list_with_parentheses )? | USAGE_SYMBOL )

            ANTLR3_UINT32 alt498;

            alt498=24;

            switch ( LA(1) )
            {
            case ALTER_SYMBOL:
            	{
            		alt498=1;
            	}
                break;
            case CREATE_SYMBOL:
            	{
            		alt498=2;
            	}
                break;
            case DELETE_SYMBOL:
            	{
            		alt498=3;
            	}
                break;
            case DROP_SYMBOL:
            	{
            		alt498=4;
            	}
                break;
            case EVENT_SYMBOL:
            	{
            		alt498=5;
            	}
                break;
            case EXECUTE_SYMBOL:
            	{
            		alt498=6;
            	}
                break;
            case FILE_SYMBOL:
            	{
            		alt498=7;
            	}
                break;
            case GRANT_SYMBOL:
            	{
            		alt498=8;
            	}
                break;
            case INDEX_SYMBOL:
            	{
            		alt498=9;
            	}
                break;
            case INSERT_SYMBOL:
            	{
            		alt498=10;
            	}
                break;
            case LOCK_SYMBOL:
            	{
            		alt498=11;
            	}
                break;
            case PROCESS_SYMBOL:
            	{
            		alt498=12;
            	}
                break;
            case PROXY_SYMBOL:
            	{
            		alt498=13;
            	}
                break;
            case REFERENCES_SYMBOL:
            	{
            		alt498=14;
            	}
                break;
            case RELOAD_SYMBOL:
            	{
            		alt498=15;
            	}
                break;
            case REPLICATION_SYMBOL:
            	{
            		alt498=16;
            	}
                break;
            case SELECT_SYMBOL:
            	{
            		alt498=17;
            	}
                break;
            case SHOW_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case DATABASES_SYMBOL:
            			{
            				alt498=18;
            			}
            		    break;
            		case VIEW_SYMBOL:
            			{
            				alt498=19;
            			}
            		    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        = 18;


            		    goto ruleprivilege_typeEx;

            		}

            	}
                break;
            case SHUTDOWN_SYMBOL:
            	{
            		alt498=20;
            	}
                break;
            case SUPER_SYMBOL:
            	{
            		alt498=21;
            	}
                break;
            case TRIGGER_SYMBOL:
            	{
            		alt498=22;
            	}
                break;
            case UPDATE_SYMBOL:
            	{
            		alt498=23;
            	}
                break;
            case USAGE_SYMBOL:
            	{
            		alt498=24;
            	}
                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 ruleprivilege_typeEx;

            }

            switch (alt498)
            {
        	case 1:
        	    // MySQL.g:1737:2: ALTER_SYMBOL ( ROUTINE_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALTER_SYMBOL1535 = (pANTLR3_COMMON_TOKEN) MATCHT(ALTER_SYMBOL, &FOLLOW_ALTER_SYMBOL_in_privilege_type8277);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALTER_SYMBOL1535_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALTER_SYMBOL1535));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALTER_SYMBOL1535_tree);
        	        }

        	        // MySQL.g:1737:15: ( ROUTINE_SYMBOL )?
        	        {
        	            int alt492=2;
        	            switch ( LA(1) )
        	            {
        	                case ROUTINE_SYMBOL:
        	                	{
        	                		alt492=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt492)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1737:15: ROUTINE_SYMBOL
        	        	    {
        	        	        ROUTINE_SYMBOL1536 = (pANTLR3_COMMON_TOKEN) MATCHT(ROUTINE_SYMBOL, &FOLLOW_ROUTINE_SYMBOL_in_privilege_type8279);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ROUTINE_SYMBOL1536_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROUTINE_SYMBOL1536));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ROUTINE_SYMBOL1536_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1738:4: CREATE_SYMBOL ( ROUTINE_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL TABLES_SYMBOL | USER_SYMBOL | VIEW_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CREATE_SYMBOL1537 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_privilege_type8285);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CREATE_SYMBOL1537_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1537));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CREATE_SYMBOL1537_tree);
        	        }

        	        // MySQL.g:1738:18: ( ROUTINE_SYMBOL | TABLESPACE_SYMBOL | TEMPORARY_SYMBOL TABLES_SYMBOL | USER_SYMBOL | VIEW_SYMBOL )?
        	        {
        	            int alt493=6;
        	            switch ( LA(1) )
        	            {
        	                case ROUTINE_SYMBOL:
        	                	{
        	                		alt493=1;
        	                	}
        	                    break;
        	                case TABLESPACE_SYMBOL:
        	                	{
        	                		alt493=2;
        	                	}
        	                    break;
        	                case TEMPORARY_SYMBOL:
        	                	{
        	                		alt493=3;
        	                	}
        	                    break;
        	                case USER_SYMBOL:
        	                	{
        	                		alt493=4;
        	                	}
        	                    break;
        	                case VIEW_SYMBOL:
        	                	{
        	                		alt493=5;
        	                	}
        	                    break;
        	            }

        	            switch (alt493)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1738:19: ROUTINE_SYMBOL
        	        	    {
        	        	        ROUTINE_SYMBOL1538 = (pANTLR3_COMMON_TOKEN) MATCHT(ROUTINE_SYMBOL, &FOLLOW_ROUTINE_SYMBOL_in_privilege_type8288);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ROUTINE_SYMBOL1538_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROUTINE_SYMBOL1538));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ROUTINE_SYMBOL1538_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1738:36: TABLESPACE_SYMBOL
        	        	    {
        	        	        TABLESPACE_SYMBOL1539 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_privilege_type8292);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TABLESPACE_SYMBOL1539_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL1539));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL1539_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:1738:56: TEMPORARY_SYMBOL TABLES_SYMBOL
        	        	    {
        	        	        TEMPORARY_SYMBOL1540 = (pANTLR3_COMMON_TOKEN) MATCHT(TEMPORARY_SYMBOL, &FOLLOW_TEMPORARY_SYMBOL_in_privilege_type8296);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TEMPORARY_SYMBOL1540_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEMPORARY_SYMBOL1540));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TEMPORARY_SYMBOL1540_tree);
        	        	        }

        	        	        TABLES_SYMBOL1541 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_privilege_type8298);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TABLES_SYMBOL1541_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1541));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1541_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:1738:89: USER_SYMBOL
        	        	    {
        	        	        USER_SYMBOL1542 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_privilege_type8302);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USER_SYMBOL1542_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1542));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1542_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 5:
        	        	    // MySQL.g:1738:103: VIEW_SYMBOL
        	        	    {
        	        	        VIEW_SYMBOL1543 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_privilege_type8306);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        VIEW_SYMBOL1543_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL1543));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL1543_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1739:4: DELETE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DELETE_SYMBOL1544 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_privilege_type8313);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DELETE_SYMBOL1544_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL1544));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL1544_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1740:4: DROP_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DROP_SYMBOL1545 = (pANTLR3_COMMON_TOKEN) MATCHT(DROP_SYMBOL, &FOLLOW_DROP_SYMBOL_in_privilege_type8318);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DROP_SYMBOL1545_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DROP_SYMBOL1545));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DROP_SYMBOL1545_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1741:4: EVENT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EVENT_SYMBOL1546 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_privilege_type8323);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EVENT_SYMBOL1546_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL1546));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL1546_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1742:4: EXECUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXECUTE_SYMBOL1547 = (pANTLR3_COMMON_TOKEN) MATCHT(EXECUTE_SYMBOL, &FOLLOW_EXECUTE_SYMBOL_in_privilege_type8328);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXECUTE_SYMBOL1547_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXECUTE_SYMBOL1547));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXECUTE_SYMBOL1547_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1743:4: FILE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FILE_SYMBOL1548 = (pANTLR3_COMMON_TOKEN) MATCHT(FILE_SYMBOL, &FOLLOW_FILE_SYMBOL_in_privilege_type8333);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FILE_SYMBOL1548_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FILE_SYMBOL1548));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FILE_SYMBOL1548_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1744:4: GRANT_SYMBOL OPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GRANT_SYMBOL1549 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_privilege_type8338);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GRANT_SYMBOL1549_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1549));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1549_tree);
        	        }

        	        OPTION_SYMBOL1550 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_privilege_type8340);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTION_SYMBOL1550_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1550));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1550_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1745:4: INDEX_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INDEX_SYMBOL1551 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_privilege_type8345);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1551_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1551));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1551_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:1746:4: INSERT_SYMBOL ( identifier_list_with_parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSERT_SYMBOL1552 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_privilege_type8350);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_SYMBOL1552_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL1552));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_SYMBOL1552_tree);
        	        }

        	        // MySQL.g:1746:18: ( identifier_list_with_parentheses )?
        	        {
        	            int alt494=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt494=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt494)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1746:18: identifier_list_with_parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_privilege_type8352);
        	        	        identifier_list_with_parentheses1553=identifier_list_with_parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1553.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:1747:4: LOCK_SYMBOL TABLES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOCK_SYMBOL1554 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_privilege_type8358);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1554_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1554));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1554_tree);
        	        }

        	        TABLES_SYMBOL1555 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_privilege_type8360);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLES_SYMBOL1555_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1555));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1555_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:1748:4: PROCESS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PROCESS_SYMBOL1556 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCESS_SYMBOL, &FOLLOW_PROCESS_SYMBOL_in_privilege_type8365);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PROCESS_SYMBOL1556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCESS_SYMBOL1556));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PROCESS_SYMBOL1556_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:1749:4: PROXY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PROXY_SYMBOL1557 = (pANTLR3_COMMON_TOKEN) MATCHT(PROXY_SYMBOL, &FOLLOW_PROXY_SYMBOL_in_privilege_type8370);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PROXY_SYMBOL1557_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROXY_SYMBOL1557));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PROXY_SYMBOL1557_tree);
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:1750:4: REFERENCES_SYMBOL ( identifier_list_with_parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REFERENCES_SYMBOL1558 = (pANTLR3_COMMON_TOKEN) MATCHT(REFERENCES_SYMBOL, &FOLLOW_REFERENCES_SYMBOL_in_privilege_type8375);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REFERENCES_SYMBOL1558_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REFERENCES_SYMBOL1558));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REFERENCES_SYMBOL1558_tree);
        	        }

        	        // MySQL.g:1750:22: ( identifier_list_with_parentheses )?
        	        {
        	            int alt495=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt495=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt495)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1750:22: identifier_list_with_parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_privilege_type8377);
        	        	        identifier_list_with_parentheses1559=identifier_list_with_parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1559.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:1751:4: RELOAD_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELOAD_SYMBOL1560 = (pANTLR3_COMMON_TOKEN) MATCHT(RELOAD_SYMBOL, &FOLLOW_RELOAD_SYMBOL_in_privilege_type8383);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELOAD_SYMBOL1560_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELOAD_SYMBOL1560));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELOAD_SYMBOL1560_tree);
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:1752:4: REPLICATION_SYMBOL ( CLIENT_SYMBOL | SLAVE_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPLICATION_SYMBOL1561 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLICATION_SYMBOL, &FOLLOW_REPLICATION_SYMBOL_in_privilege_type8388);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLICATION_SYMBOL1561_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLICATION_SYMBOL1561));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLICATION_SYMBOL1561_tree);
        	        }

        	        set1562=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == SLAVE_SYMBOL || LA(1) == CLIENT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1562))
        	            );
        	            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 17:
        	    // MySQL.g:1753:4: SELECT_SYMBOL ( identifier_list_with_parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SELECT_SYMBOL1563 = (pANTLR3_COMMON_TOKEN) MATCHT(SELECT_SYMBOL, &FOLLOW_SELECT_SYMBOL_in_privilege_type8401);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SELECT_SYMBOL1563_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SELECT_SYMBOL1563));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SELECT_SYMBOL1563_tree);
        	        }

        	        // MySQL.g:1753:18: ( identifier_list_with_parentheses )?
        	        {
        	            int alt496=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt496=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt496)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1753:18: identifier_list_with_parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_privilege_type8403);
        	        	        identifier_list_with_parentheses1564=identifier_list_with_parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1564.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:1754:4: SHOW_SYMBOL DATABASES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHOW_SYMBOL1565 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_privilege_type8409);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHOW_SYMBOL1565_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1565));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHOW_SYMBOL1565_tree);
        	        }

        	        DATABASES_SYMBOL1566 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASES_SYMBOL, &FOLLOW_DATABASES_SYMBOL_in_privilege_type8411);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASES_SYMBOL1566_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASES_SYMBOL1566));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASES_SYMBOL1566_tree);
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:1755:4: SHOW_SYMBOL VIEW_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHOW_SYMBOL1567 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_privilege_type8416);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHOW_SYMBOL1567_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1567));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHOW_SYMBOL1567_tree);
        	        }

        	        VIEW_SYMBOL1568 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_privilege_type8418);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VIEW_SYMBOL1568_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL1568));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL1568_tree);
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:1756:4: SHUTDOWN_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SHUTDOWN_SYMBOL1569 = (pANTLR3_COMMON_TOKEN) MATCHT(SHUTDOWN_SYMBOL, &FOLLOW_SHUTDOWN_SYMBOL_in_privilege_type8423);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHUTDOWN_SYMBOL1569_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHUTDOWN_SYMBOL1569));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHUTDOWN_SYMBOL1569_tree);
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:1757:4: SUPER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUPER_SYMBOL1570 = (pANTLR3_COMMON_TOKEN) MATCHT(SUPER_SYMBOL, &FOLLOW_SUPER_SYMBOL_in_privilege_type8428);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUPER_SYMBOL1570_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUPER_SYMBOL1570));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUPER_SYMBOL1570_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:1758:4: TRIGGER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TRIGGER_SYMBOL1571 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_privilege_type8433);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRIGGER_SYMBOL1571_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL1571));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL1571_tree);
        	        }

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:1759:4: UPDATE_SYMBOL ( identifier_list_with_parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UPDATE_SYMBOL1572 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_privilege_type8438);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPDATE_SYMBOL1572_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL1572));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL1572_tree);
        	        }

        	        // MySQL.g:1759:18: ( identifier_list_with_parentheses )?
        	        {
        	            int alt497=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt497=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt497)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1759:18: identifier_list_with_parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_privilege_type8440);
        	        	        identifier_list_with_parentheses1573=identifier_list_with_parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses1573.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:1760:4: USAGE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USAGE_SYMBOL1574 = (pANTLR3_COMMON_TOKEN) MATCHT(USAGE_SYMBOL, &FOLLOW_USAGE_SYMBOL_in_privilege_type8446);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USAGE_SYMBOL1574_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USAGE_SYMBOL1574));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USAGE_SYMBOL1574_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:1763:1: privilege_level : ( MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )? | identifier ( DOT_SYMBOL ( MULT_OPERATOR | identifier ) )? );
 */
static MySQLParser_privilege_level_return
privilege_level(pMySQLParser ctx)
{
    MySQLParser_privilege_level_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1575;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL1576;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1577;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL1579;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1580;
    MySQLParser_identifier_return identifier1578;
    #undef	RETURN_TYPE_identifier1578
    #define	RETURN_TYPE_identifier1578 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier1581;
    #undef	RETURN_TYPE_identifier1581
    #define	RETURN_TYPE_identifier1581 MySQLParser_identifier_return

    pANTLR3_BASE_TREE MULT_OPERATOR1575_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL1576_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR1577_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL1579_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR1580_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MULT_OPERATOR1575       = NULL;
    DOT_SYMBOL1576       = NULL;
    MULT_OPERATOR1577       = NULL;
    DOT_SYMBOL1579       = NULL;
    MULT_OPERATOR1580       = NULL;
    identifier1578.tree = NULL;

    identifier1581.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MULT_OPERATOR1575_tree   = NULL;
    DOT_SYMBOL1576_tree   = NULL;
    MULT_OPERATOR1577_tree   = NULL;
    DOT_SYMBOL1579_tree   = NULL;
    MULT_OPERATOR1580_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1763:16: ( MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )? | identifier ( DOT_SYMBOL ( MULT_OPERATOR | identifier ) )? )

            ANTLR3_UINT32 alt502;

            alt502=2;

            {
                int LA502_0 = LA(1);
                if ( (LA502_0 == MULT_OPERATOR))
                {
                    alt502=1;
                }
                else if ( (((LA502_0 >= ACCOUNT_SYMBOL) && (LA502_0 <= YEAR_SYMBOL)) || LA502_0 == BACK_TICK_QUOTED_ID || LA502_0 == DOUBLE_QUOTED_TEXT || LA502_0 == IDENTIFIER))
                {
                    alt502=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 502;
                    EXCEPTION->state        = 0;


                    goto ruleprivilege_levelEx;

                }
            }
            switch (alt502)
            {
        	case 1:
        	    // MySQL.g:1764:2: MULT_OPERATOR ( DOT_SYMBOL MULT_OPERATOR )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULT_OPERATOR1575 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_privilege_level8455);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULT_OPERATOR1575_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1575));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1575_tree);
        	        }

        	        // MySQL.g:1764:16: ( DOT_SYMBOL MULT_OPERATOR )?
        	        {
        	            int alt499=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		alt499=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt499)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1764:17: DOT_SYMBOL MULT_OPERATOR
        	        	    {
        	        	        DOT_SYMBOL1576 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_privilege_level8458);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL1576_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL1576));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL1576_tree);
        	        	        }

        	        	        MULT_OPERATOR1577 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_privilege_level8460);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        MULT_OPERATOR1577_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1577));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1577_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1765:4: identifier ( DOT_SYMBOL ( MULT_OPERATOR | identifier ) )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_privilege_level8467);
        	        identifier1578=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprivilege_levelEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1578.tree);

        	        // MySQL.g:1765:15: ( DOT_SYMBOL ( MULT_OPERATOR | identifier ) )?
        	        {
        	            int alt501=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		alt501=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt501)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1765:16: DOT_SYMBOL ( MULT_OPERATOR | identifier )
        	        	    {
        	        	        DOT_SYMBOL1579 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_privilege_level8470);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleprivilege_levelEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL1579_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL1579));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL1579_tree);
        	        	        }

        	        	        // MySQL.g:1765:27: ( MULT_OPERATOR | identifier )
        	        	        {
        	        	            int alt500=2;
        	        	            {
        	        	                int LA500_0 = LA(1);
        	        	                if ( (LA500_0 == MULT_OPERATOR))
        	        	                {
        	        	                    alt500=1;
        	        	                }
        	        	                else if ( (((LA500_0 >= ACCOUNT_SYMBOL) && (LA500_0 <= YEAR_SYMBOL)) || LA500_0 == BACK_TICK_QUOTED_ID || LA500_0 == DOUBLE_QUOTED_TEXT || LA500_0 == IDENTIFIER))
        	        	                {
        	        	                    alt500=2;
        	        	                }
        	        	                else
        	        	                {
        	        	                    if (BACKTRACKING>0)
        	        	                    {
        	        	                        FAILEDFLAG = ANTLR3_TRUE;
        	        	                        return retval;
        	        	                    }


        	        	                    CONSTRUCTEX();
        	        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	        	                    EXCEPTION->message      = (void *)"";
        	        	                    EXCEPTION->decisionNum  = 500;
        	        	                    EXCEPTION->state        = 0;


        	        	                    goto ruleprivilege_levelEx;

        	        	                }
        	        	            }
        	        	            switch (alt500)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1765:28: MULT_OPERATOR
        	        	        	    {
        	        	        	        MULT_OPERATOR1580 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_privilege_level8473);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleprivilege_levelEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        MULT_OPERATOR1580_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1580));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1580_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:1765:44: identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_privilege_level8477);
        	        	        	        identifier1581=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleprivilege_levelEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1581.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    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 require_list
 * MySQL.g:1768:1: require_list : require_list_element ( ( AND_SYMBOL )? require_list_element )* ;
 */
static MySQLParser_require_list_return
require_list(pMySQLParser ctx)
{
    MySQLParser_require_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AND_SYMBOL1583;
    MySQLParser_require_list_element_return require_list_element1582;
    #undef	RETURN_TYPE_require_list_element1582
    #define	RETURN_TYPE_require_list_element1582 MySQLParser_require_list_element_return

    MySQLParser_require_list_element_return require_list_element1584;
    #undef	RETURN_TYPE_require_list_element1584
    #define	RETURN_TYPE_require_list_element1584 MySQLParser_require_list_element_return

    pANTLR3_BASE_TREE AND_SYMBOL1583_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AND_SYMBOL1583       = NULL;
    require_list_element1582.tree = NULL;

    require_list_element1584.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AND_SYMBOL1583_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1768:13: ( require_list_element ( ( AND_SYMBOL )? require_list_element )* )
        // MySQL.g:1769:2: require_list_element ( ( AND_SYMBOL )? require_list_element )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_require_list_element_in_require_list8489);
            require_list_element1582=require_list_element(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerequire_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_list_element1582.tree);

            // MySQL.g:1769:23: ( ( AND_SYMBOL )? require_list_element )*

            for (;;)
            {
                int alt504=2;
                switch ( LA(1) )
                {
                case CIPHER_SYMBOL:
                case ISSUER_SYMBOL:
                case SUBJECT_SYMBOL:
                case AND_SYMBOL:
                	{
                		alt504=1;
                	}
                    break;

                }

                switch (alt504)
                {
            	case 1:
            	    // MySQL.g:1769:24: ( AND_SYMBOL )? require_list_element
            	    {
            	        // MySQL.g:1769:24: ( AND_SYMBOL )?
            	        {
            	            int alt503=2;
            	            switch ( LA(1) )
            	            {
            	                case AND_SYMBOL:
            	                	{
            	                		alt503=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt503)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1769:24: AND_SYMBOL
            	        	    {
            	        	        AND_SYMBOL1583 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_require_list8492);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulerequire_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AND_SYMBOL1583_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1583));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1583_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_require_list_element_in_require_list8495);
            	        require_list_element1584=require_list_element(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerequire_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, require_list_element1584.tree);

            	    }
            	    break;

            	default:
            	    goto loop504;	/* break out of the loop */
            	    break;
                }
            }
            loop504: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulerequire_listEx; /* Prevent compiler warnings */
    rulerequire_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 require_list */

/**
 * $ANTLR start require_list_element
 * MySQL.g:1772:1: require_list_element : ( CIPHER_SYMBOL text_string | ISSUER_SYMBOL text_string | SUBJECT_SYMBOL text_string );
 */
static MySQLParser_require_list_element_return
require_list_element(pMySQLParser ctx)
{
    MySQLParser_require_list_element_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CIPHER_SYMBOL1585;
    pANTLR3_COMMON_TOKEN    ISSUER_SYMBOL1587;
    pANTLR3_COMMON_TOKEN    SUBJECT_SYMBOL1589;
    MySQLParser_text_string_return text_string1586;
    #undef	RETURN_TYPE_text_string1586
    #define	RETURN_TYPE_text_string1586 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1588;
    #undef	RETURN_TYPE_text_string1588
    #define	RETURN_TYPE_text_string1588 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string1590;
    #undef	RETURN_TYPE_text_string1590
    #define	RETURN_TYPE_text_string1590 MySQLParser_text_string_return

    pANTLR3_BASE_TREE CIPHER_SYMBOL1585_tree;
    pANTLR3_BASE_TREE ISSUER_SYMBOL1587_tree;
    pANTLR3_BASE_TREE SUBJECT_SYMBOL1589_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CIPHER_SYMBOL1585       = NULL;
    ISSUER_SYMBOL1587       = NULL;
    SUBJECT_SYMBOL1589       = NULL;
    text_string1586.tree = NULL;

    text_string1588.tree = NULL;

    text_string1590.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CIPHER_SYMBOL1585_tree   = NULL;
    ISSUER_SYMBOL1587_tree   = NULL;
    SUBJECT_SYMBOL1589_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1772:21: ( CIPHER_SYMBOL text_string | ISSUER_SYMBOL text_string | SUBJECT_SYMBOL text_string )

            ANTLR3_UINT32 alt505;

            alt505=3;

            switch ( LA(1) )
            {
            case CIPHER_SYMBOL:
            	{
            		alt505=1;
            	}
                break;
            case ISSUER_SYMBOL:
            	{
            		alt505=2;
            	}
                break;
            case SUBJECT_SYMBOL:
            	{
            		alt505=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 505;
                EXCEPTION->state        = 0;


                goto rulerequire_list_elementEx;

            }

            switch (alt505)
            {
        	case 1:
        	    // MySQL.g:1773:2: CIPHER_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CIPHER_SYMBOL1585 = (pANTLR3_COMMON_TOKEN) MATCHT(CIPHER_SYMBOL, &FOLLOW_CIPHER_SYMBOL_in_require_list_element8506);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CIPHER_SYMBOL1585_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CIPHER_SYMBOL1585));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CIPHER_SYMBOL1585_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_require_list_element8508);
        	        text_string1586=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1586.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1774:4: ISSUER_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ISSUER_SYMBOL1587 = (pANTLR3_COMMON_TOKEN) MATCHT(ISSUER_SYMBOL, &FOLLOW_ISSUER_SYMBOL_in_require_list_element8513);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ISSUER_SYMBOL1587_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ISSUER_SYMBOL1587));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ISSUER_SYMBOL1587_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_require_list_element8515);
        	        text_string1588=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1588.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1775:4: SUBJECT_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUBJECT_SYMBOL1589 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBJECT_SYMBOL, &FOLLOW_SUBJECT_SYMBOL_in_require_list_element8520);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUBJECT_SYMBOL1589_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBJECT_SYMBOL1589));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUBJECT_SYMBOL1589_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_require_list_element8522);
        	        text_string1590=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulerequire_list_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1590.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulerequire_list_elementEx; /* Prevent compiler warnings */
    rulerequire_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 require_list_element */

/**
 * $ANTLR start grant_option
 * MySQL.g:1778:1: grant_option : ( GRANT_SYMBOL OPTION_SYMBOL | MAX_QUERIES_PER_HOUR_SYMBOL ulong_number | MAX_UPDATES_PER_HOUR_SYMBOL ulong_number | MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number | MAX_USER_CONNECTIONS_SYMBOL ulong_number );
 */
static MySQLParser_grant_option_return
grant_option(pMySQLParser ctx)
{
    MySQLParser_grant_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    GRANT_SYMBOL1591;
    pANTLR3_COMMON_TOKEN    OPTION_SYMBOL1592;
    pANTLR3_COMMON_TOKEN    MAX_QUERIES_PER_HOUR_SYMBOL1593;
    pANTLR3_COMMON_TOKEN    MAX_UPDATES_PER_HOUR_SYMBOL1595;
    pANTLR3_COMMON_TOKEN    MAX_CONNECTIONS_PER_HOUR_SYMBOL1597;
    pANTLR3_COMMON_TOKEN    MAX_USER_CONNECTIONS_SYMBOL1599;
    MySQLParser_ulong_number_return ulong_number1594;
    #undef	RETURN_TYPE_ulong_number1594
    #define	RETURN_TYPE_ulong_number1594 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1596;
    #undef	RETURN_TYPE_ulong_number1596
    #define	RETURN_TYPE_ulong_number1596 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1598;
    #undef	RETURN_TYPE_ulong_number1598
    #define	RETURN_TYPE_ulong_number1598 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number1600;
    #undef	RETURN_TYPE_ulong_number1600
    #define	RETURN_TYPE_ulong_number1600 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE GRANT_SYMBOL1591_tree;
    pANTLR3_BASE_TREE OPTION_SYMBOL1592_tree;
    pANTLR3_BASE_TREE MAX_QUERIES_PER_HOUR_SYMBOL1593_tree;
    pANTLR3_BASE_TREE MAX_UPDATES_PER_HOUR_SYMBOL1595_tree;
    pANTLR3_BASE_TREE MAX_CONNECTIONS_PER_HOUR_SYMBOL1597_tree;
    pANTLR3_BASE_TREE MAX_USER_CONNECTIONS_SYMBOL1599_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GRANT_SYMBOL1591       = NULL;
    OPTION_SYMBOL1592       = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1593       = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1595       = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1597       = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1599       = NULL;
    ulong_number1594.tree = NULL;

    ulong_number1596.tree = NULL;

    ulong_number1598.tree = NULL;

    ulong_number1600.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GRANT_SYMBOL1591_tree   = NULL;
    OPTION_SYMBOL1592_tree   = NULL;
    MAX_QUERIES_PER_HOUR_SYMBOL1593_tree   = NULL;
    MAX_UPDATES_PER_HOUR_SYMBOL1595_tree   = NULL;
    MAX_CONNECTIONS_PER_HOUR_SYMBOL1597_tree   = NULL;
    MAX_USER_CONNECTIONS_SYMBOL1599_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1778:13: ( GRANT_SYMBOL OPTION_SYMBOL | MAX_QUERIES_PER_HOUR_SYMBOL ulong_number | MAX_UPDATES_PER_HOUR_SYMBOL ulong_number | MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number | MAX_USER_CONNECTIONS_SYMBOL ulong_number )

            ANTLR3_UINT32 alt506;

            alt506=5;

            switch ( LA(1) )
            {
            case GRANT_SYMBOL:
            	{
            		alt506=1;
            	}
                break;
            case MAX_QUERIES_PER_HOUR_SYMBOL:
            	{
            		alt506=2;
            	}
                break;
            case MAX_UPDATES_PER_HOUR_SYMBOL:
            	{
            		alt506=3;
            	}
                break;
            case MAX_CONNECTIONS_PER_HOUR_SYMBOL:
            	{
            		alt506=4;
            	}
                break;
            case MAX_USER_CONNECTIONS_SYMBOL:
            	{
            		alt506=5;
            	}
                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 rulegrant_optionEx;

            }

            switch (alt506)
            {
        	case 1:
        	    // MySQL.g:1779:2: GRANT_SYMBOL OPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GRANT_SYMBOL1591 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANT_SYMBOL, &FOLLOW_GRANT_SYMBOL_in_grant_option8531);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GRANT_SYMBOL1591_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANT_SYMBOL1591));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GRANT_SYMBOL1591_tree);
        	        }

        	        OPTION_SYMBOL1592 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTION_SYMBOL, &FOLLOW_OPTION_SYMBOL_in_grant_option8533);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTION_SYMBOL1592_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTION_SYMBOL1592));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTION_SYMBOL1592_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1780:4: MAX_QUERIES_PER_HOUR_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_QUERIES_PER_HOUR_SYMBOL1593 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_QUERIES_PER_HOUR_SYMBOL, &FOLLOW_MAX_QUERIES_PER_HOUR_SYMBOL_in_grant_option8538);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_QUERIES_PER_HOUR_SYMBOL1593_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_QUERIES_PER_HOUR_SYMBOL1593));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_QUERIES_PER_HOUR_SYMBOL1593_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_grant_option8540);
        	        ulong_number1594=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1594.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1781:4: MAX_UPDATES_PER_HOUR_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_UPDATES_PER_HOUR_SYMBOL1595 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_UPDATES_PER_HOUR_SYMBOL, &FOLLOW_MAX_UPDATES_PER_HOUR_SYMBOL_in_grant_option8545);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_UPDATES_PER_HOUR_SYMBOL1595_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_UPDATES_PER_HOUR_SYMBOL1595));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_UPDATES_PER_HOUR_SYMBOL1595_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_grant_option8547);
        	        ulong_number1596=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1596.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1782:4: MAX_CONNECTIONS_PER_HOUR_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_CONNECTIONS_PER_HOUR_SYMBOL1597 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_CONNECTIONS_PER_HOUR_SYMBOL, &FOLLOW_MAX_CONNECTIONS_PER_HOUR_SYMBOL_in_grant_option8552);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_CONNECTIONS_PER_HOUR_SYMBOL1597_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_CONNECTIONS_PER_HOUR_SYMBOL1597));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_CONNECTIONS_PER_HOUR_SYMBOL1597_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_grant_option8554);
        	        ulong_number1598=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1598.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1783:4: MAX_USER_CONNECTIONS_SYMBOL ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_USER_CONNECTIONS_SYMBOL1599 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_USER_CONNECTIONS_SYMBOL, &FOLLOW_MAX_USER_CONNECTIONS_SYMBOL_in_grant_option8559);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_USER_CONNECTIONS_SYMBOL1599_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_USER_CONNECTIONS_SYMBOL1599));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_USER_CONNECTIONS_SYMBOL1599_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_grant_option8561);
        	        ulong_number1600=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegrant_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number1600.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:1788:1: table_administration_statement : ( ANALYZE_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list | CHECK_SYMBOL ^ TABLE_SYMBOL table_ref_list ( check_option )* | CHECKSUM_SYMBOL ^ TABLE_SYMBOL table_ref_list ( QUICK_SYMBOL | EXTENDED_SYMBOL )? | OPTIMIZE_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list | REPAIR_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list ( repair_option )* |{...}? BACKUP_SYMBOL ^ TABLE_SYMBOL table_ref_list TO_SYMBOL string_literal |{...}? RESTORE_SYMBOL ^ TABLE_SYMBOL table_ref_list 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_SYMBOL1601;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1603;
    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL1605;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1606;
    pANTLR3_COMMON_TOKEN    CHECKSUM_SYMBOL1609;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1610;
    pANTLR3_COMMON_TOKEN    set1612;
    pANTLR3_COMMON_TOKEN    OPTIMIZE_SYMBOL1613;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1615;
    pANTLR3_COMMON_TOKEN    REPAIR_SYMBOL1617;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1619;
    pANTLR3_COMMON_TOKEN    BACKUP_SYMBOL1622;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1623;
    pANTLR3_COMMON_TOKEN    TO_SYMBOL1625;
    pANTLR3_COMMON_TOKEN    RESTORE_SYMBOL1627;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1628;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1630;
    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1602;
    #undef	RETURN_TYPE_no_write_to_bin_log1602
    #define	RETURN_TYPE_no_write_to_bin_log1602 MySQLParser_no_write_to_bin_log_return

    MySQLParser_table_ref_list_return table_ref_list1604;
    #undef	RETURN_TYPE_table_ref_list1604
    #define	RETURN_TYPE_table_ref_list1604 MySQLParser_table_ref_list_return

    MySQLParser_table_ref_list_return table_ref_list1607;
    #undef	RETURN_TYPE_table_ref_list1607
    #define	RETURN_TYPE_table_ref_list1607 MySQLParser_table_ref_list_return

    MySQLParser_check_option_return check_option1608;
    #undef	RETURN_TYPE_check_option1608
    #define	RETURN_TYPE_check_option1608 MySQLParser_check_option_return

    MySQLParser_table_ref_list_return table_ref_list1611;
    #undef	RETURN_TYPE_table_ref_list1611
    #define	RETURN_TYPE_table_ref_list1611 MySQLParser_table_ref_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1614;
    #undef	RETURN_TYPE_no_write_to_bin_log1614
    #define	RETURN_TYPE_no_write_to_bin_log1614 MySQLParser_no_write_to_bin_log_return

    MySQLParser_table_ref_list_return table_ref_list1616;
    #undef	RETURN_TYPE_table_ref_list1616
    #define	RETURN_TYPE_table_ref_list1616 MySQLParser_table_ref_list_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1618;
    #undef	RETURN_TYPE_no_write_to_bin_log1618
    #define	RETURN_TYPE_no_write_to_bin_log1618 MySQLParser_no_write_to_bin_log_return

    MySQLParser_table_ref_list_return table_ref_list1620;
    #undef	RETURN_TYPE_table_ref_list1620
    #define	RETURN_TYPE_table_ref_list1620 MySQLParser_table_ref_list_return

    MySQLParser_repair_option_return repair_option1621;
    #undef	RETURN_TYPE_repair_option1621
    #define	RETURN_TYPE_repair_option1621 MySQLParser_repair_option_return

    MySQLParser_table_ref_list_return table_ref_list1624;
    #undef	RETURN_TYPE_table_ref_list1624
    #define	RETURN_TYPE_table_ref_list1624 MySQLParser_table_ref_list_return

    MySQLParser_string_literal_return string_literal1626;
    #undef	RETURN_TYPE_string_literal1626
    #define	RETURN_TYPE_string_literal1626 MySQLParser_string_literal_return

    MySQLParser_table_ref_list_return table_ref_list1629;
    #undef	RETURN_TYPE_table_ref_list1629
    #define	RETURN_TYPE_table_ref_list1629 MySQLParser_table_ref_list_return

    MySQLParser_string_literal_return string_literal1631;
    #undef	RETURN_TYPE_string_literal1631
    #define	RETURN_TYPE_string_literal1631 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE ANALYZE_SYMBOL1601_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1603_tree;
    pANTLR3_BASE_TREE CHECK_SYMBOL1605_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1606_tree;
    pANTLR3_BASE_TREE CHECKSUM_SYMBOL1609_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1610_tree;
    pANTLR3_BASE_TREE set1612_tree;
    pANTLR3_BASE_TREE OPTIMIZE_SYMBOL1613_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1615_tree;
    pANTLR3_BASE_TREE REPAIR_SYMBOL1617_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1619_tree;
    pANTLR3_BASE_TREE BACKUP_SYMBOL1622_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1623_tree;
    pANTLR3_BASE_TREE TO_SYMBOL1625_tree;
    pANTLR3_BASE_TREE RESTORE_SYMBOL1627_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1628_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1630_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ANALYZE_SYMBOL1601       = NULL;
    TABLE_SYMBOL1603       = NULL;
    CHECK_SYMBOL1605       = NULL;
    TABLE_SYMBOL1606       = NULL;
    CHECKSUM_SYMBOL1609       = NULL;
    TABLE_SYMBOL1610       = NULL;
    set1612       = NULL;
    OPTIMIZE_SYMBOL1613       = NULL;
    TABLE_SYMBOL1615       = NULL;
    REPAIR_SYMBOL1617       = NULL;
    TABLE_SYMBOL1619       = NULL;
    BACKUP_SYMBOL1622       = NULL;
    TABLE_SYMBOL1623       = NULL;
    TO_SYMBOL1625       = NULL;
    RESTORE_SYMBOL1627       = NULL;
    TABLE_SYMBOL1628       = NULL;
    FROM_SYMBOL1630       = NULL;
    no_write_to_bin_log1602.tree = NULL;

    table_ref_list1604.tree = NULL;

    table_ref_list1607.tree = NULL;

    check_option1608.tree = NULL;

    table_ref_list1611.tree = NULL;

    no_write_to_bin_log1614.tree = NULL;

    table_ref_list1616.tree = NULL;

    no_write_to_bin_log1618.tree = NULL;

    table_ref_list1620.tree = NULL;

    repair_option1621.tree = NULL;

    table_ref_list1624.tree = NULL;

    string_literal1626.tree = NULL;

    table_ref_list1629.tree = NULL;

    string_literal1631.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ANALYZE_SYMBOL1601_tree   = NULL;
    TABLE_SYMBOL1603_tree   = NULL;
    CHECK_SYMBOL1605_tree   = NULL;
    TABLE_SYMBOL1606_tree   = NULL;
    CHECKSUM_SYMBOL1609_tree   = NULL;
    TABLE_SYMBOL1610_tree   = NULL;
    set1612_tree   = NULL;
    OPTIMIZE_SYMBOL1613_tree   = NULL;
    TABLE_SYMBOL1615_tree   = NULL;
    REPAIR_SYMBOL1617_tree   = NULL;
    TABLE_SYMBOL1619_tree   = NULL;
    BACKUP_SYMBOL1622_tree   = NULL;
    TABLE_SYMBOL1623_tree   = NULL;
    TO_SYMBOL1625_tree   = NULL;
    RESTORE_SYMBOL1627_tree   = NULL;
    TABLE_SYMBOL1628_tree   = NULL;
    FROM_SYMBOL1630_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1788:31: ( ANALYZE_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list | CHECK_SYMBOL ^ TABLE_SYMBOL table_ref_list ( check_option )* | CHECKSUM_SYMBOL ^ TABLE_SYMBOL table_ref_list ( QUICK_SYMBOL | EXTENDED_SYMBOL )? | OPTIMIZE_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list | REPAIR_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list ( repair_option )* |{...}? BACKUP_SYMBOL ^ TABLE_SYMBOL table_ref_list TO_SYMBOL string_literal |{...}? RESTORE_SYMBOL ^ TABLE_SYMBOL table_ref_list FROM_SYMBOL string_literal )

            ANTLR3_UINT32 alt513;

            alt513=7;

            switch ( LA(1) )
            {
            case ANALYZE_SYMBOL:
            	{
            		alt513=1;
            	}
                break;
            case CHECK_SYMBOL:
            	{
            		alt513=2;
            	}
                break;
            case CHECKSUM_SYMBOL:
            	{
            		alt513=3;
            	}
                break;
            case OPTIMIZE_SYMBOL:
            	{
            		alt513=4;
            	}
                break;
            case REPAIR_SYMBOL:
            	{
            		alt513=5;
            	}
                break;
            case BACKUP_SYMBOL:
            	{
            		alt513=6;
            	}
                break;
            case RESTORE_SYMBOL:
            	{
            		alt513=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 513;
                EXCEPTION->state        = 0;


                goto ruletable_administration_statementEx;

            }

            switch (alt513)
            {
        	case 1:
        	    // MySQL.g:1789:2: ANALYZE_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ANALYZE_SYMBOL1601 = (pANTLR3_COMMON_TOKEN) MATCHT(ANALYZE_SYMBOL, &FOLLOW_ANALYZE_SYMBOL_in_table_administration_statement8572);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ANALYZE_SYMBOL1601_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ANALYZE_SYMBOL1601))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ANALYZE_SYMBOL1601_tree, root_0));
        	        }

        	        // MySQL.g:1789:18: ( no_write_to_bin_log )?
        	        {
        	            int alt507=2;
        	            {
        	                int LA507_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA507_0 == LOCAL_SYMBOL))
        	                {
        	                    alt507=1;
        	                }
        	                else if ( (LA507_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt507=1;
        	                }
        	            }
        	            switch (alt507)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1789:18: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement8575);
        	        	        no_write_to_bin_log1602=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_log1602.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1603 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8578);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1603_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1603));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1603_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8580);
        	        table_ref_list1604=table_ref_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list1604.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1790:4: CHECK_SYMBOL ^ TABLE_SYMBOL table_ref_list ( check_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECK_SYMBOL1605 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_table_administration_statement8585);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHECK_SYMBOL1605_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL1605))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CHECK_SYMBOL1605_tree, root_0));
        	        }

        	        TABLE_SYMBOL1606 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8588);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1606_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1606));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1606_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8590);
        	        table_ref_list1607=table_ref_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list1607.tree);

        	        // MySQL.g:1790:46: ( check_option )*

        	        for (;;)
        	        {
        	            int alt508=2;
        	            switch ( LA(1) )
        	            {
        	            case CHANGED_SYMBOL:
        	            case EXTENDED_SYMBOL:
        	            case FAST_SYMBOL:
        	            case MEDIUM_SYMBOL:
        	            case QUICK_SYMBOL:
        	            case FOR_SYMBOL:
        	            	{
        	            		alt508=1;
        	            	}
        	                break;

        	            }

        	            switch (alt508)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1790:46: check_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_check_option_in_table_administration_statement8592);
        	        	        check_option1608=check_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, check_option1608.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop508;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop508: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1791:4: CHECKSUM_SYMBOL ^ TABLE_SYMBOL table_ref_list ( QUICK_SYMBOL | EXTENDED_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHECKSUM_SYMBOL1609 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECKSUM_SYMBOL, &FOLLOW_CHECKSUM_SYMBOL_in_table_administration_statement8598);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHECKSUM_SYMBOL1609_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECKSUM_SYMBOL1609))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CHECKSUM_SYMBOL1609_tree, root_0));
        	        }

        	        TABLE_SYMBOL1610 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8601);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1610_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1610));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1610_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8603);
        	        table_ref_list1611=table_ref_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list1611.tree);

        	        // MySQL.g:1791:49: ( QUICK_SYMBOL | EXTENDED_SYMBOL )?
        	        {
        	            int alt509=2;
        	            switch ( LA(1) )
        	            {
        	                case EXTENDED_SYMBOL:
        	                case QUICK_SYMBOL:
        	                	{
        	                		alt509=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt509)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set1612=(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, set1612))
        	        	            );
        	        	            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:1792:4: OPTIMIZE_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        OPTIMIZE_SYMBOL1613 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIMIZE_SYMBOL, &FOLLOW_OPTIMIZE_SYMBOL_in_table_administration_statement8617);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTIMIZE_SYMBOL1613_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIMIZE_SYMBOL1613))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, OPTIMIZE_SYMBOL1613_tree, root_0));
        	        }

        	        // MySQL.g:1792:21: ( no_write_to_bin_log )?
        	        {
        	            int alt510=2;
        	            {
        	                int LA510_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA510_0 == LOCAL_SYMBOL))
        	                {
        	                    alt510=1;
        	                }
        	                else if ( (LA510_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt510=1;
        	                }
        	            }
        	            switch (alt510)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1792:21: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement8620);
        	        	        no_write_to_bin_log1614=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_log1614.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1615 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8623);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1615_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1615));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1615_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8625);
        	        table_ref_list1616=table_ref_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list1616.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1793:4: REPAIR_SYMBOL ^ ( no_write_to_bin_log )? TABLE_SYMBOL table_ref_list ( repair_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPAIR_SYMBOL1617 = (pANTLR3_COMMON_TOKEN) MATCHT(REPAIR_SYMBOL, &FOLLOW_REPAIR_SYMBOL_in_table_administration_statement8630);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPAIR_SYMBOL1617_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPAIR_SYMBOL1617))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REPAIR_SYMBOL1617_tree, root_0));
        	        }

        	        // MySQL.g:1793:19: ( no_write_to_bin_log )?
        	        {
        	            int alt511=2;
        	            {
        	                int LA511_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA511_0 == LOCAL_SYMBOL))
        	                {
        	                    alt511=1;
        	                }
        	                else if ( (LA511_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt511=1;
        	                }
        	            }
        	            switch (alt511)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1793:19: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_table_administration_statement8633);
        	        	        no_write_to_bin_log1618=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_log1618.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        TABLE_SYMBOL1619 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8636);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1619_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1619));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1619_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8638);
        	        table_ref_list1620=table_ref_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list1620.tree);

        	        // MySQL.g:1793:68: ( repair_option )*

        	        for (;;)
        	        {
        	            int alt512=2;
        	            switch ( LA(1) )
        	            {
        	            case EXTENDED_SYMBOL:
        	            case QUICK_SYMBOL:
        	            case USE_FRM_SYMBOL:
        	            	{
        	            		alt512=1;
        	            	}
        	                break;

        	            }

        	            switch (alt512)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1793:68: repair_option
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_repair_option_in_table_administration_statement8640);
        	        	        repair_option1621=repair_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruletable_administration_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, repair_option1621.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop512;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop512: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1794:4: {...}? BACKUP_SYMBOL ^ TABLE_SYMBOL table_ref_list 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_SYMBOL1622 = (pANTLR3_COMMON_TOKEN) MATCHT(BACKUP_SYMBOL, &FOLLOW_BACKUP_SYMBOL_in_table_administration_statement8648);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BACKUP_SYMBOL1622_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BACKUP_SYMBOL1622))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BACKUP_SYMBOL1622_tree, root_0));
        	        }

        	        TABLE_SYMBOL1623 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8651);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1623_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1623));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1623_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8653);
        	        table_ref_list1624=table_ref_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list1624.tree);

        	        TO_SYMBOL1625 = (pANTLR3_COMMON_TOKEN) MATCHT(TO_SYMBOL, &FOLLOW_TO_SYMBOL_in_table_administration_statement8655);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TO_SYMBOL1625_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TO_SYMBOL1625));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TO_SYMBOL1625_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_table_administration_statement8657);
        	        string_literal1626=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1626.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1795:4: {...}? RESTORE_SYMBOL ^ TABLE_SYMBOL table_ref_list 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_SYMBOL1627 = (pANTLR3_COMMON_TOKEN) MATCHT(RESTORE_SYMBOL, &FOLLOW_RESTORE_SYMBOL_in_table_administration_statement8664);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESTORE_SYMBOL1627_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESTORE_SYMBOL1627))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RESTORE_SYMBOL1627_tree, root_0));
        	        }

        	        TABLE_SYMBOL1628 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_table_administration_statement8667);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLE_SYMBOL1628_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1628));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1628_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_table_administration_statement8669);
        	        table_ref_list1629=table_ref_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list1629.tree);

        	        FROM_SYMBOL1630 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_table_administration_statement8671);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL1630_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1630));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1630_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_table_administration_statement8673);
        	        string_literal1631=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_administration_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1631.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:1798: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_SYMBOL1632;
    pANTLR3_COMMON_TOKEN    UPGRADE_SYMBOL1633;
    pANTLR3_COMMON_TOKEN    QUICK_SYMBOL1634;
    pANTLR3_COMMON_TOKEN    FAST_SYMBOL1635;
    pANTLR3_COMMON_TOKEN    MEDIUM_SYMBOL1636;
    pANTLR3_COMMON_TOKEN    EXTENDED_SYMBOL1637;
    pANTLR3_COMMON_TOKEN    CHANGED_SYMBOL1638;

    pANTLR3_BASE_TREE FOR_SYMBOL1632_tree;
    pANTLR3_BASE_TREE UPGRADE_SYMBOL1633_tree;
    pANTLR3_BASE_TREE QUICK_SYMBOL1634_tree;
    pANTLR3_BASE_TREE FAST_SYMBOL1635_tree;
    pANTLR3_BASE_TREE MEDIUM_SYMBOL1636_tree;
    pANTLR3_BASE_TREE EXTENDED_SYMBOL1637_tree;
    pANTLR3_BASE_TREE CHANGED_SYMBOL1638_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1632       = NULL;
    UPGRADE_SYMBOL1633       = NULL;
    QUICK_SYMBOL1634       = NULL;
    FAST_SYMBOL1635       = NULL;
    MEDIUM_SYMBOL1636       = NULL;
    EXTENDED_SYMBOL1637       = NULL;
    CHANGED_SYMBOL1638       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1632_tree   = NULL;
    UPGRADE_SYMBOL1633_tree   = NULL;
    QUICK_SYMBOL1634_tree   = NULL;
    FAST_SYMBOL1635_tree   = NULL;
    MEDIUM_SYMBOL1636_tree   = NULL;
    EXTENDED_SYMBOL1637_tree   = NULL;
    CHANGED_SYMBOL1638_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1798:13: ( FOR_SYMBOL UPGRADE_SYMBOL | QUICK_SYMBOL | FAST_SYMBOL | MEDIUM_SYMBOL | EXTENDED_SYMBOL | CHANGED_SYMBOL )

            ANTLR3_UINT32 alt514;

            alt514=6;

            switch ( LA(1) )
            {
            case FOR_SYMBOL:
            	{
            		alt514=1;
            	}
                break;
            case QUICK_SYMBOL:
            	{
            		alt514=2;
            	}
                break;
            case FAST_SYMBOL:
            	{
            		alt514=3;
            	}
                break;
            case MEDIUM_SYMBOL:
            	{
            		alt514=4;
            	}
                break;
            case EXTENDED_SYMBOL:
            	{
            		alt514=5;
            	}
                break;
            case CHANGED_SYMBOL:
            	{
            		alt514=6;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 514;
                EXCEPTION->state        = 0;


                goto rulecheck_optionEx;

            }

            switch (alt514)
            {
        	case 1:
        	    // MySQL.g:1799:2: FOR_SYMBOL UPGRADE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOR_SYMBOL1632 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_check_option8682);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1632_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1632));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1632_tree);
        	        }

        	        UPGRADE_SYMBOL1633 = (pANTLR3_COMMON_TOKEN) MATCHT(UPGRADE_SYMBOL, &FOLLOW_UPGRADE_SYMBOL_in_check_option8684);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPGRADE_SYMBOL1633_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPGRADE_SYMBOL1633));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPGRADE_SYMBOL1633_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1799:30: QUICK_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUICK_SYMBOL1634 = (pANTLR3_COMMON_TOKEN) MATCHT(QUICK_SYMBOL, &FOLLOW_QUICK_SYMBOL_in_check_option8688);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUICK_SYMBOL1634_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUICK_SYMBOL1634));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUICK_SYMBOL1634_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1799:45: FAST_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FAST_SYMBOL1635 = (pANTLR3_COMMON_TOKEN) MATCHT(FAST_SYMBOL, &FOLLOW_FAST_SYMBOL_in_check_option8692);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FAST_SYMBOL1635_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FAST_SYMBOL1635));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FAST_SYMBOL1635_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1799:59: MEDIUM_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUM_SYMBOL1636 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUM_SYMBOL, &FOLLOW_MEDIUM_SYMBOL_in_check_option8696);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUM_SYMBOL1636_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUM_SYMBOL1636));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUM_SYMBOL1636_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1799:75: EXTENDED_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTENDED_SYMBOL1637 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENDED_SYMBOL, &FOLLOW_EXTENDED_SYMBOL_in_check_option8700);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTENDED_SYMBOL1637_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENDED_SYMBOL1637));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENDED_SYMBOL1637_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1799:93: CHANGED_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHANGED_SYMBOL1638 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANGED_SYMBOL, &FOLLOW_CHANGED_SYMBOL_in_check_option8704);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecheck_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHANGED_SYMBOL1638_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANGED_SYMBOL1638));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHANGED_SYMBOL1638_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:1802: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    set1639;

    pANTLR3_BASE_TREE set1639_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1639       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1639_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1802:14: ( QUICK_SYMBOL | EXTENDED_SYMBOL | USE_FRM_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1639=(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, set1639))
                );
                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:1808:1: install_uninstall_statment : ( INSTALL_SYMBOL ^ PLUGIN_SYMBOL identifier SONAME_SYMBOL string_literal | UNINSTALL_SYMBOL ^ PLUGIN_SYMBOL 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_SYMBOL1640;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1641;
    pANTLR3_COMMON_TOKEN    SONAME_SYMBOL1643;
    pANTLR3_COMMON_TOKEN    UNINSTALL_SYMBOL1645;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1646;
    MySQLParser_identifier_return identifier1642;
    #undef	RETURN_TYPE_identifier1642
    #define	RETURN_TYPE_identifier1642 MySQLParser_identifier_return

    MySQLParser_string_literal_return string_literal1644;
    #undef	RETURN_TYPE_string_literal1644
    #define	RETURN_TYPE_string_literal1644 MySQLParser_string_literal_return

    MySQLParser_identifier_return identifier1647;
    #undef	RETURN_TYPE_identifier1647
    #define	RETURN_TYPE_identifier1647 MySQLParser_identifier_return

    pANTLR3_BASE_TREE INSTALL_SYMBOL1640_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1641_tree;
    pANTLR3_BASE_TREE SONAME_SYMBOL1643_tree;
    pANTLR3_BASE_TREE UNINSTALL_SYMBOL1645_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1646_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INSTALL_SYMBOL1640       = NULL;
    PLUGIN_SYMBOL1641       = NULL;
    SONAME_SYMBOL1643       = NULL;
    UNINSTALL_SYMBOL1645       = NULL;
    PLUGIN_SYMBOL1646       = NULL;
    identifier1642.tree = NULL;

    string_literal1644.tree = NULL;

    identifier1647.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INSTALL_SYMBOL1640_tree   = NULL;
    PLUGIN_SYMBOL1641_tree   = NULL;
    SONAME_SYMBOL1643_tree   = NULL;
    UNINSTALL_SYMBOL1645_tree   = NULL;
    PLUGIN_SYMBOL1646_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1808:27: ( INSTALL_SYMBOL ^ PLUGIN_SYMBOL identifier SONAME_SYMBOL string_literal | UNINSTALL_SYMBOL ^ PLUGIN_SYMBOL identifier )

            ANTLR3_UINT32 alt515;

            alt515=2;

            switch ( LA(1) )
            {
            case INSTALL_SYMBOL:
            	{
            		alt515=1;
            	}
                break;
            case UNINSTALL_SYMBOL:
            	{
            		alt515=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 515;
                EXCEPTION->state        = 0;


                goto ruleinstall_uninstall_statmentEx;

            }

            switch (alt515)
            {
        	case 1:
        	    // MySQL.g:1809:2: INSTALL_SYMBOL ^ PLUGIN_SYMBOL identifier SONAME_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSTALL_SYMBOL1640 = (pANTLR3_COMMON_TOKEN) MATCHT(INSTALL_SYMBOL, &FOLLOW_INSTALL_SYMBOL_in_install_uninstall_statment8732);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSTALL_SYMBOL1640_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSTALL_SYMBOL1640))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, INSTALL_SYMBOL1640_tree, root_0));
        	        }

        	        PLUGIN_SYMBOL1641 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8735);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PLUGIN_SYMBOL1641_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1641));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1641_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_install_uninstall_statment8737);
        	        identifier1642=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1642.tree);

        	        SONAME_SYMBOL1643 = (pANTLR3_COMMON_TOKEN) MATCHT(SONAME_SYMBOL, &FOLLOW_SONAME_SYMBOL_in_install_uninstall_statment8739);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SONAME_SYMBOL1643_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SONAME_SYMBOL1643));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SONAME_SYMBOL1643_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_install_uninstall_statment8741);
        	        string_literal1644=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1644.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1810:4: UNINSTALL_SYMBOL ^ PLUGIN_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNINSTALL_SYMBOL1645 = (pANTLR3_COMMON_TOKEN) MATCHT(UNINSTALL_SYMBOL, &FOLLOW_UNINSTALL_SYMBOL_in_install_uninstall_statment8746);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNINSTALL_SYMBOL1645_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNINSTALL_SYMBOL1645))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNINSTALL_SYMBOL1645_tree, root_0));
        	        }

        	        PLUGIN_SYMBOL1646 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_install_uninstall_statment8749);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PLUGIN_SYMBOL1646_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1646));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1646_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_install_uninstall_statment8751);
        	        identifier1647=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinstall_uninstall_statmentEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1647.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:1815:1: set_statement : SET_SYMBOL ^ ( options {k=3; } : ( option_type )? TRANSACTION_SYMBOL set_transaction_characteristic | ( ONE_SHOT_SYMBOL )? option_value_no_option_type ( COMMA_SYMBOL option_value_list )? | option_type option_value_following_option_type ( 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_SYMBOL1648;
    pANTLR3_COMMON_TOKEN    TRANSACTION_SYMBOL1650;
    pANTLR3_COMMON_TOKEN    ONE_SHOT_SYMBOL1652;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1654;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1658;
    MySQLParser_option_type_return option_type1649;
    #undef	RETURN_TYPE_option_type1649
    #define	RETURN_TYPE_option_type1649 MySQLParser_option_type_return

    MySQLParser_set_transaction_characteristic_return set_transaction_characteristic1651;
    #undef	RETURN_TYPE_set_transaction_characteristic1651
    #define	RETURN_TYPE_set_transaction_characteristic1651 MySQLParser_set_transaction_characteristic_return

    MySQLParser_option_value_no_option_type_return option_value_no_option_type1653;
    #undef	RETURN_TYPE_option_value_no_option_type1653
    #define	RETURN_TYPE_option_value_no_option_type1653 MySQLParser_option_value_no_option_type_return

    MySQLParser_option_value_list_return option_value_list1655;
    #undef	RETURN_TYPE_option_value_list1655
    #define	RETURN_TYPE_option_value_list1655 MySQLParser_option_value_list_return

    MySQLParser_option_type_return option_type1656;
    #undef	RETURN_TYPE_option_type1656
    #define	RETURN_TYPE_option_type1656 MySQLParser_option_type_return

    MySQLParser_option_value_following_option_type_return option_value_following_option_type1657;
    #undef	RETURN_TYPE_option_value_following_option_type1657
    #define	RETURN_TYPE_option_value_following_option_type1657 MySQLParser_option_value_following_option_type_return

    MySQLParser_option_value_list_return option_value_list1659;
    #undef	RETURN_TYPE_option_value_list1659
    #define	RETURN_TYPE_option_value_list1659 MySQLParser_option_value_list_return

    pANTLR3_BASE_TREE SET_SYMBOL1648_tree;
    pANTLR3_BASE_TREE TRANSACTION_SYMBOL1650_tree;
    pANTLR3_BASE_TREE ONE_SHOT_SYMBOL1652_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1654_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1658_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SET_SYMBOL1648       = NULL;
    TRANSACTION_SYMBOL1650       = NULL;
    ONE_SHOT_SYMBOL1652       = NULL;
    COMMA_SYMBOL1654       = NULL;
    COMMA_SYMBOL1658       = NULL;
    option_type1649.tree = NULL;

    set_transaction_characteristic1651.tree = NULL;

    option_value_no_option_type1653.tree = NULL;

    option_value_list1655.tree = NULL;

    option_type1656.tree = NULL;

    option_value_following_option_type1657.tree = NULL;

    option_value_list1659.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SET_SYMBOL1648_tree   = NULL;
    TRANSACTION_SYMBOL1650_tree   = NULL;
    ONE_SHOT_SYMBOL1652_tree   = NULL;
    COMMA_SYMBOL1654_tree   = NULL;
    COMMA_SYMBOL1658_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1815:14: ( SET_SYMBOL ^ ( options {k=3; } : ( option_type )? TRANSACTION_SYMBOL set_transaction_characteristic | ( ONE_SHOT_SYMBOL )? option_value_no_option_type ( COMMA_SYMBOL option_value_list )? | option_type option_value_following_option_type ( COMMA_SYMBOL option_value_list )? ) )
        // MySQL.g:1816:2: SET_SYMBOL ^ ( options {k=3; } : ( option_type )? TRANSACTION_SYMBOL set_transaction_characteristic | ( ONE_SHOT_SYMBOL )? option_value_no_option_type ( COMMA_SYMBOL option_value_list )? | option_type option_value_following_option_type ( COMMA_SYMBOL option_value_list )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SET_SYMBOL1648 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_set_statement8762);
            if  (HASEXCEPTION())
            {
                goto ruleset_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SET_SYMBOL1648_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL1648))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SET_SYMBOL1648_tree, root_0));
            }

            // MySQL.g:1817:3: ( options {k=3; } : ( option_type )? TRANSACTION_SYMBOL set_transaction_characteristic | ( ONE_SHOT_SYMBOL )? option_value_no_option_type ( COMMA_SYMBOL option_value_list )? | option_type option_value_following_option_type ( COMMA_SYMBOL option_value_list )? )
            {
                int alt520=3;
                {
                    int LA520_0 = LA(1);
                    if ( (LA520_0 == GLOBAL_SYMBOL || LA520_0 == LOCAL_SYMBOL || LA520_0 == SESSION_SYMBOL))
                    {
                        {
                            int LA520_1 = LA(2);
                            if ( (LA520_1 == TRANSACTION_SYMBOL))
                            {
                                switch ( LA(3) )
                                {
                                case ISOLATION_SYMBOL:
                                case READ_SYMBOL:
                                	{
                                		alt520=1;
                                	}
                                    break;
                                case ASSIGN_OPERATOR:
                                case DOT_SYMBOL:
                                case EQUAL_OPERATOR:
                                	{
                                		alt520=3;
                                	}
                                    break;

                                default:
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }

                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 520;
                                    EXCEPTION->state        = 16;


                                    goto ruleset_statementEx;

                                }

                            }
                            else if ( (LA520_1 == ASSIGN_OPERATOR || LA520_1 == DOT_SYMBOL || LA520_1 == EQUAL_OPERATOR))
                            {
                                alt520=2;
                            }
                            else if ( (((LA520_1 >= ACCOUNT_SYMBOL) && (LA520_1 <= THAN_SYMBOL)) || ((LA520_1 >= TRIGGERS_SYMBOL) && (LA520_1 <= YEAR_SYMBOL)) || LA520_1 == BACK_TICK_QUOTED_ID || LA520_1 == DEFAULT_SYMBOL || LA520_1 == DOUBLE_QUOTED_TEXT || LA520_1 == IDENTIFIER))
                            {
                                alt520=3;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 520;
                                EXCEPTION->state        = 1;


                                goto ruleset_statementEx;

                            }
                        }
                    }
                    else if ( (LA520_0 == TRANSACTION_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case ISOLATION_SYMBOL:
                        case READ_SYMBOL:
                        	{
                        		alt520=1;
                        	}
                            break;
                        case ASSIGN_OPERATOR:
                        case DOT_SYMBOL:
                        case EQUAL_OPERATOR:
                        	{
                        		alt520=2;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 520;
                            EXCEPTION->state        = 2;


                            goto ruleset_statementEx;

                        }

                    }
                    else if ( (((LA520_0 >= ACCOUNT_SYMBOL) && (LA520_0 <= GRANTS_SYMBOL)) || ((LA520_0 >= HASH_SYMBOL) && (LA520_0 <= LIST_SYMBOL)) || ((LA520_0 >= LOCKS_SYMBOL) && (LA520_0 <= SERIALIZABLE_SYMBOL)) || ((LA520_0 >= SIMPLE_SYMBOL) && (LA520_0 <= THAN_SYMBOL)) || ((LA520_0 >= TRIGGERS_SYMBOL) && (LA520_0 <= YEAR_SYMBOL)) || ((LA520_0 >= AT_AT_SIGN_SYMBOL) && (LA520_0 <= AT_TEXT_SUFFIX)) || LA520_0 == BACK_TICK_QUOTED_ID || LA520_0 == CHAR_SYMBOL || LA520_0 == DEFAULT_SYMBOL || LA520_0 == DOUBLE_QUOTED_TEXT || LA520_0 == IDENTIFIER))
                    {
                        alt520=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 520;
                        EXCEPTION->state        = 0;


                        goto ruleset_statementEx;

                    }
                }
                switch (alt520)
                {
            	case 1:
            	    // MySQL.g:1818:5: ( option_type )? TRANSACTION_SYMBOL set_transaction_characteristic
            	    {
            	        // MySQL.g:1818:5: ( option_type )?
            	        {
            	            int alt516=2;
            	            switch ( LA(1) )
            	            {
            	                case GLOBAL_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                case SESSION_SYMBOL:
            	                	{
            	                		alt516=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt516)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1818:5: option_type
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_option_type_in_set_statement8785);
            	        	        option_type1649=option_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1649.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        TRANSACTION_SYMBOL1650 = (pANTLR3_COMMON_TOKEN) MATCHT(TRANSACTION_SYMBOL, &FOLLOW_TRANSACTION_SYMBOL_in_set_statement8788);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRANSACTION_SYMBOL1650_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRANSACTION_SYMBOL1650));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRANSACTION_SYMBOL1650_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_set_transaction_characteristic_in_set_statement8790);
            	        set_transaction_characteristic1651=set_transaction_characteristic(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_transaction_characteristic1651.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1820:6: ( ONE_SHOT_SYMBOL )? option_value_no_option_type ( COMMA_SYMBOL option_value_list )?
            	    {
            	        // MySQL.g:1820:6: ( ONE_SHOT_SYMBOL )?
            	        {
            	            int alt517=2;
            	            switch ( LA(1) )
            	            {
            	                case ONE_SHOT_SYMBOL:
            	                	{
            	                		{
            	                		    int LA517_1 = LA(2);
            	                		    if ( (((LA517_1 >= ACCOUNT_SYMBOL) && (LA517_1 <= YEAR_SYMBOL)) || ((LA517_1 >= AT_AT_SIGN_SYMBOL) && (LA517_1 <= AT_TEXT_SUFFIX)) || LA517_1 == BACK_TICK_QUOTED_ID || LA517_1 == CHAR_SYMBOL || LA517_1 == DEFAULT_SYMBOL || LA517_1 == DOUBLE_QUOTED_TEXT || LA517_1 == IDENTIFIER))
            	                		    {
            	                		        alt517=1;
            	                		    }
            	                		}
            	                	}
            	                    break;
            	            }

            	            switch (alt517)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1820:6: ONE_SHOT_SYMBOL
            	        	    {
            	        	        ONE_SHOT_SYMBOL1652 = (pANTLR3_COMMON_TOKEN) MATCHT(ONE_SHOT_SYMBOL, &FOLLOW_ONE_SHOT_SYMBOL_in_set_statement8801);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ONE_SHOT_SYMBOL1652_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ONE_SHOT_SYMBOL1652));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ONE_SHOT_SYMBOL1652_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_option_value_no_option_type_in_set_statement8804);
            	        option_value_no_option_type1653=option_value_no_option_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value_no_option_type1653.tree);

            	        // MySQL.g:1820:51: ( COMMA_SYMBOL option_value_list )?
            	        {
            	            int alt518=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt518=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt518)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1820:52: COMMA_SYMBOL option_value_list
            	        	    {
            	        	        COMMA_SYMBOL1654 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_set_statement8807);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1654_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1654));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1654_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_option_value_list_in_set_statement8809);
            	        	        option_value_list1655=option_value_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value_list1655.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1821:6: option_type option_value_following_option_type ( COMMA_SYMBOL option_value_list )?
            	    {
            	        FOLLOWPUSH(FOLLOW_option_type_in_set_statement8818);
            	        option_type1656=option_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1656.tree);

            	        FOLLOWPUSH(FOLLOW_option_value_following_option_type_in_set_statement8820);
            	        option_value_following_option_type1657=option_value_following_option_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleset_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value_following_option_type1657.tree);

            	        // MySQL.g:1821:53: ( COMMA_SYMBOL option_value_list )?
            	        {
            	            int alt519=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt519=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt519)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1821:54: COMMA_SYMBOL option_value_list
            	        	    {
            	        	        COMMA_SYMBOL1658 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_set_statement8823);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1658_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1658));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1658_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_option_value_list_in_set_statement8825);
            	        	        option_value_list1659=option_value_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleset_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value_list1659.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 option_value_no_option_type
 * MySQL.g:1827:1: option_value_no_option_type : ({...}? 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_option_value_no_option_type_return
option_value_no_option_type(pMySQLParser ctx)
{
    MySQLParser_option_value_no_option_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NAMES_SYMBOL1660;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL1664;
    MySQLParser_equal_return equal1661;
    #undef	RETURN_TYPE_equal1661
    #define	RETURN_TYPE_equal1661 MySQLParser_equal_return

    MySQLParser_expression_return expression1662;
    #undef	RETURN_TYPE_expression1662
    #define	RETURN_TYPE_expression1662 MySQLParser_expression_return

    MySQLParser_charset_name_or_default_return charset_name_or_default1663;
    #undef	RETURN_TYPE_charset_name_or_default1663
    #define	RETURN_TYPE_charset_name_or_default1663 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default1665;
    #undef	RETURN_TYPE_collation_name_or_default1665
    #define	RETURN_TYPE_collation_name_or_default1665 MySQLParser_collation_name_or_default_return

    MySQLParser_variable_name_return variable_name1666;
    #undef	RETURN_TYPE_variable_name1666
    #define	RETURN_TYPE_variable_name1666 MySQLParser_variable_name_return

    MySQLParser_equal_return equal1667;
    #undef	RETURN_TYPE_equal1667
    #define	RETURN_TYPE_equal1667 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1668;
    #undef	RETURN_TYPE_set_expression_or_default1668
    #define	RETURN_TYPE_set_expression_or_default1668 MySQLParser_set_expression_or_default_return

    MySQLParser_user_variable_return user_variable1669;
    #undef	RETURN_TYPE_user_variable1669
    #define	RETURN_TYPE_user_variable1669 MySQLParser_user_variable_return

    MySQLParser_equal_return equal1670;
    #undef	RETURN_TYPE_equal1670
    #define	RETURN_TYPE_equal1670 MySQLParser_equal_return

    MySQLParser_expression_return expression1671;
    #undef	RETURN_TYPE_expression1671
    #define	RETURN_TYPE_expression1671 MySQLParser_expression_return

    MySQLParser_system_variable_return system_variable1672;
    #undef	RETURN_TYPE_system_variable1672
    #define	RETURN_TYPE_system_variable1672 MySQLParser_system_variable_return

    MySQLParser_equal_return equal1673;
    #undef	RETURN_TYPE_equal1673
    #define	RETURN_TYPE_equal1673 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1674;
    #undef	RETURN_TYPE_set_expression_or_default1674
    #define	RETURN_TYPE_set_expression_or_default1674 MySQLParser_set_expression_or_default_return

    MySQLParser_charset_clause_return charset_clause1675;
    #undef	RETURN_TYPE_charset_clause1675
    #define	RETURN_TYPE_charset_clause1675 MySQLParser_charset_clause_return

    pANTLR3_BASE_TREE NAMES_SYMBOL1660_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL1664_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NAMES_SYMBOL1660       = NULL;
    COLLATE_SYMBOL1664       = NULL;
    equal1661.tree = NULL;

    expression1662.tree = NULL;

    charset_name_or_default1663.tree = NULL;

    collation_name_or_default1665.tree = NULL;

    variable_name1666.tree = NULL;

    equal1667.tree = NULL;

    set_expression_or_default1668.tree = NULL;

    user_variable1669.tree = NULL;

    equal1670.tree = NULL;

    expression1671.tree = NULL;

    system_variable1672.tree = NULL;

    equal1673.tree = NULL;

    set_expression_or_default1674.tree = NULL;

    charset_clause1675.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NAMES_SYMBOL1660_tree   = NULL;
    COLLATE_SYMBOL1664_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1827:28: ({...}? 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 alt523;

            alt523=5;

            {
                int LA523_0 = LA(1);
                if ( (LA523_0 == NAMES_SYMBOL))
                {
                    {
                        int LA523_1 = LA(2);
                        if ( (LA523_1 == ASSIGN_OPERATOR || LA523_1 == EQUAL_OPERATOR))
                        {
                            {
                                int LA523_13 = LA(3);
                                if ( ((LA(1) == NAMES_SYMBOL)))
                                {
                                    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        = 13;


                                    goto ruleoption_value_no_option_typeEx;

                                }
                            }
                        }
                        else if ( (((LA523_1 >= ACCOUNT_SYMBOL) && (LA523_1 <= YEAR_SYMBOL)) || LA523_1 == BACK_TICK_QUOTED_ID || LA523_1 == BINARY_SYMBOL || LA523_1 == DEFAULT_SYMBOL || LA523_1 == DOUBLE_QUOTED_TEXT || LA523_1 == IDENTIFIER || LA523_1 == SINGLE_QUOTED_TEXT))
                        {
                            alt523=1;
                        }
                        else if ( (LA523_1 == DOT_SYMBOL))
                        {
                            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        = 1;


                            goto ruleoption_value_no_option_typeEx;

                        }
                    }
                }
                else if ( (((LA523_0 >= ACCOUNT_SYMBOL) && (LA523_0 <= CACHE_SYMBOL)) || ((LA523_0 >= CHECKSUM_SYMBOL) && (LA523_0 <= NAME_SYMBOL)) || ((LA523_0 >= NATIONAL_SYMBOL) && (LA523_0 <= YEAR_SYMBOL)) || LA523_0 == BACK_TICK_QUOTED_ID || LA523_0 == DEFAULT_SYMBOL || LA523_0 == DOUBLE_QUOTED_TEXT || LA523_0 == IDENTIFIER))
                {
                    alt523=2;
                }
                else if ( (LA523_0 == CHARSET_SYMBOL))
                {
                    {
                        int LA523_6 = LA(2);
                        if ( (LA523_6 == ASSIGN_OPERATOR || LA523_6 == DOT_SYMBOL || LA523_6 == EQUAL_OPERATOR))
                        {
                            alt523=2;
                        }
                        else if ( (((LA523_6 >= ACCOUNT_SYMBOL) && (LA523_6 <= YEAR_SYMBOL)) || LA523_6 == BACK_TICK_QUOTED_ID || LA523_6 == BINARY_SYMBOL || LA523_6 == DEFAULT_SYMBOL || LA523_6 == DOUBLE_QUOTED_TEXT || LA523_6 == IDENTIFIER || LA523_6 == SINGLE_QUOTED_TEXT))
                        {
                            alt523=5;
                        }
                        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        = 6;


                            goto ruleoption_value_no_option_typeEx;

                        }
                    }
                }
                else if ( (((LA523_0 >= AT_SIGN_SYMBOL) && (LA523_0 <= AT_TEXT_SUFFIX))))
                {
                    alt523=3;
                }
                else if ( (LA523_0 == AT_AT_SIGN_SYMBOL))
                {
                    alt523=4;
                }
                else if ( (LA523_0 == CHAR_SYMBOL))
                {
                    alt523=5;
                }
                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 ruleoption_value_no_option_typeEx;

                }
            }
            switch (alt523)
            {
        	case 1:
        	    // MySQL.g:1828: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 *)"option_value_no_option_type";


        	        }

        	        NAMES_SYMBOL1660 = (pANTLR3_COMMON_TOKEN) MATCHT(NAMES_SYMBOL, &FOLLOW_NAMES_SYMBOL_in_option_value_no_option_type8850);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NAMES_SYMBOL1660_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NAMES_SYMBOL1660));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NAMES_SYMBOL1660_tree);
        	        }

        	        // MySQL.g:1829:3: ( equal expression | charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )? )
        	        {
        	            int alt522=2;
        	            {
        	                int LA522_0 = LA(1);
        	                if ( (LA522_0 == ASSIGN_OPERATOR || LA522_0 == EQUAL_OPERATOR))
        	                {
        	                    alt522=1;
        	                }
        	                else if ( (((LA522_0 >= ACCOUNT_SYMBOL) && (LA522_0 <= YEAR_SYMBOL)) || LA522_0 == BACK_TICK_QUOTED_ID || LA522_0 == BINARY_SYMBOL || LA522_0 == DEFAULT_SYMBOL || LA522_0 == DOUBLE_QUOTED_TEXT || LA522_0 == IDENTIFIER || LA522_0 == SINGLE_QUOTED_TEXT))
        	                {
        	                    alt522=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 522;
        	                    EXCEPTION->state        = 0;


        	                    goto ruleoption_value_no_option_typeEx;

        	                }
        	            }
        	            switch (alt522)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1830:4: equal expression
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_equal_in_option_value_no_option_type8859);
        	        	        equal1661=equal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleoption_value_no_option_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1661.tree);

        	        	        FOLLOWPUSH(FOLLOW_expression_in_option_value_no_option_type8861);
        	        	        expression1662=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleoption_value_no_option_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1662.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1831:6: charset_name_or_default ( COLLATE_SYMBOL collation_name_or_default )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_option_value_no_option_type8868);
        	        	        charset_name_or_default1663=charset_name_or_default(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleoption_value_no_option_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name_or_default1663.tree);

        	        	        // MySQL.g:1831:30: ( COLLATE_SYMBOL collation_name_or_default )?
        	        	        {
        	        	            int alt521=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case COLLATE_SYMBOL:
        	        	                	{
        	        	                		alt521=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt521)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1831:31: COLLATE_SYMBOL collation_name_or_default
        	        	        	    {
        	        	        	        COLLATE_SYMBOL1664 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_option_value_no_option_type8871);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleoption_value_no_option_typeEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        COLLATE_SYMBOL1664_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL1664));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL1664_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_option_value_no_option_type8873);
        	        	        	        collation_name_or_default1665=collation_name_or_default(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleoption_value_no_option_typeEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name_or_default1665.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1833:4: variable_name equal set_expression_or_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_variable_name_in_option_value_no_option_type8884);
        	        variable_name1666=variable_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name1666.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value_no_option_type8886);
        	        equal1667=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1667.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value_no_option_type8888);
        	        set_expression_or_default1668=set_expression_or_default(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_expression_or_default1668.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1834:4: user_variable equal expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_user_variable_in_option_value_no_option_type8893);
        	        user_variable1669=user_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable1669.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value_no_option_type8895);
        	        equal1670=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1670.tree);

        	        FOLLOWPUSH(FOLLOW_expression_in_option_value_no_option_type8897);
        	        expression1671=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1671.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1835:4: system_variable equal set_expression_or_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_system_variable_in_option_value_no_option_type8902);
        	        system_variable1672=system_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, system_variable1672.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value_no_option_type8904);
        	        equal1673=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1673.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value_no_option_type8906);
        	        set_expression_or_default1674=set_expression_or_default(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_expression_or_default1674.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1836:4: charset_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_clause_in_option_value_no_option_type8911);
        	        charset_clause1675=charset_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_value_no_option_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_clause1675.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleoption_value_no_option_typeEx; /* Prevent compiler warnings */
    ruleoption_value_no_option_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_value_no_option_type */

/**
 * $ANTLR start option_value_following_option_type
 * MySQL.g:1839:1: option_value_following_option_type : variable_name equal set_expression_or_default ;
 */
static MySQLParser_option_value_following_option_type_return
option_value_following_option_type(pMySQLParser ctx)
{
    MySQLParser_option_value_following_option_type_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_variable_name_return variable_name1676;
    #undef	RETURN_TYPE_variable_name1676
    #define	RETURN_TYPE_variable_name1676 MySQLParser_variable_name_return

    MySQLParser_equal_return equal1677;
    #undef	RETURN_TYPE_equal1677
    #define	RETURN_TYPE_equal1677 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1678;
    #undef	RETURN_TYPE_set_expression_or_default1678
    #define	RETURN_TYPE_set_expression_or_default1678 MySQLParser_set_expression_or_default_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    variable_name1676.tree = NULL;

    equal1677.tree = NULL;

    set_expression_or_default1678.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1839:35: ( variable_name equal set_expression_or_default )
        // MySQL.g:1840:2: variable_name equal set_expression_or_default
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_variable_name_in_option_value_following_option_type8920);
            variable_name1676=variable_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleoption_value_following_option_typeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name1676.tree);

            FOLLOWPUSH(FOLLOW_equal_in_option_value_following_option_type8922);
            equal1677=equal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleoption_value_following_option_typeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1677.tree);

            FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value_following_option_type8924);
            set_expression_or_default1678=set_expression_or_default(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleoption_value_following_option_typeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, set_expression_or_default1678.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleoption_value_following_option_typeEx; /* Prevent compiler warnings */
    ruleoption_value_following_option_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_value_following_option_type */

/**
 * $ANTLR start set_expression_or_default
 * MySQL.g:1843: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_SYMBOL1680;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL1681;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1682;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL1683;
    MySQLParser_expression_return expression1679;
    #undef	RETURN_TYPE_expression1679
    #define	RETURN_TYPE_expression1679 MySQLParser_expression_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL1680_tree;
    pANTLR3_BASE_TREE ON_SYMBOL1681_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1682_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL1683_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL1680       = NULL;
    ON_SYMBOL1681       = NULL;
    ALL_SYMBOL1682       = NULL;
    BINARY_SYMBOL1683       = NULL;
    expression1679.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL1680_tree   = NULL;
    ON_SYMBOL1681_tree   = NULL;
    ALL_SYMBOL1682_tree   = NULL;
    BINARY_SYMBOL1683_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1843:26: ( expression | DEFAULT_SYMBOL | ON_SYMBOL | ALL_SYMBOL | BINARY_SYMBOL )

            ANTLR3_UINT32 alt524;

            alt524=5;

            {
                int LA524_0 = LA(1);
                if ( (((LA524_0 >= ACCOUNT_SYMBOL) && (LA524_0 <= YEAR_SYMBOL)) || ((LA524_0 >= AT_AT_SIGN_SYMBOL) && (LA524_0 <= AT_TEXT_SUFFIX)) || LA524_0 == BACK_TICK_QUOTED_ID || LA524_0 == BIN_NUMBER || LA524_0 == BITWISE_NOT_OPERATOR || ((LA524_0 >= BIT_AND_SYMBOL) && (LA524_0 <= BIT_XOR_SYMBOL)) || ((LA524_0 >= CASE_SYMBOL) && (LA524_0 <= CAST_SYMBOL)) || LA524_0 == CHAR_SYMBOL || ((LA524_0 >= CONVERT_SYMBOL) && (LA524_0 <= COUNT_SYMBOL)) || LA524_0 == CURDATE_SYMBOL || LA524_0 == CURRENT_USER_SYMBOL || LA524_0 == CURTIME_SYMBOL || LA524_0 == DATABASE_SYMBOL || LA524_0 == DATE_ADD_SYMBOL || LA524_0 == DATE_SUB_SYMBOL || LA524_0 == DECIMAL_NUMBER || LA524_0 == DOT_SYMBOL || LA524_0 == DOUBLE_QUOTED_TEXT || LA524_0 == EXISTS_SYMBOL || ((LA524_0 >= EXTRACT_SYMBOL) && (LA524_0 <= FALSE_SYMBOL)) || LA524_0 == FLOAT_NUMBER || LA524_0 == GROUP_CONCAT_SYMBOL || LA524_0 == HEX_NUMBER || ((LA524_0 >= IDENTIFIER) && (LA524_0 <= IF_SYMBOL)) || LA524_0 == INSERT_SYMBOL || LA524_0 == INTERVAL_SYMBOL || LA524_0 == INT_NUMBER || LA524_0 == LEFT_SYMBOL || LA524_0 == LOGICAL_NOT_OPERATOR || LA524_0 == LONG_NUMBER || LA524_0 == MATCH_SYMBOL || LA524_0 == MAX_SYMBOL || LA524_0 == MINUS_OPERATOR || LA524_0 == MIN_SYMBOL || LA524_0 == MOD_SYMBOL || LA524_0 == NCHAR_TEXT || LA524_0 == NOT2_SYMBOL || ((LA524_0 >= NOT_SYMBOL) && (LA524_0 <= NOW_SYMBOL)) || LA524_0 == NULL2_SYMBOL || LA524_0 == NULL_SYMBOL || ((LA524_0 >= OPEN_CURLY_SYMBOL) && (LA524_0 <= OPEN_PAR_SYMBOL)) || LA524_0 == PARAM_MARKER || ((LA524_0 >= PLUS_OPERATOR) && (LA524_0 <= POSITION_SYMBOL)) || ((LA524_0 >= REPEAT_SYMBOL) && (LA524_0 <= REPLACE_SYMBOL)) || LA524_0 == RIGHT_SYMBOL || LA524_0 == SINGLE_QUOTED_TEXT || LA524_0 == STDDEV_SAMP_SYMBOL || LA524_0 == STD_SYMBOL || LA524_0 == SUBSTRING_SYMBOL || ((LA524_0 >= SUM_SYMBOL) && (LA524_0 <= SYSDATE_SYMBOL)) || ((LA524_0 >= TRIM_SYMBOL) && (LA524_0 <= TRUE_SYMBOL)) || LA524_0 == ULONGLONG_NUMBER || LA524_0 == UNDERSCORE_CHARSET || ((LA524_0 >= UTC_DATE_SYMBOL) && (LA524_0 <= UTC_TIME_SYMBOL)) || LA524_0 == VALUES_SYMBOL || LA524_0 == VARIANCE_SYMBOL || LA524_0 == VAR_SAMP_SYMBOL))
                {
                    alt524=1;
                }
                else if ( (LA524_0 == BINARY_SYMBOL))
                {
                    {
                        int LA524_100 = LA(2);
                        if ( (((LA524_100 >= ACCOUNT_SYMBOL) && (LA524_100 <= YEAR_SYMBOL)) || ((LA524_100 >= AT_AT_SIGN_SYMBOL) && (LA524_100 <= AT_TEXT_SUFFIX)) || LA524_100 == BACK_TICK_QUOTED_ID || ((LA524_100 >= BINARY_SYMBOL) && (LA524_100 <= BIN_NUMBER)) || ((LA524_100 >= BIT_AND_SYMBOL) && (LA524_100 <= BIT_XOR_SYMBOL)) || ((LA524_100 >= CASE_SYMBOL) && (LA524_100 <= CAST_SYMBOL)) || LA524_100 == CHAR_SYMBOL || ((LA524_100 >= CONVERT_SYMBOL) && (LA524_100 <= COUNT_SYMBOL)) || LA524_100 == CURDATE_SYMBOL || LA524_100 == CURRENT_USER_SYMBOL || LA524_100 == CURTIME_SYMBOL || LA524_100 == DATABASE_SYMBOL || LA524_100 == DATE_ADD_SYMBOL || LA524_100 == DATE_SUB_SYMBOL || LA524_100 == DECIMAL_NUMBER || LA524_100 == DOT_SYMBOL || LA524_100 == DOUBLE_QUOTED_TEXT || LA524_100 == EXISTS_SYMBOL || ((LA524_100 >= EXTRACT_SYMBOL) && (LA524_100 <= FALSE_SYMBOL)) || LA524_100 == FLOAT_NUMBER || LA524_100 == GROUP_CONCAT_SYMBOL || LA524_100 == HEX_NUMBER || ((LA524_100 >= IDENTIFIER) && (LA524_100 <= IF_SYMBOL)) || LA524_100 == INSERT_SYMBOL || LA524_100 == INT_NUMBER || LA524_100 == LEFT_SYMBOL || LA524_100 == LONG_NUMBER || LA524_100 == MATCH_SYMBOL || LA524_100 == MAX_SYMBOL || LA524_100 == MIN_SYMBOL || LA524_100 == MOD_SYMBOL || LA524_100 == NCHAR_TEXT || LA524_100 == NOW_SYMBOL || LA524_100 == NULL2_SYMBOL || LA524_100 == NULL_SYMBOL || ((LA524_100 >= OPEN_CURLY_SYMBOL) && (LA524_100 <= OPEN_PAR_SYMBOL)) || LA524_100 == PARAM_MARKER || LA524_100 == POSITION_SYMBOL || ((LA524_100 >= REPEAT_SYMBOL) && (LA524_100 <= REPLACE_SYMBOL)) || LA524_100 == RIGHT_SYMBOL || LA524_100 == SINGLE_QUOTED_TEXT || LA524_100 == STDDEV_SAMP_SYMBOL || LA524_100 == STD_SYMBOL || LA524_100 == SUBSTRING_SYMBOL || ((LA524_100 >= SUM_SYMBOL) && (LA524_100 <= SYSDATE_SYMBOL)) || ((LA524_100 >= TRIM_SYMBOL) && (LA524_100 <= TRUE_SYMBOL)) || LA524_100 == ULONGLONG_NUMBER || LA524_100 == UNDERSCORE_CHARSET || ((LA524_100 >= UTC_DATE_SYMBOL) && (LA524_100 <= UTC_TIME_SYMBOL)) || LA524_100 == VALUES_SYMBOL || LA524_100 == VARIANCE_SYMBOL || LA524_100 == VAR_SAMP_SYMBOL))
                        {
                            alt524=1;
                        }
                        else if ( (LA524_100 == EOF || LA524_100 == COMMA_SYMBOL || LA524_100 == SEMICOLON_SYMBOL))
                        {
                            alt524=5;
                        }
                        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        = 100;


                            goto ruleset_expression_or_defaultEx;

                        }
                    }
                }
                else if ( (LA524_0 == DEFAULT_SYMBOL))
                {
                    alt524=2;
                }
                else if ( (LA524_0 == ON_SYMBOL))
                {
                    alt524=3;
                }
                else if ( (LA524_0 == ALL_SYMBOL))
                {
                    alt524=4;
                }
                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 ruleset_expression_or_defaultEx;

                }
            }
            switch (alt524)
            {
        	case 1:
        	    // MySQL.g:1844:2: expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_expression_in_set_expression_or_default8934);
        	        expression1679=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1679.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1845:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL1680 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_set_expression_or_default8939);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL1680_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL1680));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL1680_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1846:4: ON_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ON_SYMBOL1681 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_set_expression_or_default8944);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ON_SYMBOL1681_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL1681));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL1681_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1847:4: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1682 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_set_expression_or_default8949);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1682_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1682));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1682_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1848:4: BINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL1683 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_set_expression_or_default8954);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleset_expression_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL1683_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL1683));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL1683_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:1851: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_SYMBOL1685;
    MySQLParser_option_value_return option_value1684;
    #undef	RETURN_TYPE_option_value1684
    #define	RETURN_TYPE_option_value1684 MySQLParser_option_value_return

    MySQLParser_option_value_return option_value1686;
    #undef	RETURN_TYPE_option_value1686
    #define	RETURN_TYPE_option_value1686 MySQLParser_option_value_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1685_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1685       = NULL;
    option_value1684.tree = NULL;

    option_value1686.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1685_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1851:18: ( option_value ( COMMA_SYMBOL option_value )* )
        // MySQL.g:1852:2: option_value ( COMMA_SYMBOL option_value )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_option_value_in_option_value_list8963);
            option_value1684=option_value(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleoption_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value1684.tree);

            // MySQL.g:1852:15: ( COMMA_SYMBOL option_value )*

            for (;;)
            {
                int alt525=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt525=1;
                	}
                    break;

                }

                switch (alt525)
                {
            	case 1:
            	    // MySQL.g:1852:16: COMMA_SYMBOL option_value
            	    {
            	        COMMA_SYMBOL1685 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_option_value_list8966);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleoption_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1685_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1685));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1685_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_option_value_in_option_value_list8968);
            	        option_value1686=option_value(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleoption_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value1686.tree);

            	    }
            	    break;

            	default:
            	    goto loop525;	/* break out of the loop */
            	    break;
                }
            }
            loop525: ; /* 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:1855:1: option_value : ( option_type variable_name equal set_expression_or_default | option_value_no_option_type );
 */
static MySQLParser_option_value_return
option_value(pMySQLParser ctx)
{
    MySQLParser_option_value_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_option_type_return option_type1687;
    #undef	RETURN_TYPE_option_type1687
    #define	RETURN_TYPE_option_type1687 MySQLParser_option_type_return

    MySQLParser_variable_name_return variable_name1688;
    #undef	RETURN_TYPE_variable_name1688
    #define	RETURN_TYPE_variable_name1688 MySQLParser_variable_name_return

    MySQLParser_equal_return equal1689;
    #undef	RETURN_TYPE_equal1689
    #define	RETURN_TYPE_equal1689 MySQLParser_equal_return

    MySQLParser_set_expression_or_default_return set_expression_or_default1690;
    #undef	RETURN_TYPE_set_expression_or_default1690
    #define	RETURN_TYPE_set_expression_or_default1690 MySQLParser_set_expression_or_default_return

    MySQLParser_option_value_no_option_type_return option_value_no_option_type1691;
    #undef	RETURN_TYPE_option_value_no_option_type1691
    #define	RETURN_TYPE_option_value_no_option_type1691 MySQLParser_option_value_no_option_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    option_type1687.tree = NULL;

    variable_name1688.tree = NULL;

    equal1689.tree = NULL;

    set_expression_or_default1690.tree = NULL;

    option_value_no_option_type1691.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1855:13: ( option_type variable_name equal set_expression_or_default | option_value_no_option_type )

            ANTLR3_UINT32 alt526;

            alt526=2;

            {
                int LA526_0 = LA(1);
                if ( (LA526_0 == GLOBAL_SYMBOL || LA526_0 == LOCAL_SYMBOL || LA526_0 == SESSION_SYMBOL))
                {
                    {
                        int LA526_1 = LA(2);
                        if ( (((LA526_1 >= ACCOUNT_SYMBOL) && (LA526_1 <= YEAR_SYMBOL)) || LA526_1 == BACK_TICK_QUOTED_ID || LA526_1 == DEFAULT_SYMBOL || LA526_1 == DOUBLE_QUOTED_TEXT || LA526_1 == IDENTIFIER))
                        {
                            alt526=1;
                        }
                        else if ( (LA526_1 == ASSIGN_OPERATOR || LA526_1 == DOT_SYMBOL || LA526_1 == EQUAL_OPERATOR))
                        {
                            alt526=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 526;
                            EXCEPTION->state        = 1;


                            goto ruleoption_valueEx;

                        }
                    }
                }
                else if ( (((LA526_0 >= ACCOUNT_SYMBOL) && (LA526_0 <= GRANTS_SYMBOL)) || ((LA526_0 >= HASH_SYMBOL) && (LA526_0 <= LIST_SYMBOL)) || ((LA526_0 >= LOCKS_SYMBOL) && (LA526_0 <= SERIALIZABLE_SYMBOL)) || ((LA526_0 >= SIMPLE_SYMBOL) && (LA526_0 <= YEAR_SYMBOL)) || ((LA526_0 >= AT_AT_SIGN_SYMBOL) && (LA526_0 <= AT_TEXT_SUFFIX)) || LA526_0 == BACK_TICK_QUOTED_ID || LA526_0 == CHAR_SYMBOL || LA526_0 == DEFAULT_SYMBOL || LA526_0 == DOUBLE_QUOTED_TEXT || LA526_0 == IDENTIFIER))
                {
                    alt526=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 526;
                    EXCEPTION->state        = 0;


                    goto ruleoption_valueEx;

                }
            }
            switch (alt526)
            {
        	case 1:
        	    // MySQL.g:1856:2: option_type variable_name equal set_expression_or_default
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_option_type_in_option_value8979);
        	        option_type1687=option_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1687.tree);

        	        FOLLOWPUSH(FOLLOW_variable_name_in_option_value8981);
        	        variable_name1688=variable_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name1688.tree);

        	        FOLLOWPUSH(FOLLOW_equal_in_option_value8983);
        	        equal1689=equal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, equal1689.tree);

        	        FOLLOWPUSH(FOLLOW_set_expression_or_default_in_option_value8985);
        	        set_expression_or_default1690=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_default1690.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1857:4: option_value_no_option_type
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_option_value_no_option_type_in_option_value8990);
        	        option_value_no_option_type1691=option_value_no_option_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleoption_valueEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_value_no_option_type1691.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:1862:1: show_statement : SHOW_SYMBOL ^ ({...}? AUTHORS_SYMBOL | DATABASES_SYMBOL ( like_or_where )? | ( FULL_SYMBOL )? TABLES_SYMBOL ( in_db )? ( like_or_where )? | ( FULL_SYMBOL )? TRIGGERS_SYMBOL ( in_db )? ( like_or_where )? | EVENTS_SYMBOL ( in_db )? ( like_or_where )? | TABLE_SYMBOL STATUS_SYMBOL ( in_db )? ( like_or_where )? | OPEN_SYMBOL TABLES_SYMBOL ( in_db )? ( like_or_where )? |{...}? PLUGIN_SYMBOL |{...}? PLUGINS_SYMBOL | ENGINE_SYMBOL engine_ref ( STATUS_SYMBOL | MUTEX_SYMBOL ) | ( FULL_SYMBOL )? COLUMNS_SYMBOL ( FROM_SYMBOL | IN_SYMBOL ) table_ref ( in_db )? ( like_or_where )? | ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL | SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL non_blocking ( channel )? ) | ( BINLOG_SYMBOL | RELAYLOG_SYMBOL ) EVENTS_SYMBOL ( IN_SYMBOL text_string )? ( FROM_SYMBOL ulonglong_number )? ( limit_clause )? ( channel )? | ( INDEX_SYMBOL | INDEXES_SYMBOL | KEYS_SYMBOL ) from_or_in table_ref ( in_db )? ( where_clause )? | ( STORAGE_SYMBOL )? ENGINES_SYMBOL | PRIVILEGES_SYMBOL | COUNT_SYMBOL OPEN_PAR_SYMBOL MULT_OPERATOR CLOSE_PAR_SYMBOL ( WARNINGS_SYMBOL | ERRORS_SYMBOL ) | WARNINGS_SYMBOL ( limit_clause )? | ERRORS_SYMBOL ( limit_clause )? | PROFILES_SYMBOL | PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INT_NUMBER )? ( limit_clause )? | ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )? | ( FULL_SYMBOL )? PROCESSLIST_SYMBOL | charset ( like_or_where )? | COLLATION_SYMBOL ( like_or_where )? |{...}? CONTRIBUTORS_SYMBOL | GRANTS_SYMBOL ( FOR_SYMBOL user )? | MASTER_SYMBOL STATUS_SYMBOL | CREATE_SYMBOL ( DATABASE_SYMBOL ( if_not_exists )? schema_ref | EVENT_SYMBOL event_ref | FUNCTION_SYMBOL function_ref | PROCEDURE_SYMBOL procedure_ref | TABLE_SYMBOL table_ref | TRIGGER_SYMBOL trigger_ref | VIEW_SYMBOL view_ref |{...}? USER_SYMBOL user ) | PROCEDURE_SYMBOL STATUS_SYMBOL ( like_or_where )? | FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )? | PROCEDURE_SYMBOL CODE_SYMBOL procedure_ref | FUNCTION_SYMBOL CODE_SYMBOL function_ref |{...}? INNODB_SYMBOL STATUS_SYMBOL ) ;
 */
static MySQLParser_show_statement_return
show_statement(pMySQLParser ctx)
{
    MySQLParser_show_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SHOW_SYMBOL1692;
    pANTLR3_COMMON_TOKEN    AUTHORS_SYMBOL1693;
    pANTLR3_COMMON_TOKEN    DATABASES_SYMBOL1694;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1696;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1697;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1700;
    pANTLR3_COMMON_TOKEN    TRIGGERS_SYMBOL1701;
    pANTLR3_COMMON_TOKEN    EVENTS_SYMBOL1704;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1707;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1708;
    pANTLR3_COMMON_TOKEN    OPEN_SYMBOL1711;
    pANTLR3_COMMON_TOKEN    TABLES_SYMBOL1712;
    pANTLR3_COMMON_TOKEN    PLUGIN_SYMBOL1715;
    pANTLR3_COMMON_TOKEN    PLUGINS_SYMBOL1716;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL1717;
    pANTLR3_COMMON_TOKEN    set1719;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1720;
    pANTLR3_COMMON_TOKEN    COLUMNS_SYMBOL1721;
    pANTLR3_COMMON_TOKEN    set1722;
    pANTLR3_COMMON_TOKEN    set1726;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1727;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1728;
    pANTLR3_COMMON_TOKEN    HOSTS_SYMBOL1729;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1730;
    pANTLR3_COMMON_TOKEN    set1733;
    pANTLR3_COMMON_TOKEN    EVENTS_SYMBOL1734;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1735;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL1737;
    pANTLR3_COMMON_TOKEN    set1741;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL1746;
    pANTLR3_COMMON_TOKEN    ENGINES_SYMBOL1747;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1748;
    pANTLR3_COMMON_TOKEN    COUNT_SYMBOL1749;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1750;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR1751;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1752;
    pANTLR3_COMMON_TOKEN    set1753;
    pANTLR3_COMMON_TOKEN    WARNINGS_SYMBOL1754;
    pANTLR3_COMMON_TOKEN    ERRORS_SYMBOL1756;
    pANTLR3_COMMON_TOKEN    PROFILES_SYMBOL1758;
    pANTLR3_COMMON_TOKEN    PROFILE_SYMBOL1759;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1761;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1763;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1764;
    pANTLR3_COMMON_TOKEN    INT_NUMBER1765;
    pANTLR3_COMMON_TOKEN    set1768;
    pANTLR3_COMMON_TOKEN    FULL_SYMBOL1770;
    pANTLR3_COMMON_TOKEN    PROCESSLIST_SYMBOL1771;
    pANTLR3_COMMON_TOKEN    COLLATION_SYMBOL1774;
    pANTLR3_COMMON_TOKEN    CONTRIBUTORS_SYMBOL1776;
    pANTLR3_COMMON_TOKEN    GRANTS_SYMBOL1777;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1778;
    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1780;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1781;
    pANTLR3_COMMON_TOKEN    CREATE_SYMBOL1782;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL1783;
    pANTLR3_COMMON_TOKEN    EVENT_SYMBOL1786;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1788;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1790;
    pANTLR3_COMMON_TOKEN    TABLE_SYMBOL1792;
    pANTLR3_COMMON_TOKEN    TRIGGER_SYMBOL1794;
    pANTLR3_COMMON_TOKEN    VIEW_SYMBOL1796;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL1798;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1800;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1801;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1803;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1804;
    pANTLR3_COMMON_TOKEN    PROCEDURE_SYMBOL1806;
    pANTLR3_COMMON_TOKEN    CODE_SYMBOL1807;
    pANTLR3_COMMON_TOKEN    FUNCTION_SYMBOL1809;
    pANTLR3_COMMON_TOKEN    CODE_SYMBOL1810;
    pANTLR3_COMMON_TOKEN    INNODB_SYMBOL1812;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1813;
    MySQLParser_like_or_where_return like_or_where1695;
    #undef	RETURN_TYPE_like_or_where1695
    #define	RETURN_TYPE_like_or_where1695 MySQLParser_like_or_where_return

    MySQLParser_in_db_return in_db1698;
    #undef	RETURN_TYPE_in_db1698
    #define	RETURN_TYPE_in_db1698 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1699;
    #undef	RETURN_TYPE_like_or_where1699
    #define	RETURN_TYPE_like_or_where1699 MySQLParser_like_or_where_return

    MySQLParser_in_db_return in_db1702;
    #undef	RETURN_TYPE_in_db1702
    #define	RETURN_TYPE_in_db1702 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1703;
    #undef	RETURN_TYPE_like_or_where1703
    #define	RETURN_TYPE_like_or_where1703 MySQLParser_like_or_where_return

    MySQLParser_in_db_return in_db1705;
    #undef	RETURN_TYPE_in_db1705
    #define	RETURN_TYPE_in_db1705 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1706;
    #undef	RETURN_TYPE_like_or_where1706
    #define	RETURN_TYPE_like_or_where1706 MySQLParser_like_or_where_return

    MySQLParser_in_db_return in_db1709;
    #undef	RETURN_TYPE_in_db1709
    #define	RETURN_TYPE_in_db1709 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1710;
    #undef	RETURN_TYPE_like_or_where1710
    #define	RETURN_TYPE_like_or_where1710 MySQLParser_like_or_where_return

    MySQLParser_in_db_return in_db1713;
    #undef	RETURN_TYPE_in_db1713
    #define	RETURN_TYPE_in_db1713 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1714;
    #undef	RETURN_TYPE_like_or_where1714
    #define	RETURN_TYPE_like_or_where1714 MySQLParser_like_or_where_return

    MySQLParser_engine_ref_return engine_ref1718;
    #undef	RETURN_TYPE_engine_ref1718
    #define	RETURN_TYPE_engine_ref1718 MySQLParser_engine_ref_return

    MySQLParser_table_ref_return table_ref1723;
    #undef	RETURN_TYPE_table_ref1723
    #define	RETURN_TYPE_table_ref1723 MySQLParser_table_ref_return

    MySQLParser_in_db_return in_db1724;
    #undef	RETURN_TYPE_in_db1724
    #define	RETURN_TYPE_in_db1724 MySQLParser_in_db_return

    MySQLParser_like_or_where_return like_or_where1725;
    #undef	RETURN_TYPE_like_or_where1725
    #define	RETURN_TYPE_like_or_where1725 MySQLParser_like_or_where_return

    MySQLParser_non_blocking_return non_blocking1731;
    #undef	RETURN_TYPE_non_blocking1731
    #define	RETURN_TYPE_non_blocking1731 MySQLParser_non_blocking_return

    MySQLParser_channel_return channel1732;
    #undef	RETURN_TYPE_channel1732
    #define	RETURN_TYPE_channel1732 MySQLParser_channel_return

    MySQLParser_text_string_return text_string1736;
    #undef	RETURN_TYPE_text_string1736
    #define	RETURN_TYPE_text_string1736 MySQLParser_text_string_return

    MySQLParser_ulonglong_number_return ulonglong_number1738;
    #undef	RETURN_TYPE_ulonglong_number1738
    #define	RETURN_TYPE_ulonglong_number1738 MySQLParser_ulonglong_number_return

    MySQLParser_limit_clause_return limit_clause1739;
    #undef	RETURN_TYPE_limit_clause1739
    #define	RETURN_TYPE_limit_clause1739 MySQLParser_limit_clause_return

    MySQLParser_channel_return channel1740;
    #undef	RETURN_TYPE_channel1740
    #define	RETURN_TYPE_channel1740 MySQLParser_channel_return

    MySQLParser_from_or_in_return from_or_in1742;
    #undef	RETURN_TYPE_from_or_in1742
    #define	RETURN_TYPE_from_or_in1742 MySQLParser_from_or_in_return

    MySQLParser_table_ref_return table_ref1743;
    #undef	RETURN_TYPE_table_ref1743
    #define	RETURN_TYPE_table_ref1743 MySQLParser_table_ref_return

    MySQLParser_in_db_return in_db1744;
    #undef	RETURN_TYPE_in_db1744
    #define	RETURN_TYPE_in_db1744 MySQLParser_in_db_return

    MySQLParser_where_clause_return where_clause1745;
    #undef	RETURN_TYPE_where_clause1745
    #define	RETURN_TYPE_where_clause1745 MySQLParser_where_clause_return

    MySQLParser_limit_clause_return limit_clause1755;
    #undef	RETURN_TYPE_limit_clause1755
    #define	RETURN_TYPE_limit_clause1755 MySQLParser_limit_clause_return

    MySQLParser_limit_clause_return limit_clause1757;
    #undef	RETURN_TYPE_limit_clause1757
    #define	RETURN_TYPE_limit_clause1757 MySQLParser_limit_clause_return

    MySQLParser_profile_type_return profile_type1760;
    #undef	RETURN_TYPE_profile_type1760
    #define	RETURN_TYPE_profile_type1760 MySQLParser_profile_type_return

    MySQLParser_profile_type_return profile_type1762;
    #undef	RETURN_TYPE_profile_type1762
    #define	RETURN_TYPE_profile_type1762 MySQLParser_profile_type_return

    MySQLParser_limit_clause_return limit_clause1766;
    #undef	RETURN_TYPE_limit_clause1766
    #define	RETURN_TYPE_limit_clause1766 MySQLParser_limit_clause_return

    MySQLParser_option_type_return option_type1767;
    #undef	RETURN_TYPE_option_type1767
    #define	RETURN_TYPE_option_type1767 MySQLParser_option_type_return

    MySQLParser_like_or_where_return like_or_where1769;
    #undef	RETURN_TYPE_like_or_where1769
    #define	RETURN_TYPE_like_or_where1769 MySQLParser_like_or_where_return

    MySQLParser_charset_return charset1772;
    #undef	RETURN_TYPE_charset1772
    #define	RETURN_TYPE_charset1772 MySQLParser_charset_return

    MySQLParser_like_or_where_return like_or_where1773;
    #undef	RETURN_TYPE_like_or_where1773
    #define	RETURN_TYPE_like_or_where1773 MySQLParser_like_or_where_return

    MySQLParser_like_or_where_return like_or_where1775;
    #undef	RETURN_TYPE_like_or_where1775
    #define	RETURN_TYPE_like_or_where1775 MySQLParser_like_or_where_return

    MySQLParser_user_return user1779;
    #undef	RETURN_TYPE_user1779
    #define	RETURN_TYPE_user1779 MySQLParser_user_return

    MySQLParser_if_not_exists_return if_not_exists1784;
    #undef	RETURN_TYPE_if_not_exists1784
    #define	RETURN_TYPE_if_not_exists1784 MySQLParser_if_not_exists_return

    MySQLParser_schema_ref_return schema_ref1785;
    #undef	RETURN_TYPE_schema_ref1785
    #define	RETURN_TYPE_schema_ref1785 MySQLParser_schema_ref_return

    MySQLParser_event_ref_return event_ref1787;
    #undef	RETURN_TYPE_event_ref1787
    #define	RETURN_TYPE_event_ref1787 MySQLParser_event_ref_return

    MySQLParser_function_ref_return function_ref1789;
    #undef	RETURN_TYPE_function_ref1789
    #define	RETURN_TYPE_function_ref1789 MySQLParser_function_ref_return

    MySQLParser_procedure_ref_return procedure_ref1791;
    #undef	RETURN_TYPE_procedure_ref1791
    #define	RETURN_TYPE_procedure_ref1791 MySQLParser_procedure_ref_return

    MySQLParser_table_ref_return table_ref1793;
    #undef	RETURN_TYPE_table_ref1793
    #define	RETURN_TYPE_table_ref1793 MySQLParser_table_ref_return

    MySQLParser_trigger_ref_return trigger_ref1795;
    #undef	RETURN_TYPE_trigger_ref1795
    #define	RETURN_TYPE_trigger_ref1795 MySQLParser_trigger_ref_return

    MySQLParser_view_ref_return view_ref1797;
    #undef	RETURN_TYPE_view_ref1797
    #define	RETURN_TYPE_view_ref1797 MySQLParser_view_ref_return

    MySQLParser_user_return user1799;
    #undef	RETURN_TYPE_user1799
    #define	RETURN_TYPE_user1799 MySQLParser_user_return

    MySQLParser_like_or_where_return like_or_where1802;
    #undef	RETURN_TYPE_like_or_where1802
    #define	RETURN_TYPE_like_or_where1802 MySQLParser_like_or_where_return

    MySQLParser_like_or_where_return like_or_where1805;
    #undef	RETURN_TYPE_like_or_where1805
    #define	RETURN_TYPE_like_or_where1805 MySQLParser_like_or_where_return

    MySQLParser_procedure_ref_return procedure_ref1808;
    #undef	RETURN_TYPE_procedure_ref1808
    #define	RETURN_TYPE_procedure_ref1808 MySQLParser_procedure_ref_return

    MySQLParser_function_ref_return function_ref1811;
    #undef	RETURN_TYPE_function_ref1811
    #define	RETURN_TYPE_function_ref1811 MySQLParser_function_ref_return

    pANTLR3_BASE_TREE SHOW_SYMBOL1692_tree;
    pANTLR3_BASE_TREE AUTHORS_SYMBOL1693_tree;
    pANTLR3_BASE_TREE DATABASES_SYMBOL1694_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1696_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1697_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1700_tree;
    pANTLR3_BASE_TREE TRIGGERS_SYMBOL1701_tree;
    pANTLR3_BASE_TREE EVENTS_SYMBOL1704_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1707_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1708_tree;
    pANTLR3_BASE_TREE OPEN_SYMBOL1711_tree;
    pANTLR3_BASE_TREE TABLES_SYMBOL1712_tree;
    pANTLR3_BASE_TREE PLUGIN_SYMBOL1715_tree;
    pANTLR3_BASE_TREE PLUGINS_SYMBOL1716_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL1717_tree;
    pANTLR3_BASE_TREE set1719_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1720_tree;
    pANTLR3_BASE_TREE COLUMNS_SYMBOL1721_tree;
    pANTLR3_BASE_TREE set1722_tree;
    pANTLR3_BASE_TREE set1726_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1727_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1728_tree;
    pANTLR3_BASE_TREE HOSTS_SYMBOL1729_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1730_tree;
    pANTLR3_BASE_TREE set1733_tree;
    pANTLR3_BASE_TREE EVENTS_SYMBOL1734_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1735_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL1737_tree;
    pANTLR3_BASE_TREE set1741_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL1746_tree;
    pANTLR3_BASE_TREE ENGINES_SYMBOL1747_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1748_tree;
    pANTLR3_BASE_TREE COUNT_SYMBOL1749_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1750_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR1751_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1752_tree;
    pANTLR3_BASE_TREE set1753_tree;
    pANTLR3_BASE_TREE WARNINGS_SYMBOL1754_tree;
    pANTLR3_BASE_TREE ERRORS_SYMBOL1756_tree;
    pANTLR3_BASE_TREE PROFILES_SYMBOL1758_tree;
    pANTLR3_BASE_TREE PROFILE_SYMBOL1759_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1761_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1763_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1764_tree;
    pANTLR3_BASE_TREE INT_NUMBER1765_tree;
    pANTLR3_BASE_TREE set1768_tree;
    pANTLR3_BASE_TREE FULL_SYMBOL1770_tree;
    pANTLR3_BASE_TREE PROCESSLIST_SYMBOL1771_tree;
    pANTLR3_BASE_TREE COLLATION_SYMBOL1774_tree;
    pANTLR3_BASE_TREE CONTRIBUTORS_SYMBOL1776_tree;
    pANTLR3_BASE_TREE GRANTS_SYMBOL1777_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL1778_tree;
    pANTLR3_BASE_TREE MASTER_SYMBOL1780_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1781_tree;
    pANTLR3_BASE_TREE CREATE_SYMBOL1782_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL1783_tree;
    pANTLR3_BASE_TREE EVENT_SYMBOL1786_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1788_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1790_tree;
    pANTLR3_BASE_TREE TABLE_SYMBOL1792_tree;
    pANTLR3_BASE_TREE TRIGGER_SYMBOL1794_tree;
    pANTLR3_BASE_TREE VIEW_SYMBOL1796_tree;
    pANTLR3_BASE_TREE USER_SYMBOL1798_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1800_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1801_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1803_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1804_tree;
    pANTLR3_BASE_TREE PROCEDURE_SYMBOL1806_tree;
    pANTLR3_BASE_TREE CODE_SYMBOL1807_tree;
    pANTLR3_BASE_TREE FUNCTION_SYMBOL1809_tree;
    pANTLR3_BASE_TREE CODE_SYMBOL1810_tree;
    pANTLR3_BASE_TREE INNODB_SYMBOL1812_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1813_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SHOW_SYMBOL1692       = NULL;
    AUTHORS_SYMBOL1693       = NULL;
    DATABASES_SYMBOL1694       = NULL;
    FULL_SYMBOL1696       = NULL;
    TABLES_SYMBOL1697       = NULL;
    FULL_SYMBOL1700       = NULL;
    TRIGGERS_SYMBOL1701       = NULL;
    EVENTS_SYMBOL1704       = NULL;
    TABLE_SYMBOL1707       = NULL;
    STATUS_SYMBOL1708       = NULL;
    OPEN_SYMBOL1711       = NULL;
    TABLES_SYMBOL1712       = NULL;
    PLUGIN_SYMBOL1715       = NULL;
    PLUGINS_SYMBOL1716       = NULL;
    ENGINE_SYMBOL1717       = NULL;
    set1719       = NULL;
    FULL_SYMBOL1720       = NULL;
    COLUMNS_SYMBOL1721       = NULL;
    set1722       = NULL;
    set1726       = NULL;
    LOGS_SYMBOL1727       = NULL;
    SLAVE_SYMBOL1728       = NULL;
    HOSTS_SYMBOL1729       = NULL;
    STATUS_SYMBOL1730       = NULL;
    set1733       = NULL;
    EVENTS_SYMBOL1734       = NULL;
    IN_SYMBOL1735       = NULL;
    FROM_SYMBOL1737       = NULL;
    set1741       = NULL;
    STORAGE_SYMBOL1746       = NULL;
    ENGINES_SYMBOL1747       = NULL;
    PRIVILEGES_SYMBOL1748       = NULL;
    COUNT_SYMBOL1749       = NULL;
    OPEN_PAR_SYMBOL1750       = NULL;
    MULT_OPERATOR1751       = NULL;
    CLOSE_PAR_SYMBOL1752       = NULL;
    set1753       = NULL;
    WARNINGS_SYMBOL1754       = NULL;
    ERRORS_SYMBOL1756       = NULL;
    PROFILES_SYMBOL1758       = NULL;
    PROFILE_SYMBOL1759       = NULL;
    COMMA_SYMBOL1761       = NULL;
    FOR_SYMBOL1763       = NULL;
    QUERY_SYMBOL1764       = NULL;
    INT_NUMBER1765       = NULL;
    set1768       = NULL;
    FULL_SYMBOL1770       = NULL;
    PROCESSLIST_SYMBOL1771       = NULL;
    COLLATION_SYMBOL1774       = NULL;
    CONTRIBUTORS_SYMBOL1776       = NULL;
    GRANTS_SYMBOL1777       = NULL;
    FOR_SYMBOL1778       = NULL;
    MASTER_SYMBOL1780       = NULL;
    STATUS_SYMBOL1781       = NULL;
    CREATE_SYMBOL1782       = NULL;
    DATABASE_SYMBOL1783       = NULL;
    EVENT_SYMBOL1786       = NULL;
    FUNCTION_SYMBOL1788       = NULL;
    PROCEDURE_SYMBOL1790       = NULL;
    TABLE_SYMBOL1792       = NULL;
    TRIGGER_SYMBOL1794       = NULL;
    VIEW_SYMBOL1796       = NULL;
    USER_SYMBOL1798       = NULL;
    PROCEDURE_SYMBOL1800       = NULL;
    STATUS_SYMBOL1801       = NULL;
    FUNCTION_SYMBOL1803       = NULL;
    STATUS_SYMBOL1804       = NULL;
    PROCEDURE_SYMBOL1806       = NULL;
    CODE_SYMBOL1807       = NULL;
    FUNCTION_SYMBOL1809       = NULL;
    CODE_SYMBOL1810       = NULL;
    INNODB_SYMBOL1812       = NULL;
    STATUS_SYMBOL1813       = NULL;
    like_or_where1695.tree = NULL;

    in_db1698.tree = NULL;

    like_or_where1699.tree = NULL;

    in_db1702.tree = NULL;

    like_or_where1703.tree = NULL;

    in_db1705.tree = NULL;

    like_or_where1706.tree = NULL;

    in_db1709.tree = NULL;

    like_or_where1710.tree = NULL;

    in_db1713.tree = NULL;

    like_or_where1714.tree = NULL;

    engine_ref1718.tree = NULL;

    table_ref1723.tree = NULL;

    in_db1724.tree = NULL;

    like_or_where1725.tree = NULL;

    non_blocking1731.tree = NULL;

    channel1732.tree = NULL;

    text_string1736.tree = NULL;

    ulonglong_number1738.tree = NULL;

    limit_clause1739.tree = NULL;

    channel1740.tree = NULL;

    from_or_in1742.tree = NULL;

    table_ref1743.tree = NULL;

    in_db1744.tree = NULL;

    where_clause1745.tree = NULL;

    limit_clause1755.tree = NULL;

    limit_clause1757.tree = NULL;

    profile_type1760.tree = NULL;

    profile_type1762.tree = NULL;

    limit_clause1766.tree = NULL;

    option_type1767.tree = NULL;

    like_or_where1769.tree = NULL;

    charset1772.tree = NULL;

    like_or_where1773.tree = NULL;

    like_or_where1775.tree = NULL;

    user1779.tree = NULL;

    if_not_exists1784.tree = NULL;

    schema_ref1785.tree = NULL;

    event_ref1787.tree = NULL;

    function_ref1789.tree = NULL;

    procedure_ref1791.tree = NULL;

    table_ref1793.tree = NULL;

    trigger_ref1795.tree = NULL;

    view_ref1797.tree = NULL;

    user1799.tree = NULL;

    like_or_where1802.tree = NULL;

    like_or_where1805.tree = NULL;

    procedure_ref1808.tree = NULL;

    function_ref1811.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SHOW_SYMBOL1692_tree   = NULL;
    AUTHORS_SYMBOL1693_tree   = NULL;
    DATABASES_SYMBOL1694_tree   = NULL;
    FULL_SYMBOL1696_tree   = NULL;
    TABLES_SYMBOL1697_tree   = NULL;
    FULL_SYMBOL1700_tree   = NULL;
    TRIGGERS_SYMBOL1701_tree   = NULL;
    EVENTS_SYMBOL1704_tree   = NULL;
    TABLE_SYMBOL1707_tree   = NULL;
    STATUS_SYMBOL1708_tree   = NULL;
    OPEN_SYMBOL1711_tree   = NULL;
    TABLES_SYMBOL1712_tree   = NULL;
    PLUGIN_SYMBOL1715_tree   = NULL;
    PLUGINS_SYMBOL1716_tree   = NULL;
    ENGINE_SYMBOL1717_tree   = NULL;
    set1719_tree   = NULL;
    FULL_SYMBOL1720_tree   = NULL;
    COLUMNS_SYMBOL1721_tree   = NULL;
    set1722_tree   = NULL;
    set1726_tree   = NULL;
    LOGS_SYMBOL1727_tree   = NULL;
    SLAVE_SYMBOL1728_tree   = NULL;
    HOSTS_SYMBOL1729_tree   = NULL;
    STATUS_SYMBOL1730_tree   = NULL;
    set1733_tree   = NULL;
    EVENTS_SYMBOL1734_tree   = NULL;
    IN_SYMBOL1735_tree   = NULL;
    FROM_SYMBOL1737_tree   = NULL;
    set1741_tree   = NULL;
    STORAGE_SYMBOL1746_tree   = NULL;
    ENGINES_SYMBOL1747_tree   = NULL;
    PRIVILEGES_SYMBOL1748_tree   = NULL;
    COUNT_SYMBOL1749_tree   = NULL;
    OPEN_PAR_SYMBOL1750_tree   = NULL;
    MULT_OPERATOR1751_tree   = NULL;
    CLOSE_PAR_SYMBOL1752_tree   = NULL;
    set1753_tree   = NULL;
    WARNINGS_SYMBOL1754_tree   = NULL;
    ERRORS_SYMBOL1756_tree   = NULL;
    PROFILES_SYMBOL1758_tree   = NULL;
    PROFILE_SYMBOL1759_tree   = NULL;
    COMMA_SYMBOL1761_tree   = NULL;
    FOR_SYMBOL1763_tree   = NULL;
    QUERY_SYMBOL1764_tree   = NULL;
    INT_NUMBER1765_tree   = NULL;
    set1768_tree   = NULL;
    FULL_SYMBOL1770_tree   = NULL;
    PROCESSLIST_SYMBOL1771_tree   = NULL;
    COLLATION_SYMBOL1774_tree   = NULL;
    CONTRIBUTORS_SYMBOL1776_tree   = NULL;
    GRANTS_SYMBOL1777_tree   = NULL;
    FOR_SYMBOL1778_tree   = NULL;
    MASTER_SYMBOL1780_tree   = NULL;
    STATUS_SYMBOL1781_tree   = NULL;
    CREATE_SYMBOL1782_tree   = NULL;
    DATABASE_SYMBOL1783_tree   = NULL;
    EVENT_SYMBOL1786_tree   = NULL;
    FUNCTION_SYMBOL1788_tree   = NULL;
    PROCEDURE_SYMBOL1790_tree   = NULL;
    TABLE_SYMBOL1792_tree   = NULL;
    TRIGGER_SYMBOL1794_tree   = NULL;
    VIEW_SYMBOL1796_tree   = NULL;
    USER_SYMBOL1798_tree   = NULL;
    PROCEDURE_SYMBOL1800_tree   = NULL;
    STATUS_SYMBOL1801_tree   = NULL;
    FUNCTION_SYMBOL1803_tree   = NULL;
    STATUS_SYMBOL1804_tree   = NULL;
    PROCEDURE_SYMBOL1806_tree   = NULL;
    CODE_SYMBOL1807_tree   = NULL;
    FUNCTION_SYMBOL1809_tree   = NULL;
    CODE_SYMBOL1810_tree   = NULL;
    INNODB_SYMBOL1812_tree   = NULL;
    STATUS_SYMBOL1813_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1862:15: ( SHOW_SYMBOL ^ ({...}? AUTHORS_SYMBOL | DATABASES_SYMBOL ( like_or_where )? | ( FULL_SYMBOL )? TABLES_SYMBOL ( in_db )? ( like_or_where )? | ( FULL_SYMBOL )? TRIGGERS_SYMBOL ( in_db )? ( like_or_where )? | EVENTS_SYMBOL ( in_db )? ( like_or_where )? | TABLE_SYMBOL STATUS_SYMBOL ( in_db )? ( like_or_where )? | OPEN_SYMBOL TABLES_SYMBOL ( in_db )? ( like_or_where )? |{...}? PLUGIN_SYMBOL |{...}? PLUGINS_SYMBOL | ENGINE_SYMBOL engine_ref ( STATUS_SYMBOL | MUTEX_SYMBOL ) | ( FULL_SYMBOL )? COLUMNS_SYMBOL ( FROM_SYMBOL | IN_SYMBOL ) table_ref ( in_db )? ( like_or_where )? | ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL | SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL non_blocking ( channel )? ) | ( BINLOG_SYMBOL | RELAYLOG_SYMBOL ) EVENTS_SYMBOL ( IN_SYMBOL text_string )? ( FROM_SYMBOL ulonglong_number )? ( limit_clause )? ( channel )? | ( INDEX_SYMBOL | INDEXES_SYMBOL | KEYS_SYMBOL ) from_or_in table_ref ( in_db )? ( where_clause )? | ( STORAGE_SYMBOL )? ENGINES_SYMBOL | PRIVILEGES_SYMBOL | COUNT_SYMBOL OPEN_PAR_SYMBOL MULT_OPERATOR CLOSE_PAR_SYMBOL ( WARNINGS_SYMBOL | ERRORS_SYMBOL ) | WARNINGS_SYMBOL ( limit_clause )? | ERRORS_SYMBOL ( limit_clause )? | PROFILES_SYMBOL | PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INT_NUMBER )? ( limit_clause )? | ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )? | ( FULL_SYMBOL )? PROCESSLIST_SYMBOL | charset ( like_or_where )? | COLLATION_SYMBOL ( like_or_where )? |{...}? CONTRIBUTORS_SYMBOL | GRANTS_SYMBOL ( FOR_SYMBOL user )? | MASTER_SYMBOL STATUS_SYMBOL | CREATE_SYMBOL ( DATABASE_SYMBOL ( if_not_exists )? schema_ref | EVENT_SYMBOL event_ref | FUNCTION_SYMBOL function_ref | PROCEDURE_SYMBOL procedure_ref | TABLE_SYMBOL table_ref | TRIGGER_SYMBOL trigger_ref | VIEW_SYMBOL view_ref |{...}? USER_SYMBOL user ) | PROCEDURE_SYMBOL STATUS_SYMBOL ( like_or_where )? | FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )? | PROCEDURE_SYMBOL CODE_SYMBOL procedure_ref | FUNCTION_SYMBOL CODE_SYMBOL function_ref |{...}? INNODB_SYMBOL STATUS_SYMBOL ) )
        // MySQL.g:1863:2: SHOW_SYMBOL ^ ({...}? AUTHORS_SYMBOL | DATABASES_SYMBOL ( like_or_where )? | ( FULL_SYMBOL )? TABLES_SYMBOL ( in_db )? ( like_or_where )? | ( FULL_SYMBOL )? TRIGGERS_SYMBOL ( in_db )? ( like_or_where )? | EVENTS_SYMBOL ( in_db )? ( like_or_where )? | TABLE_SYMBOL STATUS_SYMBOL ( in_db )? ( like_or_where )? | OPEN_SYMBOL TABLES_SYMBOL ( in_db )? ( like_or_where )? |{...}? PLUGIN_SYMBOL |{...}? PLUGINS_SYMBOL | ENGINE_SYMBOL engine_ref ( STATUS_SYMBOL | MUTEX_SYMBOL ) | ( FULL_SYMBOL )? COLUMNS_SYMBOL ( FROM_SYMBOL | IN_SYMBOL ) table_ref ( in_db )? ( like_or_where )? | ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL | SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL non_blocking ( channel )? ) | ( BINLOG_SYMBOL | RELAYLOG_SYMBOL ) EVENTS_SYMBOL ( IN_SYMBOL text_string )? ( FROM_SYMBOL ulonglong_number )? ( limit_clause )? ( channel )? | ( INDEX_SYMBOL | INDEXES_SYMBOL | KEYS_SYMBOL ) from_or_in table_ref ( in_db )? ( where_clause )? | ( STORAGE_SYMBOL )? ENGINES_SYMBOL | PRIVILEGES_SYMBOL | COUNT_SYMBOL OPEN_PAR_SYMBOL MULT_OPERATOR CLOSE_PAR_SYMBOL ( WARNINGS_SYMBOL | ERRORS_SYMBOL ) | WARNINGS_SYMBOL ( limit_clause )? | ERRORS_SYMBOL ( limit_clause )? | PROFILES_SYMBOL | PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INT_NUMBER )? ( limit_clause )? | ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )? | ( FULL_SYMBOL )? PROCESSLIST_SYMBOL | charset ( like_or_where )? | COLLATION_SYMBOL ( like_or_where )? |{...}? CONTRIBUTORS_SYMBOL | GRANTS_SYMBOL ( FOR_SYMBOL user )? | MASTER_SYMBOL STATUS_SYMBOL | CREATE_SYMBOL ( DATABASE_SYMBOL ( if_not_exists )? schema_ref | EVENT_SYMBOL event_ref | FUNCTION_SYMBOL function_ref | PROCEDURE_SYMBOL procedure_ref | TABLE_SYMBOL table_ref | TRIGGER_SYMBOL trigger_ref | VIEW_SYMBOL view_ref |{...}? USER_SYMBOL user ) | PROCEDURE_SYMBOL STATUS_SYMBOL ( like_or_where )? | FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )? | PROCEDURE_SYMBOL CODE_SYMBOL procedure_ref | FUNCTION_SYMBOL CODE_SYMBOL function_ref |{...}? INNODB_SYMBOL STATUS_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SHOW_SYMBOL1692 = (pANTLR3_COMMON_TOKEN) MATCHT(SHOW_SYMBOL, &FOLLOW_SHOW_SYMBOL_in_show_statement9001);
            if  (HASEXCEPTION())
            {
                goto ruleshow_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SHOW_SYMBOL1692_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHOW_SYMBOL1692))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SHOW_SYMBOL1692_tree, root_0));
            }

            // MySQL.g:1864:2: ({...}? AUTHORS_SYMBOL | DATABASES_SYMBOL ( like_or_where )? | ( FULL_SYMBOL )? TABLES_SYMBOL ( in_db )? ( like_or_where )? | ( FULL_SYMBOL )? TRIGGERS_SYMBOL ( in_db )? ( like_or_where )? | EVENTS_SYMBOL ( in_db )? ( like_or_where )? | TABLE_SYMBOL STATUS_SYMBOL ( in_db )? ( like_or_where )? | OPEN_SYMBOL TABLES_SYMBOL ( in_db )? ( like_or_where )? |{...}? PLUGIN_SYMBOL |{...}? PLUGINS_SYMBOL | ENGINE_SYMBOL engine_ref ( STATUS_SYMBOL | MUTEX_SYMBOL ) | ( FULL_SYMBOL )? COLUMNS_SYMBOL ( FROM_SYMBOL | IN_SYMBOL ) table_ref ( in_db )? ( like_or_where )? | ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL | SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL non_blocking ( channel )? ) | ( BINLOG_SYMBOL | RELAYLOG_SYMBOL ) EVENTS_SYMBOL ( IN_SYMBOL text_string )? ( FROM_SYMBOL ulonglong_number )? ( limit_clause )? ( channel )? | ( INDEX_SYMBOL | INDEXES_SYMBOL | KEYS_SYMBOL ) from_or_in table_ref ( in_db )? ( where_clause )? | ( STORAGE_SYMBOL )? ENGINES_SYMBOL | PRIVILEGES_SYMBOL | COUNT_SYMBOL OPEN_PAR_SYMBOL MULT_OPERATOR CLOSE_PAR_SYMBOL ( WARNINGS_SYMBOL | ERRORS_SYMBOL ) | WARNINGS_SYMBOL ( limit_clause )? | ERRORS_SYMBOL ( limit_clause )? | PROFILES_SYMBOL | PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INT_NUMBER )? ( limit_clause )? | ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )? | ( FULL_SYMBOL )? PROCESSLIST_SYMBOL | charset ( like_or_where )? | COLLATION_SYMBOL ( like_or_where )? |{...}? CONTRIBUTORS_SYMBOL | GRANTS_SYMBOL ( FOR_SYMBOL user )? | MASTER_SYMBOL STATUS_SYMBOL | CREATE_SYMBOL ( DATABASE_SYMBOL ( if_not_exists )? schema_ref | EVENT_SYMBOL event_ref | FUNCTION_SYMBOL function_ref | PROCEDURE_SYMBOL procedure_ref | TABLE_SYMBOL table_ref | TRIGGER_SYMBOL trigger_ref | VIEW_SYMBOL view_ref |{...}? USER_SYMBOL user ) | PROCEDURE_SYMBOL STATUS_SYMBOL ( like_or_where )? | FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )? | PROCEDURE_SYMBOL CODE_SYMBOL procedure_ref | FUNCTION_SYMBOL CODE_SYMBOL function_ref |{...}? INNODB_SYMBOL STATUS_SYMBOL )
            {
                int alt568=35;
                {
                    int LA568_0 = LA(1);
                    if ( (LA568_0 == AUTHORS_SYMBOL))
                    {
                        alt568=1;
                    }
                    else if ( (LA568_0 == DATABASES_SYMBOL))
                    {
                        alt568=2;
                    }
                    else if ( (LA568_0 == FULL_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case TABLES_SYMBOL:
                        	{
                        		alt568=3;
                        	}
                            break;
                        case TRIGGERS_SYMBOL:
                        	{
                        		alt568=4;
                        	}
                            break;
                        case COLUMNS_SYMBOL:
                        	{
                        		alt568=11;
                        	}
                            break;
                        case PROCESSLIST_SYMBOL:
                        	{
                        		alt568=24;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 568;
                            EXCEPTION->state        = 3;


                            goto ruleshow_statementEx;

                        }

                    }
                    else if ( (LA568_0 == TABLES_SYMBOL))
                    {
                        alt568=3;
                    }
                    else if ( (LA568_0 == TRIGGERS_SYMBOL))
                    {
                        alt568=4;
                    }
                    else if ( (LA568_0 == EVENTS_SYMBOL))
                    {
                        alt568=5;
                    }
                    else if ( (LA568_0 == TABLE_SYMBOL))
                    {
                        alt568=6;
                    }
                    else if ( (LA568_0 == OPEN_SYMBOL))
                    {
                        alt568=7;
                    }
                    else if ( (LA568_0 == PLUGIN_SYMBOL))
                    {
                        alt568=8;
                    }
                    else if ( (LA568_0 == PLUGINS_SYMBOL))
                    {
                        alt568=9;
                    }
                    else if ( (LA568_0 == ENGINE_SYMBOL))
                    {
                        alt568=10;
                    }
                    else if ( (LA568_0 == COLUMNS_SYMBOL))
                    {
                        alt568=11;
                    }
                    else if ( (LA568_0 == MASTER_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case LOGS_SYMBOL:
                        	{
                        		alt568=12;
                        	}
                            break;
                        case STATUS_SYMBOL:
                        	{
                        		alt568=29;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 568;
                            EXCEPTION->state        = 13;


                            goto ruleshow_statementEx;

                        }

                    }
                    else if ( (LA568_0 == SLAVE_SYMBOL))
                    {
                        alt568=13;
                    }
                    else if ( (LA568_0 == BINLOG_SYMBOL || LA568_0 == RELAYLOG_SYMBOL))
                    {
                        alt568=14;
                    }
                    else if ( (LA568_0 == INDEXES_SYMBOL || LA568_0 == INDEX_SYMBOL || LA568_0 == KEYS_SYMBOL))
                    {
                        alt568=15;
                    }
                    else if ( (LA568_0 == ENGINES_SYMBOL || LA568_0 == STORAGE_SYMBOL))
                    {
                        alt568=16;
                    }
                    else if ( (LA568_0 == PRIVILEGES_SYMBOL))
                    {
                        alt568=17;
                    }
                    else if ( (LA568_0 == COUNT_SYMBOL))
                    {
                        alt568=18;
                    }
                    else if ( (LA568_0 == WARNINGS_SYMBOL))
                    {
                        alt568=19;
                    }
                    else if ( (LA568_0 == ERRORS_SYMBOL))
                    {
                        alt568=20;
                    }
                    else if ( (LA568_0 == PROFILES_SYMBOL))
                    {
                        alt568=21;
                    }
                    else if ( (LA568_0 == PROFILE_SYMBOL))
                    {
                        alt568=22;
                    }
                    else if ( (LA568_0 == GLOBAL_SYMBOL || LA568_0 == LOCAL_SYMBOL || LA568_0 == SESSION_SYMBOL || LA568_0 == STATUS_SYMBOL || LA568_0 == VARIABLES_SYMBOL))
                    {
                        alt568=23;
                    }
                    else if ( (LA568_0 == PROCESSLIST_SYMBOL))
                    {
                        alt568=24;
                    }
                    else if ( (LA568_0 == CHARSET_SYMBOL || LA568_0 == CHAR_SYMBOL))
                    {
                        alt568=25;
                    }
                    else if ( (LA568_0 == COLLATION_SYMBOL))
                    {
                        alt568=26;
                    }
                    else if ( (LA568_0 == CONTRIBUTORS_SYMBOL))
                    {
                        alt568=27;
                    }
                    else if ( (LA568_0 == GRANTS_SYMBOL))
                    {
                        alt568=28;
                    }
                    else if ( (LA568_0 == BINARY_SYMBOL))
                    {
                        alt568=12;
                    }
                    else if ( (LA568_0 == CREATE_SYMBOL))
                    {
                        alt568=30;
                    }
                    else if ( (LA568_0 == PROCEDURE_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case STATUS_SYMBOL:
                        	{
                        		alt568=31;
                        	}
                            break;
                        case CODE_SYMBOL:
                        	{
                        		alt568=33;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 568;
                            EXCEPTION->state        = 35;


                            goto ruleshow_statementEx;

                        }

                    }
                    else if ( (LA568_0 == FUNCTION_SYMBOL))
                    {
                        switch ( LA(2) )
                        {
                        case STATUS_SYMBOL:
                        	{
                        		alt568=32;
                        	}
                            break;
                        case CODE_SYMBOL:
                        	{
                        		alt568=34;
                        	}
                            break;

                        default:
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }

                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 568;
                            EXCEPTION->state        = 36;


                            goto ruleshow_statementEx;

                        }

                    }
                    else if ( (LA568_0 == INNODB_SYMBOL))
                    {
                        alt568=35;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 568;
                        EXCEPTION->state        = 0;


                        goto ruleshow_statementEx;

                    }
                }
                switch (alt568)
                {
            	case 1:
            	    // MySQL.g:1865:3: {...}? AUTHORS_SYMBOL
            	    {
            	        if ( !((SERVER_VERSION < 50700)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50700";
            	                EXCEPTION->ruleName	 = (void *)"show_statement";


            	        }

            	        AUTHORS_SYMBOL1693 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTHORS_SYMBOL, &FOLLOW_AUTHORS_SYMBOL_in_show_statement9011);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        AUTHORS_SYMBOL1693_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTHORS_SYMBOL1693));
            	        ADAPTOR->addChild(ADAPTOR, root_0, AUTHORS_SYMBOL1693_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1866:5: DATABASES_SYMBOL ( like_or_where )?
            	    {
            	        DATABASES_SYMBOL1694 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASES_SYMBOL, &FOLLOW_DATABASES_SYMBOL_in_show_statement9017);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DATABASES_SYMBOL1694_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASES_SYMBOL1694));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASES_SYMBOL1694_tree);
            	        }

            	        // MySQL.g:1866:22: ( like_or_where )?
            	        {
            	            int alt527=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt527=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt527)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1866:22: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9019);
            	        	        like_or_where1695=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1695.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:1867:5: ( FULL_SYMBOL )? TABLES_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        // MySQL.g:1867:5: ( FULL_SYMBOL )?
            	        {
            	            int alt528=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt528=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt528)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1867:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1696 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement9026);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1696_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1696));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1696_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        TABLES_SYMBOL1697 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_show_statement9029);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLES_SYMBOL1697_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1697));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1697_tree);
            	        }

            	        // MySQL.g:1867:32: ( in_db )?
            	        {
            	            int alt529=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt529=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt529)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1867:32: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9031);
            	        	        in_db1698=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1698.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1867:39: ( like_or_where )?
            	        {
            	            int alt530=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt530=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt530)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1867:39: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9034);
            	        	        like_or_where1699=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1699.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:1868:5: ( FULL_SYMBOL )? TRIGGERS_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        // MySQL.g:1868:5: ( FULL_SYMBOL )?
            	        {
            	            int alt531=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt531=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt531)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1868:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1700 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement9041);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1700_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1700));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1700_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        TRIGGERS_SYMBOL1701 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGERS_SYMBOL, &FOLLOW_TRIGGERS_SYMBOL_in_show_statement9044);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRIGGERS_SYMBOL1701_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGERS_SYMBOL1701));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGERS_SYMBOL1701_tree);
            	        }

            	        // MySQL.g:1868:34: ( in_db )?
            	        {
            	            int alt532=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt532=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt532)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1868:34: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9046);
            	        	        in_db1702=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1702.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1868:41: ( like_or_where )?
            	        {
            	            int alt533=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt533=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt533)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1868:41: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9049);
            	        	        like_or_where1703=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1703.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:1869:5: EVENTS_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        EVENTS_SYMBOL1704 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENTS_SYMBOL, &FOLLOW_EVENTS_SYMBOL_in_show_statement9056);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENTS_SYMBOL1704_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENTS_SYMBOL1704));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENTS_SYMBOL1704_tree);
            	        }

            	        // MySQL.g:1869:19: ( in_db )?
            	        {
            	            int alt534=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt534=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt534)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1869:19: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9058);
            	        	        in_db1705=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1705.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1869:26: ( like_or_where )?
            	        {
            	            int alt535=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt535=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt535)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1869:26: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9061);
            	        	        like_or_where1706=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1706.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:1870:5: TABLE_SYMBOL STATUS_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        TABLE_SYMBOL1707 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_show_statement9068);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLE_SYMBOL1707_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1707));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1707_tree);
            	        }

            	        STATUS_SYMBOL1708 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9070);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1708_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1708));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1708_tree);
            	        }

            	        // MySQL.g:1870:32: ( in_db )?
            	        {
            	            int alt536=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt536=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt536)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1870:32: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9072);
            	        	        in_db1709=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1709.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1870:39: ( like_or_where )?
            	        {
            	            int alt537=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt537=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt537)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1870:39: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9075);
            	        	        like_or_where1710=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1710.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:1871:5: OPEN_SYMBOL TABLES_SYMBOL ( in_db )? ( like_or_where )?
            	    {
            	        OPEN_SYMBOL1711 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_show_statement9082);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_SYMBOL1711_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL1711));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL1711_tree);
            	        }

            	        TABLES_SYMBOL1712 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLES_SYMBOL, &FOLLOW_TABLES_SYMBOL_in_show_statement9084);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TABLES_SYMBOL1712_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLES_SYMBOL1712));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TABLES_SYMBOL1712_tree);
            	        }

            	        // MySQL.g:1871:31: ( in_db )?
            	        {
            	            int alt538=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt538=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt538)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1871:31: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9086);
            	        	        in_db1713=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1713.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1871:38: ( like_or_where )?
            	        {
            	            int alt539=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt539=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt539)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1871:38: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9089);
            	        	        like_or_where1714=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1714.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:1872: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_SYMBOL1715 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGIN_SYMBOL, &FOLLOW_PLUGIN_SYMBOL_in_show_statement9098);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PLUGIN_SYMBOL1715_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGIN_SYMBOL1715));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGIN_SYMBOL1715_tree);
            	        }

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:1873: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_SYMBOL1716 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUGINS_SYMBOL, &FOLLOW_PLUGINS_SYMBOL_in_show_statement9107);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PLUGINS_SYMBOL1716_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUGINS_SYMBOL1716));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PLUGINS_SYMBOL1716_tree);
            	        }

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:1874:5: ENGINE_SYMBOL engine_ref ( STATUS_SYMBOL | MUTEX_SYMBOL )
            	    {
            	        ENGINE_SYMBOL1717 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_show_statement9113);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINE_SYMBOL1717_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL1717));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL1717_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_engine_ref_in_show_statement9115);
            	        engine_ref1718=engine_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref1718.tree);

            	        set1719=(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, set1719))
            	            );
            	            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:1875:5: ( FULL_SYMBOL )? COLUMNS_SYMBOL ( FROM_SYMBOL | IN_SYMBOL ) table_ref ( in_db )? ( like_or_where )?
            	    {
            	        // MySQL.g:1875:5: ( FULL_SYMBOL )?
            	        {
            	            int alt540=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt540=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt540)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1875:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1720 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement9129);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1720_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1720));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1720_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        COLUMNS_SYMBOL1721 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_show_statement9132);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLUMNS_SYMBOL1721_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL1721));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL1721_tree);
            	        }

            	        set1722=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == FROM_SYMBOL || LA(1) == IN_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1722))
            	            );
            	            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_table_ref_in_show_statement9142);
            	        table_ref1723=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1723.tree);

            	        // MySQL.g:1875:69: ( in_db )?
            	        {
            	            int alt541=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt541=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt541)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1875:69: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9144);
            	        	        in_db1724=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1724.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1875:76: ( like_or_where )?
            	        {
            	            int alt542=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt542=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt542)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1875:76: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9147);
            	        	        like_or_where1725=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1725.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 12:
            	    // MySQL.g:1876:5: ( BINARY_SYMBOL | MASTER_SYMBOL ) LOGS_SYMBOL
            	    {
            	        set1726=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == MASTER_SYMBOL || LA(1) == BINARY_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1726))
            	            );
            	            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;
            	        }


            	        LOGS_SYMBOL1727 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_show_statement9162);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOGS_SYMBOL1727_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1727));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1727_tree);
            	        }

            	    }
            	    break;
            	case 13:
            	    // MySQL.g:1877:5: SLAVE_SYMBOL ( HOSTS_SYMBOL | STATUS_SYMBOL non_blocking ( channel )? )
            	    {
            	        SLAVE_SYMBOL1728 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_show_statement9168);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SLAVE_SYMBOL1728_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1728));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1728_tree);
            	        }

            	        // MySQL.g:1878:4: ( HOSTS_SYMBOL | STATUS_SYMBOL non_blocking ( channel )? )
            	        {
            	            int alt544=2;
            	            switch ( LA(1) )
            	            {
            	            case HOSTS_SYMBOL:
            	            	{
            	            		alt544=1;
            	            	}
            	                break;
            	            case STATUS_SYMBOL:
            	            	{
            	            		alt544=2;
            	            	}
            	                break;

            	            default:
            	                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 ruleshow_statementEx;

            	            }

            	            switch (alt544)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1879:5: HOSTS_SYMBOL
            	        	    {
            	        	        HOSTS_SYMBOL1729 = (pANTLR3_COMMON_TOKEN) MATCHT(HOSTS_SYMBOL, &FOLLOW_HOSTS_SYMBOL_in_show_statement9179);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        HOSTS_SYMBOL1729_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOSTS_SYMBOL1729));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, HOSTS_SYMBOL1729_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1880:7: STATUS_SYMBOL non_blocking ( channel )?
            	        	    {
            	        	        STATUS_SYMBOL1730 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9187);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        STATUS_SYMBOL1730_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1730));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1730_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_non_blocking_in_show_statement9189);
            	        	        non_blocking1731=non_blocking(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, non_blocking1731.tree);

            	        	        // MySQL.g:1880:34: ( channel )?
            	        	        {
            	        	            int alt543=2;
            	        	            {
            	        	                int LA543_0 = LA(1);
            	        	                if ( ((SERVER_VERSION >= 50706)) && (LA543_0 == FOR_SYMBOL))
            	        	                {
            	        	                    alt543=1;
            	        	                }
            	        	            }
            	        	            switch (alt543)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1880:34: channel
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_channel_in_show_statement9191);
            	        	        	        channel1732=channel(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1732.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 14:
            	    // MySQL.g:1882:5: ( BINLOG_SYMBOL | RELAYLOG_SYMBOL ) EVENTS_SYMBOL ( IN_SYMBOL text_string )? ( FROM_SYMBOL ulonglong_number )? ( limit_clause )? ( channel )?
            	    {
            	        set1733=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == BINLOG_SYMBOL || LA(1) == RELAYLOG_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1733))
            	            );
            	            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;
            	        }


            	        EVENTS_SYMBOL1734 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENTS_SYMBOL, &FOLLOW_EVENTS_SYMBOL_in_show_statement9211);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EVENTS_SYMBOL1734_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENTS_SYMBOL1734));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EVENTS_SYMBOL1734_tree);
            	        }

            	        // MySQL.g:1882:53: ( IN_SYMBOL text_string )?
            	        {
            	            int alt545=2;
            	            switch ( LA(1) )
            	            {
            	                case IN_SYMBOL:
            	                	{
            	                		alt545=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt545)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1882:54: IN_SYMBOL text_string
            	        	    {
            	        	        IN_SYMBOL1735 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_show_statement9214);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL1735_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1735));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1735_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_text_string_in_show_statement9216);
            	        	        text_string1736=text_string(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1736.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1882:78: ( FROM_SYMBOL ulonglong_number )?
            	        {
            	            int alt546=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt546=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt546)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1882:79: FROM_SYMBOL ulonglong_number
            	        	    {
            	        	        FROM_SYMBOL1737 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_show_statement9221);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL1737_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL1737));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL1737_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_show_statement9223);
            	        	        ulonglong_number1738=ulonglong_number(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number1738.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1882:110: ( limit_clause )?
            	        {
            	            int alt547=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt547=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt547)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1882:110: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement9227);
            	        	        limit_clause1739=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1739.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1882:124: ( channel )?
            	        {
            	            int alt548=2;
            	            {
            	                int LA548_0 = LA(1);
            	                if ( ((SERVER_VERSION >= 50706)) && (LA548_0 == FOR_SYMBOL))
            	                {
            	                    alt548=1;
            	                }
            	            }
            	            switch (alt548)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1882:124: channel
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_channel_in_show_statement9230);
            	        	        channel1740=channel(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1740.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 15:
            	    // MySQL.g:1883:5: ( INDEX_SYMBOL | INDEXES_SYMBOL | KEYS_SYMBOL ) from_or_in table_ref ( in_db )? ( where_clause )?
            	    {
            	        set1741=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == INDEXES_SYMBOL || LA(1) == INDEX_SYMBOL || LA(1) == KEYS_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1741))
            	            );
            	            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_from_or_in_in_show_statement9249);
            	        from_or_in1742=from_or_in(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, from_or_in1742.tree);

            	        FOLLOWPUSH(FOLLOW_table_ref_in_show_statement9251);
            	        table_ref1743=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1743.tree);

            	        // MySQL.g:1883:72: ( in_db )?
            	        {
            	            int alt549=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                case IN_SYMBOL:
            	                	{
            	                		alt549=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt549)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1883:72: in_db
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_in_db_in_show_statement9253);
            	        	        in_db1744=in_db(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_db1744.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1883:79: ( where_clause )?
            	        {
            	            int alt550=2;
            	            switch ( LA(1) )
            	            {
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt550=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt550)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1883:79: where_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_where_clause_in_show_statement9256);
            	        	        where_clause1745=where_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause1745.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 16:
            	    // MySQL.g:1884:5: ( STORAGE_SYMBOL )? ENGINES_SYMBOL
            	    {
            	        // MySQL.g:1884:5: ( STORAGE_SYMBOL )?
            	        {
            	            int alt551=2;
            	            switch ( LA(1) )
            	            {
            	                case STORAGE_SYMBOL:
            	                	{
            	                		alt551=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt551)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1884:5: STORAGE_SYMBOL
            	        	    {
            	        	        STORAGE_SYMBOL1746 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_show_statement9263);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        STORAGE_SYMBOL1746_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL1746));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL1746_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        ENGINES_SYMBOL1747 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINES_SYMBOL, &FOLLOW_ENGINES_SYMBOL_in_show_statement9266);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ENGINES_SYMBOL1747_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINES_SYMBOL1747));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINES_SYMBOL1747_tree);
            	        }

            	    }
            	    break;
            	case 17:
            	    // MySQL.g:1885:5: PRIVILEGES_SYMBOL
            	    {
            	        PRIVILEGES_SYMBOL1748 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_show_statement9272);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PRIVILEGES_SYMBOL1748_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1748));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1748_tree);
            	        }

            	    }
            	    break;
            	case 18:
            	    // MySQL.g:1886:5: COUNT_SYMBOL OPEN_PAR_SYMBOL MULT_OPERATOR CLOSE_PAR_SYMBOL ( WARNINGS_SYMBOL | ERRORS_SYMBOL )
            	    {
            	        COUNT_SYMBOL1749 = (pANTLR3_COMMON_TOKEN) MATCHT(COUNT_SYMBOL, &FOLLOW_COUNT_SYMBOL_in_show_statement9278);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COUNT_SYMBOL1749_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COUNT_SYMBOL1749));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COUNT_SYMBOL1749_tree);
            	        }

            	        OPEN_PAR_SYMBOL1750 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_show_statement9280);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL1750_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1750));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1750_tree);
            	        }

            	        MULT_OPERATOR1751 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_show_statement9282);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR1751_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR1751));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR1751_tree);
            	        }

            	        CLOSE_PAR_SYMBOL1752 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_show_statement9284);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL1752_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1752));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1752_tree);
            	        }

            	        set1753=(pANTLR3_COMMON_TOKEN)LT(1);

            	        if ( LA(1) == ERRORS_SYMBOL || LA(1) == WARNINGS_SYMBOL )
            	        {
            	            CONSUME();
            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1753))
            	            );
            	            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 19:
            	    // MySQL.g:1887:5: WARNINGS_SYMBOL ( limit_clause )?
            	    {
            	        WARNINGS_SYMBOL1754 = (pANTLR3_COMMON_TOKEN) MATCHT(WARNINGS_SYMBOL, &FOLLOW_WARNINGS_SYMBOL_in_show_statement9298);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WARNINGS_SYMBOL1754_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WARNINGS_SYMBOL1754));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WARNINGS_SYMBOL1754_tree);
            	        }

            	        // MySQL.g:1887:21: ( limit_clause )?
            	        {
            	            int alt552=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt552=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt552)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1887:21: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement9300);
            	        	        limit_clause1755=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1755.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 20:
            	    // MySQL.g:1888:5: ERRORS_SYMBOL ( limit_clause )?
            	    {
            	        ERRORS_SYMBOL1756 = (pANTLR3_COMMON_TOKEN) MATCHT(ERRORS_SYMBOL, &FOLLOW_ERRORS_SYMBOL_in_show_statement9307);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ERRORS_SYMBOL1756_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ERRORS_SYMBOL1756));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ERRORS_SYMBOL1756_tree);
            	        }

            	        // MySQL.g:1888:19: ( limit_clause )?
            	        {
            	            int alt553=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt553=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt553)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1888:19: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement9309);
            	        	        limit_clause1757=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1757.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 21:
            	    // MySQL.g:1889:5: PROFILES_SYMBOL
            	    {
            	        PROFILES_SYMBOL1758 = (pANTLR3_COMMON_TOKEN) MATCHT(PROFILES_SYMBOL, &FOLLOW_PROFILES_SYMBOL_in_show_statement9316);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROFILES_SYMBOL1758_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROFILES_SYMBOL1758));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROFILES_SYMBOL1758_tree);
            	        }

            	    }
            	    break;
            	case 22:
            	    // MySQL.g:1890:5: PROFILE_SYMBOL ( profile_type ( COMMA_SYMBOL profile_type )* )? ( FOR_SYMBOL QUERY_SYMBOL INT_NUMBER )? ( limit_clause )?
            	    {
            	        PROFILE_SYMBOL1759 = (pANTLR3_COMMON_TOKEN) MATCHT(PROFILE_SYMBOL, &FOLLOW_PROFILE_SYMBOL_in_show_statement9322);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROFILE_SYMBOL1759_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROFILE_SYMBOL1759));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROFILE_SYMBOL1759_tree);
            	        }

            	        // MySQL.g:1890:20: ( profile_type ( COMMA_SYMBOL profile_type )* )?
            	        {
            	            int alt555=2;
            	            switch ( LA(1) )
            	            {
            	                case BLOCK_SYMBOL:
            	                case CONTEXT_SYMBOL:
            	                case CPU_SYMBOL:
            	                case IPC_SYMBOL:
            	                case MEMORY_SYMBOL:
            	                case PAGE_SYMBOL:
            	                case SOURCE_SYMBOL:
            	                case SWAPS_SYMBOL:
            	                case ALL_SYMBOL:
            	                	{
            	                		alt555=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt555)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1890:21: profile_type ( COMMA_SYMBOL profile_type )*
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_profile_type_in_show_statement9325);
            	        	        profile_type1760=profile_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, profile_type1760.tree);

            	        	        // MySQL.g:1890:34: ( COMMA_SYMBOL profile_type )*

            	        	        for (;;)
            	        	        {
            	        	            int alt554=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case COMMA_SYMBOL:
            	        	            	{
            	        	            		alt554=1;
            	        	            	}
            	        	                break;

            	        	            }

            	        	            switch (alt554)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1890:35: COMMA_SYMBOL profile_type
            	        	        	    {
            	        	        	        COMMA_SYMBOL1761 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_show_statement9328);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        COMMA_SYMBOL1761_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1761));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1761_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_profile_type_in_show_statement9330);
            	        	        	        profile_type1762=profile_type(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, profile_type1762.tree);

            	        	        	    }
            	        	        	    break;

            	        	        	default:
            	        	        	    goto loop554;	/* break out of the loop */
            	        	        	    break;
            	        	            }
            	        	        }
            	        	        loop554: ; /* Jump out to here if this rule does not match */


            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1890:65: ( FOR_SYMBOL QUERY_SYMBOL INT_NUMBER )?
            	        {
            	            int alt556=2;
            	            switch ( LA(1) )
            	            {
            	                case FOR_SYMBOL:
            	                	{
            	                		alt556=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt556)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1890:66: FOR_SYMBOL QUERY_SYMBOL INT_NUMBER
            	        	    {
            	        	        FOR_SYMBOL1763 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_show_statement9337);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FOR_SYMBOL1763_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1763));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1763_tree);
            	        	        }

            	        	        QUERY_SYMBOL1764 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_show_statement9339);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        QUERY_SYMBOL1764_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1764));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1764_tree);
            	        	        }

            	        	        INT_NUMBER1765 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_show_statement9341);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        INT_NUMBER1765_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER1765));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER1765_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:1890:103: ( limit_clause )?
            	        {
            	            int alt557=2;
            	            switch ( LA(1) )
            	            {
            	                case LIMIT_SYMBOL:
            	                	{
            	                		alt557=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt557)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1890:103: limit_clause
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_limit_clause_in_show_statement9345);
            	        	        limit_clause1766=limit_clause(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, limit_clause1766.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 23:
            	    // MySQL.g:1891:5: ( option_type )? ( STATUS_SYMBOL | VARIABLES_SYMBOL ) ( like_or_where )?
            	    {
            	        // MySQL.g:1891:5: ( option_type )?
            	        {
            	            int alt558=2;
            	            switch ( LA(1) )
            	            {
            	                case GLOBAL_SYMBOL:
            	                case LOCAL_SYMBOL:
            	                case SESSION_SYMBOL:
            	                	{
            	                		alt558=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt558)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1891:5: option_type
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_option_type_in_show_statement9352);
            	        	        option_type1767=option_type(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type1767.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        set1768=(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, set1768))
            	            );
            	            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:1891:53: ( like_or_where )?
            	        {
            	            int alt559=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt559=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt559)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1891:53: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9363);
            	        	        like_or_where1769=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1769.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 24:
            	    // MySQL.g:1892:5: ( FULL_SYMBOL )? PROCESSLIST_SYMBOL
            	    {
            	        // MySQL.g:1892:5: ( FULL_SYMBOL )?
            	        {
            	            int alt560=2;
            	            switch ( LA(1) )
            	            {
            	                case FULL_SYMBOL:
            	                	{
            	                		alt560=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt560)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1892:5: FULL_SYMBOL
            	        	    {
            	        	        FULL_SYMBOL1770 = (pANTLR3_COMMON_TOKEN) MATCHT(FULL_SYMBOL, &FOLLOW_FULL_SYMBOL_in_show_statement9370);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FULL_SYMBOL1770_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FULL_SYMBOL1770));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FULL_SYMBOL1770_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        PROCESSLIST_SYMBOL1771 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCESSLIST_SYMBOL, &FOLLOW_PROCESSLIST_SYMBOL_in_show_statement9373);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCESSLIST_SYMBOL1771_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCESSLIST_SYMBOL1771));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCESSLIST_SYMBOL1771_tree);
            	        }

            	    }
            	    break;
            	case 25:
            	    // MySQL.g:1893:5: charset ( like_or_where )?
            	    {
            	        FOLLOWPUSH(FOLLOW_charset_in_show_statement9379);
            	        charset1772=charset(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset1772.tree);

            	        // MySQL.g:1893:13: ( like_or_where )?
            	        {
            	            int alt561=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt561=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt561)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1893:13: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9381);
            	        	        like_or_where1773=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1773.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 26:
            	    // MySQL.g:1894:5: COLLATION_SYMBOL ( like_or_where )?
            	    {
            	        COLLATION_SYMBOL1774 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATION_SYMBOL, &FOLLOW_COLLATION_SYMBOL_in_show_statement9388);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATION_SYMBOL1774_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATION_SYMBOL1774));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATION_SYMBOL1774_tree);
            	        }

            	        // MySQL.g:1894:22: ( like_or_where )?
            	        {
            	            int alt562=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt562=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt562)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1894:22: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9390);
            	        	        like_or_where1775=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1775.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 27:
            	    // MySQL.g:1895:5: {...}? CONTRIBUTORS_SYMBOL
            	    {
            	        if ( !((SERVER_VERSION < 50700)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50700";
            	                EXCEPTION->ruleName	 = (void *)"show_statement";


            	        }

            	        CONTRIBUTORS_SYMBOL1776 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTRIBUTORS_SYMBOL, &FOLLOW_CONTRIBUTORS_SYMBOL_in_show_statement9399);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONTRIBUTORS_SYMBOL1776_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTRIBUTORS_SYMBOL1776));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CONTRIBUTORS_SYMBOL1776_tree);
            	        }

            	    }
            	    break;
            	case 28:
            	    // MySQL.g:1896:5: GRANTS_SYMBOL ( FOR_SYMBOL user )?
            	    {
            	        GRANTS_SYMBOL1777 = (pANTLR3_COMMON_TOKEN) MATCHT(GRANTS_SYMBOL, &FOLLOW_GRANTS_SYMBOL_in_show_statement9405);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        GRANTS_SYMBOL1777_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GRANTS_SYMBOL1777));
            	        ADAPTOR->addChild(ADAPTOR, root_0, GRANTS_SYMBOL1777_tree);
            	        }

            	        // MySQL.g:1896:19: ( FOR_SYMBOL user )?
            	        {
            	            int alt563=2;
            	            switch ( LA(1) )
            	            {
            	                case FOR_SYMBOL:
            	                	{
            	                		alt563=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt563)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1896:20: FOR_SYMBOL user
            	        	    {
            	        	        FOR_SYMBOL1778 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_show_statement9408);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FOR_SYMBOL1778_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1778));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1778_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_user_in_show_statement9410);
            	        	        user1779=user(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1779.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 29:
            	    // MySQL.g:1897:5: MASTER_SYMBOL STATUS_SYMBOL
            	    {
            	        MASTER_SYMBOL1780 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_show_statement9418);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MASTER_SYMBOL1780_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1780));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1780_tree);
            	        }

            	        STATUS_SYMBOL1781 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9420);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1781_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1781));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1781_tree);
            	        }

            	    }
            	    break;
            	case 30:
            	    // MySQL.g:1898:5: CREATE_SYMBOL ( DATABASE_SYMBOL ( if_not_exists )? schema_ref | EVENT_SYMBOL event_ref | FUNCTION_SYMBOL function_ref | PROCEDURE_SYMBOL procedure_ref | TABLE_SYMBOL table_ref | TRIGGER_SYMBOL trigger_ref | VIEW_SYMBOL view_ref |{...}? USER_SYMBOL user )
            	    {
            	        CREATE_SYMBOL1782 = (pANTLR3_COMMON_TOKEN) MATCHT(CREATE_SYMBOL, &FOLLOW_CREATE_SYMBOL_in_show_statement9426);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CREATE_SYMBOL1782_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CREATE_SYMBOL1782));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CREATE_SYMBOL1782_tree);
            	        }

            	        // MySQL.g:1899:4: ( DATABASE_SYMBOL ( if_not_exists )? schema_ref | EVENT_SYMBOL event_ref | FUNCTION_SYMBOL function_ref | PROCEDURE_SYMBOL procedure_ref | TABLE_SYMBOL table_ref | TRIGGER_SYMBOL trigger_ref | VIEW_SYMBOL view_ref |{...}? USER_SYMBOL user )
            	        {
            	            int alt565=8;
            	            switch ( LA(1) )
            	            {
            	            case DATABASE_SYMBOL:
            	            	{
            	            		alt565=1;
            	            	}
            	                break;
            	            case EVENT_SYMBOL:
            	            	{
            	            		alt565=2;
            	            	}
            	                break;
            	            case FUNCTION_SYMBOL:
            	            	{
            	            		alt565=3;
            	            	}
            	                break;
            	            case PROCEDURE_SYMBOL:
            	            	{
            	            		alt565=4;
            	            	}
            	                break;
            	            case TABLE_SYMBOL:
            	            	{
            	            		alt565=5;
            	            	}
            	                break;
            	            case TRIGGER_SYMBOL:
            	            	{
            	            		alt565=6;
            	            	}
            	                break;
            	            case VIEW_SYMBOL:
            	            	{
            	            		alt565=7;
            	            	}
            	                break;
            	            case USER_SYMBOL:
            	            	{
            	            		alt565=8;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 565;
            	                EXCEPTION->state        = 0;


            	                goto ruleshow_statementEx;

            	            }

            	            switch (alt565)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1900:5: DATABASE_SYMBOL ( if_not_exists )? schema_ref
            	        	    {
            	        	        DATABASE_SYMBOL1783 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_show_statement9437);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DATABASE_SYMBOL1783_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL1783));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL1783_tree);
            	        	        }

            	        	        // MySQL.g:1900:21: ( if_not_exists )?
            	        	        {
            	        	            int alt564=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case IF_SYMBOL:
            	        	                	{
            	        	                		alt564=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt564)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:1900:21: if_not_exists
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_if_not_exists_in_show_statement9439);
            	        	        	        if_not_exists1784=if_not_exists(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleshow_statementEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_not_exists1784.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_schema_ref_in_show_statement9442);
            	        	        schema_ref1785=schema_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref1785.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:1901:7: EVENT_SYMBOL event_ref
            	        	    {
            	        	        EVENT_SYMBOL1786 = (pANTLR3_COMMON_TOKEN) MATCHT(EVENT_SYMBOL, &FOLLOW_EVENT_SYMBOL_in_show_statement9450);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EVENT_SYMBOL1786_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVENT_SYMBOL1786));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EVENT_SYMBOL1786_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_event_ref_in_show_statement9452);
            	        	        event_ref1787=event_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, event_ref1787.tree);

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:1902:7: FUNCTION_SYMBOL function_ref
            	        	    {
            	        	        FUNCTION_SYMBOL1788 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_show_statement9460);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FUNCTION_SYMBOL1788_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1788));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1788_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_function_ref_in_show_statement9462);
            	        	        function_ref1789=function_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_ref1789.tree);

            	        	    }
            	        	    break;
            	        	case 4:
            	        	    // MySQL.g:1903:7: PROCEDURE_SYMBOL procedure_ref
            	        	    {
            	        	        PROCEDURE_SYMBOL1790 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_show_statement9470);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        PROCEDURE_SYMBOL1790_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1790));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1790_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_procedure_ref_in_show_statement9472);
            	        	        procedure_ref1791=procedure_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_ref1791.tree);

            	        	    }
            	        	    break;
            	        	case 5:
            	        	    // MySQL.g:1904:7: TABLE_SYMBOL table_ref
            	        	    {
            	        	        TABLE_SYMBOL1792 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLE_SYMBOL, &FOLLOW_TABLE_SYMBOL_in_show_statement9480);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TABLE_SYMBOL1792_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLE_SYMBOL1792));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLE_SYMBOL1792_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_table_ref_in_show_statement9482);
            	        	        table_ref1793=table_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1793.tree);

            	        	    }
            	        	    break;
            	        	case 6:
            	        	    // MySQL.g:1905:7: TRIGGER_SYMBOL trigger_ref
            	        	    {
            	        	        TRIGGER_SYMBOL1794 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIGGER_SYMBOL, &FOLLOW_TRIGGER_SYMBOL_in_show_statement9490);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        TRIGGER_SYMBOL1794_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIGGER_SYMBOL1794));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, TRIGGER_SYMBOL1794_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_trigger_ref_in_show_statement9492);
            	        	        trigger_ref1795=trigger_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trigger_ref1795.tree);

            	        	    }
            	        	    break;
            	        	case 7:
            	        	    // MySQL.g:1906:7: VIEW_SYMBOL view_ref
            	        	    {
            	        	        VIEW_SYMBOL1796 = (pANTLR3_COMMON_TOKEN) MATCHT(VIEW_SYMBOL, &FOLLOW_VIEW_SYMBOL_in_show_statement9500);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        VIEW_SYMBOL1796_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VIEW_SYMBOL1796));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, VIEW_SYMBOL1796_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_view_ref_in_show_statement9502);
            	        	        view_ref1797=view_ref(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_ref1797.tree);

            	        	    }
            	        	    break;
            	        	case 8:
            	        	    // MySQL.g:1907:7: {...}? USER_SYMBOL user
            	        	    {
            	        	        if ( !((SERVER_VERSION >= 50704)) )
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50704";
            	        	                EXCEPTION->ruleName	 = (void *)"show_statement";


            	        	        }

            	        	        USER_SYMBOL1798 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_show_statement9512);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        USER_SYMBOL1798_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL1798));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL1798_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_user_in_show_statement9514);
            	        	        user1799=user(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user1799.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 31:
            	    // MySQL.g:1909:5: PROCEDURE_SYMBOL STATUS_SYMBOL ( like_or_where )?
            	    {
            	        PROCEDURE_SYMBOL1800 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_show_statement9525);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCEDURE_SYMBOL1800_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1800));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1800_tree);
            	        }

            	        STATUS_SYMBOL1801 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9527);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1801_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1801));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1801_tree);
            	        }

            	        // MySQL.g:1909:36: ( like_or_where )?
            	        {
            	            int alt566=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt566=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt566)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1909:36: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9529);
            	        	        like_or_where1802=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1802.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 32:
            	    // MySQL.g:1910:5: FUNCTION_SYMBOL STATUS_SYMBOL ( like_or_where )?
            	    {
            	        FUNCTION_SYMBOL1803 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_show_statement9536);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL1803_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1803));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1803_tree);
            	        }

            	        STATUS_SYMBOL1804 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9538);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1804_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1804));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1804_tree);
            	        }

            	        // MySQL.g:1910:35: ( like_or_where )?
            	        {
            	            int alt567=2;
            	            switch ( LA(1) )
            	            {
            	                case LIKE_SYMBOL:
            	                case WHERE_SYMBOL:
            	                	{
            	                		alt567=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt567)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1910:35: like_or_where
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_like_or_where_in_show_statement9540);
            	        	        like_or_where1805=like_or_where(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleshow_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_or_where1805.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 33:
            	    // MySQL.g:1911:5: PROCEDURE_SYMBOL CODE_SYMBOL procedure_ref
            	    {
            	        PROCEDURE_SYMBOL1806 = (pANTLR3_COMMON_TOKEN) MATCHT(PROCEDURE_SYMBOL, &FOLLOW_PROCEDURE_SYMBOL_in_show_statement9547);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PROCEDURE_SYMBOL1806_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PROCEDURE_SYMBOL1806));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PROCEDURE_SYMBOL1806_tree);
            	        }

            	        CODE_SYMBOL1807 = (pANTLR3_COMMON_TOKEN) MATCHT(CODE_SYMBOL, &FOLLOW_CODE_SYMBOL_in_show_statement9549);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CODE_SYMBOL1807_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CODE_SYMBOL1807));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CODE_SYMBOL1807_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_procedure_ref_in_show_statement9551);
            	        procedure_ref1808=procedure_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, procedure_ref1808.tree);

            	    }
            	    break;
            	case 34:
            	    // MySQL.g:1912:5: FUNCTION_SYMBOL CODE_SYMBOL function_ref
            	    {
            	        FUNCTION_SYMBOL1809 = (pANTLR3_COMMON_TOKEN) MATCHT(FUNCTION_SYMBOL, &FOLLOW_FUNCTION_SYMBOL_in_show_statement9557);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FUNCTION_SYMBOL1809_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FUNCTION_SYMBOL1809));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FUNCTION_SYMBOL1809_tree);
            	        }

            	        CODE_SYMBOL1810 = (pANTLR3_COMMON_TOKEN) MATCHT(CODE_SYMBOL, &FOLLOW_CODE_SYMBOL_in_show_statement9559);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CODE_SYMBOL1810_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CODE_SYMBOL1810));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CODE_SYMBOL1810_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_function_ref_in_show_statement9561);
            	        function_ref1811=function_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_ref1811.tree);

            	    }
            	    break;
            	case 35:
            	    // MySQL.g:1913: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_SYMBOL1812 = (pANTLR3_COMMON_TOKEN) MATCHT(INNODB_SYMBOL, &FOLLOW_INNODB_SYMBOL_in_show_statement9569);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INNODB_SYMBOL1812_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INNODB_SYMBOL1812));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INNODB_SYMBOL1812_tree);
            	        }

            	        STATUS_SYMBOL1813 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_show_statement9571);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshow_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STATUS_SYMBOL1813_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1813));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1813_tree);
            	        }

            	    }
            	    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 non_blocking
 * MySQL.g:1917:1: non_blocking : ({...}? ( NONBLOCKING_SYMBOL )? |);
 */
static MySQLParser_non_blocking_return
non_blocking(pMySQLParser ctx)
{
    MySQLParser_non_blocking_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NONBLOCKING_SYMBOL1814;

    pANTLR3_BASE_TREE NONBLOCKING_SYMBOL1814_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NONBLOCKING_SYMBOL1814       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NONBLOCKING_SYMBOL1814_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1917:13: ({...}? ( NONBLOCKING_SYMBOL )? |)

            ANTLR3_UINT32 alt570;

            alt570=2;

            {
                int LA570_0 = LA(1);
                if ( (LA570_0 == NONBLOCKING_SYMBOL))
                {
                    alt570=1;
                }
                else if ( ((SERVER_VERSION >= 50706)) && (LA570_0 == FOR_SYMBOL))
                {
                    {
                        int LA570_2 = LA(2);
                        if ( (( (( ((SERVER_VERSION >= 50700 && SERVER_VERSION < 50706)) && ((SERVER_VERSION >= 50700 && SERVER_VERSION < 50706)) )) && ((SERVER_VERSION >= 50706)) )))
                        {
                            alt570=1;
                        }
                        else if ( ((SERVER_VERSION >= 50706)))
                        {
                            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        = 2;


                            goto rulenon_blockingEx;

                        }
                    }
                }
                else if ( (LA570_0 == SEMICOLON_SYMBOL))
                {
                    {
                        int LA570_3 = LA(2);
                        if ( ((SERVER_VERSION >= 50700 && SERVER_VERSION < 50706)))
                        {
                            alt570=1;
                        }
                        else if ( (ANTLR3_TRUE))
                        {
                            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        = 3;


                            goto rulenon_blockingEx;

                        }
                    }
                }
                else if ( (LA570_0 == EOF))
                {
                    {
                        int LA570_4 = LA(2);
                        if ( ((SERVER_VERSION >= 50700 && SERVER_VERSION < 50706)))
                        {
                            alt570=1;
                        }
                        else if ( (ANTLR3_TRUE))
                        {
                            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        = 4;


                            goto rulenon_blockingEx;

                        }
                    }
                }
                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 rulenon_blockingEx;

                }
            }
            switch (alt570)
            {
        	case 1:
        	    // MySQL.g:1918:2: {...}? ( NONBLOCKING_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50700 && SERVER_VERSION < 50706)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50700 && SERVER_VERSION < 50706";
        	                EXCEPTION->ruleName	 = (void *)"non_blocking";


        	        }

        	        // MySQL.g:1918:55: ( NONBLOCKING_SYMBOL )?
        	        {
        	            int alt569=2;
        	            switch ( LA(1) )
        	            {
        	                case NONBLOCKING_SYMBOL:
        	                	{
        	                		alt569=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt569)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1918:55: NONBLOCKING_SYMBOL
        	        	    {
        	        	        NONBLOCKING_SYMBOL1814 = (pANTLR3_COMMON_TOKEN) MATCHT(NONBLOCKING_SYMBOL, &FOLLOW_NONBLOCKING_SYMBOL_in_non_blocking9586);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulenon_blockingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NONBLOCKING_SYMBOL1814_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NONBLOCKING_SYMBOL1814));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NONBLOCKING_SYMBOL1814_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1920:2: 
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulenon_blockingEx; /* Prevent compiler warnings */
    rulenon_blockingEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end non_blocking */

/**
 * $ANTLR start from_or_in
 * MySQL.g:1922:1: from_or_in : ( FROM_SYMBOL | IN_SYMBOL );
 */
static MySQLParser_from_or_in_return
from_or_in(pMySQLParser ctx)
{
    MySQLParser_from_or_in_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1815;

    pANTLR3_BASE_TREE set1815_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1815       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1815_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1922:11: ( FROM_SYMBOL | IN_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1815=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == FROM_SYMBOL || LA(1) == IN_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1815))
                );
                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 rulefrom_or_inEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulefrom_or_inEx; /* Prevent compiler warnings */
    rulefrom_or_inEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end from_or_in */

/**
 * $ANTLR start in_db
 * MySQL.g:1926:1: in_db : from_or_in identifier ;
 */
static MySQLParser_in_db_return
in_db(pMySQLParser ctx)
{
    MySQLParser_in_db_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_from_or_in_return from_or_in1816;
    #undef	RETURN_TYPE_from_or_in1816
    #define	RETURN_TYPE_from_or_in1816 MySQLParser_from_or_in_return

    MySQLParser_identifier_return identifier1817;
    #undef	RETURN_TYPE_identifier1817
    #define	RETURN_TYPE_identifier1817 MySQLParser_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    from_or_in1816.tree = NULL;

    identifier1817.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1926:6: ( from_or_in identifier )
        // MySQL.g:1927:2: from_or_in identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_from_or_in_in_in_db9614);
            from_or_in1816=from_or_in(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulein_dbEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, from_or_in1816.tree);

            FOLLOWPUSH(FOLLOW_identifier_in_in_db9616);
            identifier1817=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulein_dbEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1817.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulein_dbEx; /* Prevent compiler warnings */
    rulein_dbEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end in_db */

/**
 * $ANTLR start profile_type
 * MySQL.g:1930: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_SYMBOL1818;
    pANTLR3_COMMON_TOKEN    BLOCK_SYMBOL1819;
    pANTLR3_COMMON_TOKEN    IO_SYMBOL1820;
    pANTLR3_COMMON_TOKEN    CONTEXT_SYMBOL1821;
    pANTLR3_COMMON_TOKEN    SWITCHES_SYMBOL1822;
    pANTLR3_COMMON_TOKEN    CPU_SYMBOL1823;
    pANTLR3_COMMON_TOKEN    IPC_SYMBOL1824;
    pANTLR3_COMMON_TOKEN    MEMORY_SYMBOL1825;
    pANTLR3_COMMON_TOKEN    PAGE_SYMBOL1826;
    pANTLR3_COMMON_TOKEN    FAULTS_SYMBOL1827;
    pANTLR3_COMMON_TOKEN    SOURCE_SYMBOL1828;
    pANTLR3_COMMON_TOKEN    SWAPS_SYMBOL1829;

    pANTLR3_BASE_TREE ALL_SYMBOL1818_tree;
    pANTLR3_BASE_TREE BLOCK_SYMBOL1819_tree;
    pANTLR3_BASE_TREE IO_SYMBOL1820_tree;
    pANTLR3_BASE_TREE CONTEXT_SYMBOL1821_tree;
    pANTLR3_BASE_TREE SWITCHES_SYMBOL1822_tree;
    pANTLR3_BASE_TREE CPU_SYMBOL1823_tree;
    pANTLR3_BASE_TREE IPC_SYMBOL1824_tree;
    pANTLR3_BASE_TREE MEMORY_SYMBOL1825_tree;
    pANTLR3_BASE_TREE PAGE_SYMBOL1826_tree;
    pANTLR3_BASE_TREE FAULTS_SYMBOL1827_tree;
    pANTLR3_BASE_TREE SOURCE_SYMBOL1828_tree;
    pANTLR3_BASE_TREE SWAPS_SYMBOL1829_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL1818       = NULL;
    BLOCK_SYMBOL1819       = NULL;
    IO_SYMBOL1820       = NULL;
    CONTEXT_SYMBOL1821       = NULL;
    SWITCHES_SYMBOL1822       = NULL;
    CPU_SYMBOL1823       = NULL;
    IPC_SYMBOL1824       = NULL;
    MEMORY_SYMBOL1825       = NULL;
    PAGE_SYMBOL1826       = NULL;
    FAULTS_SYMBOL1827       = NULL;
    SOURCE_SYMBOL1828       = NULL;
    SWAPS_SYMBOL1829       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL1818_tree   = NULL;
    BLOCK_SYMBOL1819_tree   = NULL;
    IO_SYMBOL1820_tree   = NULL;
    CONTEXT_SYMBOL1821_tree   = NULL;
    SWITCHES_SYMBOL1822_tree   = NULL;
    CPU_SYMBOL1823_tree   = NULL;
    IPC_SYMBOL1824_tree   = NULL;
    MEMORY_SYMBOL1825_tree   = NULL;
    PAGE_SYMBOL1826_tree   = NULL;
    FAULTS_SYMBOL1827_tree   = NULL;
    SOURCE_SYMBOL1828_tree   = NULL;
    SWAPS_SYMBOL1829_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1930: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 alt571;

            alt571=9;

            switch ( LA(1) )
            {
            case ALL_SYMBOL:
            	{
            		alt571=1;
            	}
                break;
            case BLOCK_SYMBOL:
            	{
            		alt571=2;
            	}
                break;
            case CONTEXT_SYMBOL:
            	{
            		alt571=3;
            	}
                break;
            case CPU_SYMBOL:
            	{
            		alt571=4;
            	}
                break;
            case IPC_SYMBOL:
            	{
            		alt571=5;
            	}
                break;
            case MEMORY_SYMBOL:
            	{
            		alt571=6;
            	}
                break;
            case PAGE_SYMBOL:
            	{
            		alt571=7;
            	}
                break;
            case SOURCE_SYMBOL:
            	{
            		alt571=8;
            	}
                break;
            case SWAPS_SYMBOL:
            	{
            		alt571=9;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 571;
                EXCEPTION->state        = 0;


                goto ruleprofile_typeEx;

            }

            switch (alt571)
            {
        	case 1:
        	    // MySQL.g:1931:2: ALL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ALL_SYMBOL1818 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_profile_type9625);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ALL_SYMBOL1818_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1818));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1818_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1932:4: BLOCK_SYMBOL IO_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BLOCK_SYMBOL1819 = (pANTLR3_COMMON_TOKEN) MATCHT(BLOCK_SYMBOL, &FOLLOW_BLOCK_SYMBOL_in_profile_type9630);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BLOCK_SYMBOL1819_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BLOCK_SYMBOL1819));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BLOCK_SYMBOL1819_tree);
        	        }

        	        IO_SYMBOL1820 = (pANTLR3_COMMON_TOKEN) MATCHT(IO_SYMBOL, &FOLLOW_IO_SYMBOL_in_profile_type9632);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IO_SYMBOL1820_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IO_SYMBOL1820));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IO_SYMBOL1820_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1933:4: CONTEXT_SYMBOL SWITCHES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONTEXT_SYMBOL1821 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTEXT_SYMBOL, &FOLLOW_CONTEXT_SYMBOL_in_profile_type9637);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONTEXT_SYMBOL1821_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTEXT_SYMBOL1821));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONTEXT_SYMBOL1821_tree);
        	        }

        	        SWITCHES_SYMBOL1822 = (pANTLR3_COMMON_TOKEN) MATCHT(SWITCHES_SYMBOL, &FOLLOW_SWITCHES_SYMBOL_in_profile_type9639);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SWITCHES_SYMBOL1822_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SWITCHES_SYMBOL1822));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SWITCHES_SYMBOL1822_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1934:4: CPU_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CPU_SYMBOL1823 = (pANTLR3_COMMON_TOKEN) MATCHT(CPU_SYMBOL, &FOLLOW_CPU_SYMBOL_in_profile_type9644);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CPU_SYMBOL1823_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CPU_SYMBOL1823));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CPU_SYMBOL1823_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1935:4: IPC_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IPC_SYMBOL1824 = (pANTLR3_COMMON_TOKEN) MATCHT(IPC_SYMBOL, &FOLLOW_IPC_SYMBOL_in_profile_type9649);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IPC_SYMBOL1824_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IPC_SYMBOL1824));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IPC_SYMBOL1824_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1936:4: MEMORY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEMORY_SYMBOL1825 = (pANTLR3_COMMON_TOKEN) MATCHT(MEMORY_SYMBOL, &FOLLOW_MEMORY_SYMBOL_in_profile_type9654);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEMORY_SYMBOL1825_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEMORY_SYMBOL1825));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEMORY_SYMBOL1825_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1937:4: PAGE_SYMBOL FAULTS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PAGE_SYMBOL1826 = (pANTLR3_COMMON_TOKEN) MATCHT(PAGE_SYMBOL, &FOLLOW_PAGE_SYMBOL_in_profile_type9659);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PAGE_SYMBOL1826_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PAGE_SYMBOL1826));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PAGE_SYMBOL1826_tree);
        	        }

        	        FAULTS_SYMBOL1827 = (pANTLR3_COMMON_TOKEN) MATCHT(FAULTS_SYMBOL, &FOLLOW_FAULTS_SYMBOL_in_profile_type9661);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FAULTS_SYMBOL1827_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FAULTS_SYMBOL1827));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FAULTS_SYMBOL1827_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1938:4: SOURCE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SOURCE_SYMBOL1828 = (pANTLR3_COMMON_TOKEN) MATCHT(SOURCE_SYMBOL, &FOLLOW_SOURCE_SYMBOL_in_profile_type9666);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SOURCE_SYMBOL1828_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOURCE_SYMBOL1828));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SOURCE_SYMBOL1828_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1939:4: SWAPS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SWAPS_SYMBOL1829 = (pANTLR3_COMMON_TOKEN) MATCHT(SWAPS_SYMBOL, &FOLLOW_SWAPS_SYMBOL_in_profile_type9671);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleprofile_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SWAPS_SYMBOL1829_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SWAPS_SYMBOL1829));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SWAPS_SYMBOL1829_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 other_administrative_statement
 * MySQL.g:1944:1: other_administrative_statement : ( BINLOG_SYMBOL ^ string_literal | CACHE_SYMBOL ^ INDEX_SYMBOL key_cache_list_or_parts IN_SYMBOL ( identifier | DEFAULT_SYMBOL ) | FLUSH_SYMBOL ^ ( no_write_to_bin_log )? ( flush_tables | flush_option ( COMMA_SYMBOL flush_option )* ) | KILL_SYMBOL ^ ( options {greedy=true; } : ( CONNECTION_SYMBOL | QUERY_SYMBOL ) )? expression | LOAD_SYMBOL ^ INDEX_SYMBOL INTO_SYMBOL CACHE_SYMBOL load_table_index_list | RESET_SYMBOL ^ reset_option ( COMMA_SYMBOL reset_option )* |{...}? SHUTDOWN_SYMBOL );
 */
static MySQLParser_other_administrative_statement_return
other_administrative_statement(pMySQLParser ctx)
{
    MySQLParser_other_administrative_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BINLOG_SYMBOL1830;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1832;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1833;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1835;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL1837;
    pANTLR3_COMMON_TOKEN    FLUSH_SYMBOL1838;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1842;
    pANTLR3_COMMON_TOKEN    KILL_SYMBOL1844;
    pANTLR3_COMMON_TOKEN    set1845;
    pANTLR3_COMMON_TOKEN    LOAD_SYMBOL1847;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL1848;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL1849;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1850;
    pANTLR3_COMMON_TOKEN    RESET_SYMBOL1852;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1854;
    pANTLR3_COMMON_TOKEN    SHUTDOWN_SYMBOL1856;
    MySQLParser_string_literal_return string_literal1831;
    #undef	RETURN_TYPE_string_literal1831
    #define	RETURN_TYPE_string_literal1831 MySQLParser_string_literal_return

    MySQLParser_key_cache_list_or_parts_return key_cache_list_or_parts1834;
    #undef	RETURN_TYPE_key_cache_list_or_parts1834
    #define	RETURN_TYPE_key_cache_list_or_parts1834 MySQLParser_key_cache_list_or_parts_return

    MySQLParser_identifier_return identifier1836;
    #undef	RETURN_TYPE_identifier1836
    #define	RETURN_TYPE_identifier1836 MySQLParser_identifier_return

    MySQLParser_no_write_to_bin_log_return no_write_to_bin_log1839;
    #undef	RETURN_TYPE_no_write_to_bin_log1839
    #define	RETURN_TYPE_no_write_to_bin_log1839 MySQLParser_no_write_to_bin_log_return

    MySQLParser_flush_tables_return flush_tables1840;
    #undef	RETURN_TYPE_flush_tables1840
    #define	RETURN_TYPE_flush_tables1840 MySQLParser_flush_tables_return

    MySQLParser_flush_option_return flush_option1841;
    #undef	RETURN_TYPE_flush_option1841
    #define	RETURN_TYPE_flush_option1841 MySQLParser_flush_option_return

    MySQLParser_flush_option_return flush_option1843;
    #undef	RETURN_TYPE_flush_option1843
    #define	RETURN_TYPE_flush_option1843 MySQLParser_flush_option_return

    MySQLParser_expression_return expression1846;
    #undef	RETURN_TYPE_expression1846
    #define	RETURN_TYPE_expression1846 MySQLParser_expression_return

    MySQLParser_load_table_index_list_return load_table_index_list1851;
    #undef	RETURN_TYPE_load_table_index_list1851
    #define	RETURN_TYPE_load_table_index_list1851 MySQLParser_load_table_index_list_return

    MySQLParser_reset_option_return reset_option1853;
    #undef	RETURN_TYPE_reset_option1853
    #define	RETURN_TYPE_reset_option1853 MySQLParser_reset_option_return

    MySQLParser_reset_option_return reset_option1855;
    #undef	RETURN_TYPE_reset_option1855
    #define	RETURN_TYPE_reset_option1855 MySQLParser_reset_option_return

    pANTLR3_BASE_TREE BINLOG_SYMBOL1830_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1832_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1833_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1835_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL1837_tree;
    pANTLR3_BASE_TREE FLUSH_SYMBOL1838_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1842_tree;
    pANTLR3_BASE_TREE KILL_SYMBOL1844_tree;
    pANTLR3_BASE_TREE set1845_tree;
    pANTLR3_BASE_TREE LOAD_SYMBOL1847_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL1848_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL1849_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1850_tree;
    pANTLR3_BASE_TREE RESET_SYMBOL1852_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1854_tree;
    pANTLR3_BASE_TREE SHUTDOWN_SYMBOL1856_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINLOG_SYMBOL1830       = NULL;
    CACHE_SYMBOL1832       = NULL;
    INDEX_SYMBOL1833       = NULL;
    IN_SYMBOL1835       = NULL;
    DEFAULT_SYMBOL1837       = NULL;
    FLUSH_SYMBOL1838       = NULL;
    COMMA_SYMBOL1842       = NULL;
    KILL_SYMBOL1844       = NULL;
    set1845       = NULL;
    LOAD_SYMBOL1847       = NULL;
    INDEX_SYMBOL1848       = NULL;
    INTO_SYMBOL1849       = NULL;
    CACHE_SYMBOL1850       = NULL;
    RESET_SYMBOL1852       = NULL;
    COMMA_SYMBOL1854       = NULL;
    SHUTDOWN_SYMBOL1856       = NULL;
    string_literal1831.tree = NULL;

    key_cache_list_or_parts1834.tree = NULL;

    identifier1836.tree = NULL;

    no_write_to_bin_log1839.tree = NULL;

    flush_tables1840.tree = NULL;

    flush_option1841.tree = NULL;

    flush_option1843.tree = NULL;

    expression1846.tree = NULL;

    load_table_index_list1851.tree = NULL;

    reset_option1853.tree = NULL;

    reset_option1855.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINLOG_SYMBOL1830_tree   = NULL;
    CACHE_SYMBOL1832_tree   = NULL;
    INDEX_SYMBOL1833_tree   = NULL;
    IN_SYMBOL1835_tree   = NULL;
    DEFAULT_SYMBOL1837_tree   = NULL;
    FLUSH_SYMBOL1838_tree   = NULL;
    COMMA_SYMBOL1842_tree   = NULL;
    KILL_SYMBOL1844_tree   = NULL;
    set1845_tree   = NULL;
    LOAD_SYMBOL1847_tree   = NULL;
    INDEX_SYMBOL1848_tree   = NULL;
    INTO_SYMBOL1849_tree   = NULL;
    CACHE_SYMBOL1850_tree   = NULL;
    RESET_SYMBOL1852_tree   = NULL;
    COMMA_SYMBOL1854_tree   = NULL;
    SHUTDOWN_SYMBOL1856_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1944:31: ( BINLOG_SYMBOL ^ string_literal | CACHE_SYMBOL ^ INDEX_SYMBOL key_cache_list_or_parts IN_SYMBOL ( identifier | DEFAULT_SYMBOL ) | FLUSH_SYMBOL ^ ( no_write_to_bin_log )? ( flush_tables | flush_option ( COMMA_SYMBOL flush_option )* ) | KILL_SYMBOL ^ ( options {greedy=true; } : ( CONNECTION_SYMBOL | QUERY_SYMBOL ) )? expression | LOAD_SYMBOL ^ INDEX_SYMBOL INTO_SYMBOL CACHE_SYMBOL load_table_index_list | RESET_SYMBOL ^ reset_option ( COMMA_SYMBOL reset_option )* |{...}? SHUTDOWN_SYMBOL )

            ANTLR3_UINT32 alt578;

            alt578=7;

            switch ( LA(1) )
            {
            case BINLOG_SYMBOL:
            	{
            		alt578=1;
            	}
                break;
            case CACHE_SYMBOL:
            	{
            		alt578=2;
            	}
                break;
            case FLUSH_SYMBOL:
            	{
            		alt578=3;
            	}
                break;
            case KILL_SYMBOL:
            	{
            		alt578=4;
            	}
                break;
            case LOAD_SYMBOL:
            	{
            		alt578=5;
            	}
                break;
            case RESET_SYMBOL:
            	{
            		alt578=6;
            	}
                break;
            case SHUTDOWN_SYMBOL:
            	{
            		alt578=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 578;
                EXCEPTION->state        = 0;


                goto ruleother_administrative_statementEx;

            }

            switch (alt578)
            {
        	case 1:
        	    // MySQL.g:1945:2: BINLOG_SYMBOL ^ string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINLOG_SYMBOL1830 = (pANTLR3_COMMON_TOKEN) MATCHT(BINLOG_SYMBOL, &FOLLOW_BINLOG_SYMBOL_in_other_administrative_statement9682);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINLOG_SYMBOL1830_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINLOG_SYMBOL1830))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BINLOG_SYMBOL1830_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_other_administrative_statement9685);
        	        string_literal1831=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal1831.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1946:4: CACHE_SYMBOL ^ INDEX_SYMBOL key_cache_list_or_parts IN_SYMBOL ( identifier | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CACHE_SYMBOL1832 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9690);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1832_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1832))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CACHE_SYMBOL1832_tree, root_0));
        	        }

        	        INDEX_SYMBOL1833 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9693);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1833_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1833));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1833_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_key_cache_list_or_parts_in_other_administrative_statement9695);
        	        key_cache_list_or_parts1834=key_cache_list_or_parts(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_cache_list_or_parts1834.tree);

        	        IN_SYMBOL1835 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_other_administrative_statement9697);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL1835_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1835));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1835_tree);
        	        }

        	        // MySQL.g:1946:65: ( identifier | DEFAULT_SYMBOL )
        	        {
        	            int alt572=2;
        	            {
        	                int LA572_0 = LA(1);
        	                if ( (((LA572_0 >= ACCOUNT_SYMBOL) && (LA572_0 <= YEAR_SYMBOL)) || LA572_0 == BACK_TICK_QUOTED_ID || LA572_0 == DOUBLE_QUOTED_TEXT || LA572_0 == IDENTIFIER))
        	                {
        	                    alt572=1;
        	                }
        	                else if ( (LA572_0 == DEFAULT_SYMBOL))
        	                {
        	                    alt572=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 572;
        	                    EXCEPTION->state        = 0;


        	                    goto ruleother_administrative_statementEx;

        	                }
        	            }
        	            switch (alt572)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1946:66: identifier
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_identifier_in_other_administrative_statement9700);
        	        	        identifier1836=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1836.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1946:79: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL1837 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_other_administrative_statement9704);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL1837_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL1837));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL1837_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1947:4: FLUSH_SYMBOL ^ ( no_write_to_bin_log )? ( flush_tables | flush_option ( COMMA_SYMBOL flush_option )* )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FLUSH_SYMBOL1838 = (pANTLR3_COMMON_TOKEN) MATCHT(FLUSH_SYMBOL, &FOLLOW_FLUSH_SYMBOL_in_other_administrative_statement9710);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FLUSH_SYMBOL1838_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FLUSH_SYMBOL1838))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, FLUSH_SYMBOL1838_tree, root_0));
        	        }

        	        // MySQL.g:1947:18: ( no_write_to_bin_log )?
        	        {
        	            int alt573=2;
        	            {
        	                int LA573_0 = LA(1);
        	                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA573_0 == LOCAL_SYMBOL))
        	                {
        	                    alt573=1;
        	                }
        	                else if ( (LA573_0 == NO_WRITE_TO_BINLOG_SYMBOL))
        	                {
        	                    alt573=1;
        	                }
        	            }
        	            switch (alt573)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1947:18: no_write_to_bin_log
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_no_write_to_bin_log_in_other_administrative_statement9713);
        	        	        no_write_to_bin_log1839=no_write_to_bin_log(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, no_write_to_bin_log1839.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:1948:3: ( flush_tables | flush_option ( COMMA_SYMBOL flush_option )* )
        	        {
        	            int alt575=2;
        	            switch ( LA(1) )
        	            {
        	            case TABLES_SYMBOL:
        	            case TABLE_SYMBOL:
        	            	{
        	            		alt575=1;
        	            	}
        	                break;
        	            case DES_KEY_FILE_SYMBOL:
        	            case ENGINE_SYMBOL:
        	            case ERROR_SYMBOL:
        	            case GENERAL_SYMBOL:
        	            case HOSTS_SYMBOL:
        	            case LOGS_SYMBOL:
        	            case PRIVILEGES_SYMBOL:
        	            case QUERY_SYMBOL:
        	            case RELAY_SYMBOL:
        	            case SLOW_SYMBOL:
        	            case STATUS_SYMBOL:
        	            case USER_RESOURCES_SYMBOL:
        	            case BINARY_SYMBOL:
        	            case OPTIMIZER_COSTS_SYMBOL:
        	            	{
        	            		alt575=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 575;
        	                EXCEPTION->state        = 0;


        	                goto ruleother_administrative_statementEx;

        	            }

        	            switch (alt575)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1949:4: flush_tables
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_flush_tables_in_other_administrative_statement9723);
        	        	        flush_tables1840=flush_tables(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_tables1840.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:1950:6: flush_option ( COMMA_SYMBOL flush_option )*
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_flush_option_in_other_administrative_statement9730);
        	        	        flush_option1841=flush_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_option1841.tree);

        	        	        // MySQL.g:1950:19: ( COMMA_SYMBOL flush_option )*

        	        	        for (;;)
        	        	        {
        	        	            int alt574=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	            case COMMA_SYMBOL:
        	        	            	{
        	        	            		alt574=1;
        	        	            	}
        	        	                break;

        	        	            }

        	        	            switch (alt574)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:1950:20: COMMA_SYMBOL flush_option
        	        	        	    {
        	        	        	        COMMA_SYMBOL1842 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9733);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleother_administrative_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        COMMA_SYMBOL1842_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1842));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1842_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_flush_option_in_other_administrative_statement9735);
        	        	        	        flush_option1843=flush_option(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleother_administrative_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_option1843.tree);

        	        	        	    }
        	        	        	    break;

        	        	        	default:
        	        	        	    goto loop574;	/* break out of the loop */
        	        	        	    break;
        	        	            }
        	        	        }
        	        	        loop574: ; /* Jump out to here if this rule does not match */


        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1952:4: KILL_SYMBOL ^ ( options {greedy=true; } : ( CONNECTION_SYMBOL | QUERY_SYMBOL ) )? expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KILL_SYMBOL1844 = (pANTLR3_COMMON_TOKEN) MATCHT(KILL_SYMBOL, &FOLLOW_KILL_SYMBOL_in_other_administrative_statement9746);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KILL_SYMBOL1844_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KILL_SYMBOL1844))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, KILL_SYMBOL1844_tree, root_0));
        	        }

        	        // MySQL.g:1952:18: ( options {greedy=true; } : ( CONNECTION_SYMBOL | QUERY_SYMBOL ) )?
        	        {
        	            int alt576=2;
        	            switch ( LA(1) )
        	            {
        	                case CONNECTION_SYMBOL:
        	                case QUERY_SYMBOL:
        	                	{
        	                		{
        	                		    int LA576_1 = LA(2);
        	                		    if ( (LA576_1 == NOT_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (LA576_1 == MINUS_OPERATOR || LA576_1 == PLUS_OPERATOR))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (((LA576_1 >= ACCOUNT_SYMBOL) && (LA576_1 <= SNAPSHOT_SYMBOL)) || ((LA576_1 >= SOURCE_SYMBOL) && (LA576_1 <= YEAR_SYMBOL)) || ((LA576_1 >= AT_AT_SIGN_SYMBOL) && (LA576_1 <= AT_TEXT_SUFFIX)) || LA576_1 == BACK_TICK_QUOTED_ID || ((LA576_1 >= BINARY_SYMBOL) && (LA576_1 <= BIN_NUMBER)) || LA576_1 == BITWISE_NOT_OPERATOR || ((LA576_1 >= BIT_AND_SYMBOL) && (LA576_1 <= BIT_XOR_SYMBOL)) || ((LA576_1 >= CASE_SYMBOL) && (LA576_1 <= CAST_SYMBOL)) || LA576_1 == CHAR_SYMBOL || ((LA576_1 >= CONVERT_SYMBOL) && (LA576_1 <= COUNT_SYMBOL)) || LA576_1 == CURDATE_SYMBOL || LA576_1 == CURRENT_USER_SYMBOL || LA576_1 == CURTIME_SYMBOL || LA576_1 == DATABASE_SYMBOL || LA576_1 == DATE_ADD_SYMBOL || LA576_1 == DATE_SUB_SYMBOL || LA576_1 == DECIMAL_NUMBER || LA576_1 == DOUBLE_QUOTED_TEXT || LA576_1 == EXISTS_SYMBOL || ((LA576_1 >= EXTRACT_SYMBOL) && (LA576_1 <= FALSE_SYMBOL)) || LA576_1 == FLOAT_NUMBER || LA576_1 == GROUP_CONCAT_SYMBOL || LA576_1 == HEX_NUMBER || ((LA576_1 >= IDENTIFIER) && (LA576_1 <= IF_SYMBOL)) || LA576_1 == INSERT_SYMBOL || LA576_1 == INTERVAL_SYMBOL || LA576_1 == INT_NUMBER || LA576_1 == LEFT_SYMBOL || LA576_1 == LOGICAL_NOT_OPERATOR || LA576_1 == LONG_NUMBER || LA576_1 == MATCH_SYMBOL || LA576_1 == MAX_SYMBOL || LA576_1 == MIN_SYMBOL || LA576_1 == NCHAR_TEXT || LA576_1 == NOT2_SYMBOL || LA576_1 == NOW_SYMBOL || LA576_1 == NULL2_SYMBOL || LA576_1 == NULL_SYMBOL || LA576_1 == OPEN_CURLY_SYMBOL || LA576_1 == PARAM_MARKER || LA576_1 == POSITION_SYMBOL || ((LA576_1 >= REPEAT_SYMBOL) && (LA576_1 <= REPLACE_SYMBOL)) || LA576_1 == RIGHT_SYMBOL || LA576_1 == SINGLE_QUOTED_TEXT || LA576_1 == STDDEV_SAMP_SYMBOL || LA576_1 == STD_SYMBOL || LA576_1 == SUBSTRING_SYMBOL || ((LA576_1 >= SUM_SYMBOL) && (LA576_1 <= SYSDATE_SYMBOL)) || ((LA576_1 >= TRIM_SYMBOL) && (LA576_1 <= TRUE_SYMBOL)) || LA576_1 == ULONGLONG_NUMBER || LA576_1 == UNDERSCORE_CHARSET || ((LA576_1 >= UTC_DATE_SYMBOL) && (LA576_1 <= UTC_TIME_SYMBOL)) || LA576_1 == VALUES_SYMBOL || LA576_1 == VARIANCE_SYMBOL || LA576_1 == VAR_SAMP_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (LA576_1 == MOD_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (LA576_1 == DOT_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (LA576_1 == OPEN_PAR_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		    else if ( (LA576_1 == SOUNDS_SYMBOL))
        	                		    {
        	                		        alt576=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt576)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1952:47: ( CONNECTION_SYMBOL | QUERY_SYMBOL )
        	        	    {
        	        	        set1845=(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, set1845))
        	        	            );
        	        	            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 ruleother_administrative_statementEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_other_administrative_statement9773);
        	        expression1846=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression1846.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1953:4: LOAD_SYMBOL ^ INDEX_SYMBOL INTO_SYMBOL CACHE_SYMBOL load_table_index_list
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LOAD_SYMBOL1847 = (pANTLR3_COMMON_TOKEN) MATCHT(LOAD_SYMBOL, &FOLLOW_LOAD_SYMBOL_in_other_administrative_statement9778);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOAD_SYMBOL1847_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOAD_SYMBOL1847))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOAD_SYMBOL1847_tree, root_0));
        	        }

        	        INDEX_SYMBOL1848 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_other_administrative_statement9781);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL1848_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL1848));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL1848_tree);
        	        }

        	        INTO_SYMBOL1849 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_other_administrative_statement9783);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTO_SYMBOL1849_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL1849));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL1849_tree);
        	        }

        	        CACHE_SYMBOL1850 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_other_administrative_statement9785);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1850_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1850));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1850_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_load_table_index_list_in_other_administrative_statement9787);
        	        load_table_index_list1851=load_table_index_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, load_table_index_list1851.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1954:4: RESET_SYMBOL ^ reset_option ( COMMA_SYMBOL reset_option )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RESET_SYMBOL1852 = (pANTLR3_COMMON_TOKEN) MATCHT(RESET_SYMBOL, &FOLLOW_RESET_SYMBOL_in_other_administrative_statement9792);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESET_SYMBOL1852_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESET_SYMBOL1852))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, RESET_SYMBOL1852_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_reset_option_in_other_administrative_statement9795);
        	        reset_option1853=reset_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reset_option1853.tree);

        	        // MySQL.g:1954:31: ( COMMA_SYMBOL reset_option )*

        	        for (;;)
        	        {
        	            int alt577=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt577=1;
        	            	}
        	                break;

        	            }

        	            switch (alt577)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1954:32: COMMA_SYMBOL reset_option
        	        	    {
        	        	        COMMA_SYMBOL1854 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_other_administrative_statement9798);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL1854_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1854));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1854_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_reset_option_in_other_administrative_statement9800);
        	        	        reset_option1855=reset_option(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleother_administrative_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reset_option1855.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop577;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop577: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1955:4: {...}? SHUTDOWN_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50709)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50709";
        	                EXCEPTION->ruleName	 = (void *)"other_administrative_statement";


        	        }

        	        SHUTDOWN_SYMBOL1856 = (pANTLR3_COMMON_TOKEN) MATCHT(SHUTDOWN_SYMBOL, &FOLLOW_SHUTDOWN_SYMBOL_in_other_administrative_statement9809);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleother_administrative_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SHUTDOWN_SYMBOL1856_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SHUTDOWN_SYMBOL1856));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SHUTDOWN_SYMBOL1856_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleother_administrative_statementEx; /* Prevent compiler warnings */
    ruleother_administrative_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 other_administrative_statement */

/**
 * $ANTLR start key_cache_list_or_parts
 * MySQL.g:1958:1: key_cache_list_or_parts options {k=4; } : ( key_cache_list -> ^( KEY_CACHE_LIST_TOKEN key_cache_list ) | assign_to_keycache_partition -> ^( KEY_CACHE_PARTITION_TOKEN assign_to_keycache_partition ) );
 */
static MySQLParser_key_cache_list_or_parts_return
key_cache_list_or_parts(pMySQLParser ctx)
{
    MySQLParser_key_cache_list_or_parts_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_key_cache_list_return key_cache_list1857;
    #undef	RETURN_TYPE_key_cache_list1857
    #define	RETURN_TYPE_key_cache_list1857 MySQLParser_key_cache_list_return

    MySQLParser_assign_to_keycache_partition_return assign_to_keycache_partition1858;
    #undef	RETURN_TYPE_assign_to_keycache_partition1858
    #define	RETURN_TYPE_assign_to_keycache_partition1858 MySQLParser_assign_to_keycache_partition_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_assign_to_keycache_partition;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_key_cache_list;
    /* Initialize rule variables
     */

    root_0 = NULL;

    key_cache_list1857.tree = NULL;

    assign_to_keycache_partition1858.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_assign_to_keycache_partition   = NULL;
    #define CREATE_stream_assign_to_keycache_partition  if (stream_assign_to_keycache_partition == NULL) {stream_assign_to_keycache_partition = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule assign_to_keycache_partition"); }
    stream_key_cache_list   = NULL;
    #define CREATE_stream_key_cache_list  if (stream_key_cache_list == NULL) {stream_key_cache_list = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule key_cache_list"); }

    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1958:43: ( key_cache_list -> ^( KEY_CACHE_LIST_TOKEN key_cache_list ) | assign_to_keycache_partition -> ^( KEY_CACHE_PARTITION_TOKEN assign_to_keycache_partition ) )

            ANTLR3_UINT32 alt579;

            alt579=2;

            {
                int LA579_0 = LA(1);
                if ( (LA579_0 == IDENTIFIER))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA579_7 = LA(3);
                    		    if ( (LA579_7 == IDENTIFIER))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 37;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_7 == BACK_TICK_QUOTED_ID))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 38;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_7 == DOUBLE_QUOTED_TEXT))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 39;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_7 >= ACTION_SYMBOL) && (LA579_7 <= SHARE_SYMBOL)) || ((LA579_7 >= SLOW_SYMBOL) && (LA579_7 <= YEAR_SYMBOL))))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 40;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_7 >= ACCOUNT_SYMBOL) && (LA579_7 <= XA_SYMBOL)) || LA579_7 == SHUTDOWN_SYMBOL))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 41;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 579;
                    		        EXCEPTION->state        = 7;


                    		        goto rulekey_cache_list_or_partsEx;

                    		    }
                    		}
                    	}
                        break;
                    case COMMA_SYMBOL:
                    case INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    	{
                    		alt579=1;
                    	}
                        break;
                    case PARTITION_SYMBOL:
                    	{
                    		alt579=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 579;
                        EXCEPTION->state        = 1;


                        goto rulekey_cache_list_or_partsEx;

                    }

                }
                else if ( (LA579_0 == BACK_TICK_QUOTED_ID))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA579_12 = LA(3);
                    		    if ( (LA579_12 == IDENTIFIER))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 42;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_12 == BACK_TICK_QUOTED_ID))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 43;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_12 == DOUBLE_QUOTED_TEXT))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 44;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_12 >= ACTION_SYMBOL) && (LA579_12 <= SHARE_SYMBOL)) || ((LA579_12 >= SLOW_SYMBOL) && (LA579_12 <= YEAR_SYMBOL))))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 45;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_12 >= ACCOUNT_SYMBOL) && (LA579_12 <= XA_SYMBOL)) || LA579_12 == SHUTDOWN_SYMBOL))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 46;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 579;
                    		        EXCEPTION->state        = 12;


                    		        goto rulekey_cache_list_or_partsEx;

                    		    }
                    		}
                    	}
                        break;
                    case COMMA_SYMBOL:
                    case INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    	{
                    		alt579=1;
                    	}
                        break;
                    case PARTITION_SYMBOL:
                    	{
                    		alt579=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 579;
                        EXCEPTION->state        = 2;


                        goto rulekey_cache_list_or_partsEx;

                    }

                }
                else if ( (LA579_0 == DOUBLE_QUOTED_TEXT))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA579_17 = LA(3);
                    		    if ( (LA579_17 == IDENTIFIER))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 47;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_17 == BACK_TICK_QUOTED_ID))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 48;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_17 == DOUBLE_QUOTED_TEXT))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 49;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_17 >= ACTION_SYMBOL) && (LA579_17 <= SHARE_SYMBOL)) || ((LA579_17 >= SLOW_SYMBOL) && (LA579_17 <= YEAR_SYMBOL))))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 50;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_17 >= ACCOUNT_SYMBOL) && (LA579_17 <= XA_SYMBOL)) || LA579_17 == SHUTDOWN_SYMBOL))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 51;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 579;
                    		        EXCEPTION->state        = 17;


                    		        goto rulekey_cache_list_or_partsEx;

                    		    }
                    		}
                    	}
                        break;
                    case COMMA_SYMBOL:
                    case INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    	{
                    		alt579=1;
                    	}
                        break;
                    case PARTITION_SYMBOL:
                    	{
                    		alt579=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 579;
                        EXCEPTION->state        = 3;


                        goto rulekey_cache_list_or_partsEx;

                    }

                }
                else if ( (((LA579_0 >= ACTION_SYMBOL) && (LA579_0 <= SHARE_SYMBOL)) || ((LA579_0 >= SLOW_SYMBOL) && (LA579_0 <= YEAR_SYMBOL))))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA579_22 = LA(3);
                    		    if ( (LA579_22 == IDENTIFIER))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 52;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_22 == BACK_TICK_QUOTED_ID))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 53;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_22 == DOUBLE_QUOTED_TEXT))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 54;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_22 >= ACTION_SYMBOL) && (LA579_22 <= SHARE_SYMBOL)) || ((LA579_22 >= SLOW_SYMBOL) && (LA579_22 <= YEAR_SYMBOL))))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 55;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_22 >= ACCOUNT_SYMBOL) && (LA579_22 <= XA_SYMBOL)) || LA579_22 == SHUTDOWN_SYMBOL))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 56;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 579;
                    		        EXCEPTION->state        = 22;


                    		        goto rulekey_cache_list_or_partsEx;

                    		    }
                    		}
                    	}
                        break;
                    case COMMA_SYMBOL:
                    case INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    	{
                    		alt579=1;
                    	}
                        break;
                    case PARTITION_SYMBOL:
                    	{
                    		alt579=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 579;
                        EXCEPTION->state        = 4;


                        goto rulekey_cache_list_or_partsEx;

                    }

                }
                else if ( (((LA579_0 >= ACCOUNT_SYMBOL) && (LA579_0 <= XA_SYMBOL)) || LA579_0 == SHUTDOWN_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA579_27 = LA(3);
                    		    if ( (LA579_27 == IDENTIFIER))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 57;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_27 == BACK_TICK_QUOTED_ID))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 58;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (LA579_27 == DOUBLE_QUOTED_TEXT))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 59;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_27 >= ACTION_SYMBOL) && (LA579_27 <= SHARE_SYMBOL)) || ((LA579_27 >= SLOW_SYMBOL) && (LA579_27 <= YEAR_SYMBOL))))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 60;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else if ( (((LA579_27 >= ACCOUNT_SYMBOL) && (LA579_27 <= XA_SYMBOL)) || LA579_27 == SHUTDOWN_SYMBOL))
                    		    {
                    		        switch ( LA(4) )
                    		        {
                    		        case COMMA_SYMBOL:
                    		        case INDEX_SYMBOL:
                    		        case IN_SYMBOL:
                    		        case KEY_SYMBOL:
                    		        	{
                    		        		alt579=1;
                    		        	}
                    		            break;
                    		        case PARTITION_SYMBOL:
                    		        	{
                    		        		alt579=2;
                    		        	}
                    		            break;

                    		        default:
                    		            if (BACKTRACKING>0)
                    		            {
                    		                FAILEDFLAG = ANTLR3_TRUE;
                    		                return retval;
                    		            }

                    		            CONSTRUCTEX();
                    		            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		            EXCEPTION->message      = (void *)"";
                    		            EXCEPTION->decisionNum  = 579;
                    		            EXCEPTION->state        = 61;


                    		            goto rulekey_cache_list_or_partsEx;

                    		        }

                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 579;
                    		        EXCEPTION->state        = 27;


                    		        goto rulekey_cache_list_or_partsEx;

                    		    }
                    		}
                    	}
                        break;
                    case COMMA_SYMBOL:
                    case INDEX_SYMBOL:
                    case IN_SYMBOL:
                    case KEY_SYMBOL:
                    	{
                    		alt579=1;
                    	}
                        break;
                    case PARTITION_SYMBOL:
                    	{
                    		alt579=2;
                    	}
                        break;

                    default:
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }

                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 579;
                        EXCEPTION->state        = 5;


                        goto rulekey_cache_list_or_partsEx;

                    }

                }
                else if ( (LA579_0 == DOT_SYMBOL))
                {
                    {
                        int LA579_6 = LA(2);
                        if ( (LA579_6 == IDENTIFIER))
                        {
                            switch ( LA(3) )
                            {
                            case COMMA_SYMBOL:
                            case INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            	{
                            		alt579=1;
                            	}
                                break;
                            case PARTITION_SYMBOL:
                            	{
                            		alt579=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 579;
                                EXCEPTION->state        = 32;


                                goto rulekey_cache_list_or_partsEx;

                            }

                        }
                        else if ( (LA579_6 == BACK_TICK_QUOTED_ID))
                        {
                            switch ( LA(3) )
                            {
                            case COMMA_SYMBOL:
                            case INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            	{
                            		alt579=1;
                            	}
                                break;
                            case PARTITION_SYMBOL:
                            	{
                            		alt579=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 579;
                                EXCEPTION->state        = 33;


                                goto rulekey_cache_list_or_partsEx;

                            }

                        }
                        else if ( (LA579_6 == DOUBLE_QUOTED_TEXT))
                        {
                            switch ( LA(3) )
                            {
                            case COMMA_SYMBOL:
                            case INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            	{
                            		alt579=1;
                            	}
                                break;
                            case PARTITION_SYMBOL:
                            	{
                            		alt579=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 579;
                                EXCEPTION->state        = 34;


                                goto rulekey_cache_list_or_partsEx;

                            }

                        }
                        else if ( (((LA579_6 >= ACTION_SYMBOL) && (LA579_6 <= SHARE_SYMBOL)) || ((LA579_6 >= SLOW_SYMBOL) && (LA579_6 <= YEAR_SYMBOL))))
                        {
                            switch ( LA(3) )
                            {
                            case COMMA_SYMBOL:
                            case INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            	{
                            		alt579=1;
                            	}
                                break;
                            case PARTITION_SYMBOL:
                            	{
                            		alt579=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 579;
                                EXCEPTION->state        = 35;


                                goto rulekey_cache_list_or_partsEx;

                            }

                        }
                        else if ( (((LA579_6 >= ACCOUNT_SYMBOL) && (LA579_6 <= XA_SYMBOL)) || LA579_6 == SHUTDOWN_SYMBOL))
                        {
                            switch ( LA(3) )
                            {
                            case COMMA_SYMBOL:
                            case INDEX_SYMBOL:
                            case IN_SYMBOL:
                            case KEY_SYMBOL:
                            	{
                            		alt579=1;
                            	}
                                break;
                            case PARTITION_SYMBOL:
                            	{
                            		alt579=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 579;
                                EXCEPTION->state        = 36;


                                goto rulekey_cache_list_or_partsEx;

                            }

                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 579;
                            EXCEPTION->state        = 6;


                            goto rulekey_cache_list_or_partsEx;

                        }
                    }
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 579;
                    EXCEPTION->state        = 0;


                    goto rulekey_cache_list_or_partsEx;

                }
            }
            switch (alt579)
            {
        	case 1:
        	    // MySQL.g:1959:2: key_cache_list
        	    {
        	        FOLLOWPUSH(FOLLOW_key_cache_list_in_key_cache_list_or_parts9829);
        	        key_cache_list1857=key_cache_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekey_cache_list_or_partsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) { CREATE_stream_key_cache_list; stream_key_cache_list->add(stream_key_cache_list, key_cache_list1857.tree, NULL); }

        	        /* AST REWRITE
        	         * elements          : key_cache_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;
        	        	// 1959:17: -> ^( KEY_CACHE_LIST_TOKEN key_cache_list )
        	        	{
        	        	    // MySQL.g:1959:20: ^( KEY_CACHE_LIST_TOKEN key_cache_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, KEY_CACHE_LIST_TOKEN, (pANTLR3_UINT8)"KEY_CACHE_LIST_TOKEN")
        	        	        , root_1));

        	        	        ADAPTOR->addChild(ADAPTOR, root_1, stream_key_cache_list == NULL ? NULL : stream_key_cache_list->nextTree(stream_key_cache_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;
        	case 2:
        	    // MySQL.g:1960:4: assign_to_keycache_partition
        	    {
        	        FOLLOWPUSH(FOLLOW_assign_to_keycache_partition_in_key_cache_list_or_parts9842);
        	        assign_to_keycache_partition1858=assign_to_keycache_partition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekey_cache_list_or_partsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) { CREATE_stream_assign_to_keycache_partition; stream_assign_to_keycache_partition->add(stream_assign_to_keycache_partition, assign_to_keycache_partition1858.tree, NULL); }

        	        /* AST REWRITE
        	         * elements          : assign_to_keycache_partition
        	         * 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;
        	        	// 1960:33: -> ^( KEY_CACHE_PARTITION_TOKEN assign_to_keycache_partition )
        	        	{
        	        	    // MySQL.g:1960:36: ^( KEY_CACHE_PARTITION_TOKEN assign_to_keycache_partition )
        	        	    {
        	        	        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, KEY_CACHE_PARTITION_TOKEN, (pANTLR3_UINT8)"KEY_CACHE_PARTITION_TOKEN")
        	        	        , root_1));

        	        	        ADAPTOR->addChild(ADAPTOR, root_1, stream_assign_to_keycache_partition == NULL ? NULL : stream_assign_to_keycache_partition->nextTree(stream_assign_to_keycache_partition));

        	        	        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 rulekey_cache_list_or_partsEx; /* Prevent compiler warnings */
    rulekey_cache_list_or_partsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	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_assign_to_keycache_partition != NULL) stream_assign_to_keycache_partition->free(stream_assign_to_keycache_partition);
        if (stream_key_cache_list != NULL) stream_key_cache_list->free(stream_key_cache_list);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end key_cache_list_or_parts */

/**
 * $ANTLR start key_cache_list
 * MySQL.g:1963:1: key_cache_list : assign_to_keycache ( COMMA_SYMBOL assign_to_keycache )* ;
 */
static MySQLParser_key_cache_list_return
key_cache_list(pMySQLParser ctx)
{
    MySQLParser_key_cache_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1860;
    MySQLParser_assign_to_keycache_return assign_to_keycache1859;
    #undef	RETURN_TYPE_assign_to_keycache1859
    #define	RETURN_TYPE_assign_to_keycache1859 MySQLParser_assign_to_keycache_return

    MySQLParser_assign_to_keycache_return assign_to_keycache1861;
    #undef	RETURN_TYPE_assign_to_keycache1861
    #define	RETURN_TYPE_assign_to_keycache1861 MySQLParser_assign_to_keycache_return

    pANTLR3_BASE_TREE COMMA_SYMBOL1860_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL1860       = NULL;
    assign_to_keycache1859.tree = NULL;

    assign_to_keycache1861.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL1860_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1963:15: ( assign_to_keycache ( COMMA_SYMBOL assign_to_keycache )* )
        // MySQL.g:1964:2: assign_to_keycache ( COMMA_SYMBOL assign_to_keycache )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_assign_to_keycache_in_key_cache_list9859);
            assign_to_keycache1859=assign_to_keycache(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulekey_cache_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, assign_to_keycache1859.tree);

            // MySQL.g:1964:21: ( COMMA_SYMBOL assign_to_keycache )*

            for (;;)
            {
                int alt580=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt580=1;
                	}
                    break;

                }

                switch (alt580)
                {
            	case 1:
            	    // MySQL.g:1964:22: COMMA_SYMBOL assign_to_keycache
            	    {
            	        COMMA_SYMBOL1860 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_key_cache_list9862);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulekey_cache_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL1860_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1860));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1860_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_assign_to_keycache_in_key_cache_list9864);
            	        assign_to_keycache1861=assign_to_keycache(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulekey_cache_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, assign_to_keycache1861.tree);

            	    }
            	    break;

            	default:
            	    goto loop580;	/* break out of the loop */
            	    break;
                }
            }
            loop580: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulekey_cache_listEx; /* Prevent compiler warnings */
    rulekey_cache_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 key_cache_list */

/**
 * $ANTLR start assign_to_keycache
 * MySQL.g:1967:1: assign_to_keycache : table_ref ( cache_keys_spec )? ;
 */
static MySQLParser_assign_to_keycache_return
assign_to_keycache(pMySQLParser ctx)
{
    MySQLParser_assign_to_keycache_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_table_ref_return table_ref1862;
    #undef	RETURN_TYPE_table_ref1862
    #define	RETURN_TYPE_table_ref1862 MySQLParser_table_ref_return

    MySQLParser_cache_keys_spec_return cache_keys_spec1863;
    #undef	RETURN_TYPE_cache_keys_spec1863
    #define	RETURN_TYPE_cache_keys_spec1863 MySQLParser_cache_keys_spec_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    table_ref1862.tree = NULL;

    cache_keys_spec1863.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:1967:19: ( table_ref ( cache_keys_spec )? )
        // MySQL.g:1968:2: table_ref ( cache_keys_spec )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_ref_in_assign_to_keycache9875);
            table_ref1862=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycacheEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1862.tree);

            // MySQL.g:1968:12: ( cache_keys_spec )?
            {
                int alt581=2;
                switch ( LA(1) )
                {
                    case INDEX_SYMBOL:
                    case KEY_SYMBOL:
                    	{
                    		alt581=1;
                    	}
                        break;
                }

                switch (alt581)
                {
            	case 1:
            	    // MySQL.g:1968:12: cache_keys_spec
            	    {
            	        FOLLOWPUSH(FOLLOW_cache_keys_spec_in_assign_to_keycache9877);
            	        cache_keys_spec1863=cache_keys_spec(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleassign_to_keycacheEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cache_keys_spec1863.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleassign_to_keycacheEx; /* Prevent compiler warnings */
    ruleassign_to_keycacheEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end assign_to_keycache */

/**
 * $ANTLR start assign_to_keycache_partition
 * MySQL.g:1971:1: assign_to_keycache_partition : table_ref PARTITION_SYMBOL OPEN_PAR_SYMBOL ( ALL_SYMBOL | identifier_list ) CLOSE_PAR_SYMBOL ( cache_keys_spec )? ;
 */
static MySQLParser_assign_to_keycache_partition_return
assign_to_keycache_partition(pMySQLParser ctx)
{
    MySQLParser_assign_to_keycache_partition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL1865;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1866;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1867;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1869;
    MySQLParser_table_ref_return table_ref1864;
    #undef	RETURN_TYPE_table_ref1864
    #define	RETURN_TYPE_table_ref1864 MySQLParser_table_ref_return

    MySQLParser_identifier_list_return identifier_list1868;
    #undef	RETURN_TYPE_identifier_list1868
    #define	RETURN_TYPE_identifier_list1868 MySQLParser_identifier_list_return

    MySQLParser_cache_keys_spec_return cache_keys_spec1870;
    #undef	RETURN_TYPE_cache_keys_spec1870
    #define	RETURN_TYPE_cache_keys_spec1870 MySQLParser_cache_keys_spec_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL1865_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1866_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1867_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1869_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL1865       = NULL;
    OPEN_PAR_SYMBOL1866       = NULL;
    ALL_SYMBOL1867       = NULL;
    CLOSE_PAR_SYMBOL1869       = NULL;
    table_ref1864.tree = NULL;

    identifier_list1868.tree = NULL;

    cache_keys_spec1870.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL1865_tree   = NULL;
    OPEN_PAR_SYMBOL1866_tree   = NULL;
    ALL_SYMBOL1867_tree   = NULL;
    CLOSE_PAR_SYMBOL1869_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1971:29: ( table_ref PARTITION_SYMBOL OPEN_PAR_SYMBOL ( ALL_SYMBOL | identifier_list ) CLOSE_PAR_SYMBOL ( cache_keys_spec )? )
        // MySQL.g:1972:2: table_ref PARTITION_SYMBOL OPEN_PAR_SYMBOL ( ALL_SYMBOL | identifier_list ) CLOSE_PAR_SYMBOL ( cache_keys_spec )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_ref_in_assign_to_keycache_partition9887);
            table_ref1864=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycache_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1864.tree);

            PARTITION_SYMBOL1865 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_assign_to_keycache_partition9889);
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycache_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL1865_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL1865));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL1865_tree);
            }

            OPEN_PAR_SYMBOL1866 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_assign_to_keycache_partition9891);
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycache_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL1866_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1866));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1866_tree);
            }

            // MySQL.g:1972:45: ( ALL_SYMBOL | identifier_list )
            {
                int alt582=2;
                {
                    int LA582_0 = LA(1);
                    if ( (LA582_0 == ALL_SYMBOL))
                    {
                        alt582=1;
                    }
                    else if ( (((LA582_0 >= ACCOUNT_SYMBOL) && (LA582_0 <= YEAR_SYMBOL)) || LA582_0 == BACK_TICK_QUOTED_ID || LA582_0 == DOUBLE_QUOTED_TEXT || LA582_0 == IDENTIFIER))
                    {
                        alt582=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 582;
                        EXCEPTION->state        = 0;


                        goto ruleassign_to_keycache_partitionEx;

                    }
                }
                switch (alt582)
                {
            	case 1:
            	    // MySQL.g:1972:46: ALL_SYMBOL
            	    {
            	        ALL_SYMBOL1867 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_assign_to_keycache_partition9894);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleassign_to_keycache_partitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ALL_SYMBOL1867_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1867));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1867_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:1972:59: identifier_list
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_in_assign_to_keycache_partition9898);
            	        identifier_list1868=identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleassign_to_keycache_partitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1868.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL1869 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_assign_to_keycache_partition9901);
            if  (HASEXCEPTION())
            {
                goto ruleassign_to_keycache_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL1869_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1869));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1869_tree);
            }

            // MySQL.g:1972:93: ( cache_keys_spec )?
            {
                int alt583=2;
                switch ( LA(1) )
                {
                    case INDEX_SYMBOL:
                    case KEY_SYMBOL:
                    	{
                    		alt583=1;
                    	}
                        break;
                }

                switch (alt583)
                {
            	case 1:
            	    // MySQL.g:1972:93: cache_keys_spec
            	    {
            	        FOLLOWPUSH(FOLLOW_cache_keys_spec_in_assign_to_keycache_partition9903);
            	        cache_keys_spec1870=cache_keys_spec(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleassign_to_keycache_partitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cache_keys_spec1870.tree);

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleassign_to_keycache_partitionEx; /* Prevent compiler warnings */
    ruleassign_to_keycache_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 assign_to_keycache_partition */

/**
 * $ANTLR start cache_keys_spec
 * MySQL.g:1975:1: cache_keys_spec : ( KEY_SYMBOL | INDEX_SYMBOL ) OPEN_PAR_SYMBOL ( key_usage_element ( COMMA_SYMBOL key_usage_element )* )? CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_cache_keys_spec_return
cache_keys_spec(pMySQLParser ctx)
{
    MySQLParser_cache_keys_spec_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set1871;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1872;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL1874;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1876;
    MySQLParser_key_usage_element_return key_usage_element1873;
    #undef	RETURN_TYPE_key_usage_element1873
    #define	RETURN_TYPE_key_usage_element1873 MySQLParser_key_usage_element_return

    MySQLParser_key_usage_element_return key_usage_element1875;
    #undef	RETURN_TYPE_key_usage_element1875
    #define	RETURN_TYPE_key_usage_element1875 MySQLParser_key_usage_element_return

    pANTLR3_BASE_TREE set1871_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1872_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL1874_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1876_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1871       = NULL;
    OPEN_PAR_SYMBOL1872       = NULL;
    COMMA_SYMBOL1874       = NULL;
    CLOSE_PAR_SYMBOL1876       = NULL;
    key_usage_element1873.tree = NULL;

    key_usage_element1875.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1871_tree   = NULL;
    OPEN_PAR_SYMBOL1872_tree   = NULL;
    COMMA_SYMBOL1874_tree   = NULL;
    CLOSE_PAR_SYMBOL1876_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1975:16: ( ( KEY_SYMBOL | INDEX_SYMBOL ) OPEN_PAR_SYMBOL ( key_usage_element ( COMMA_SYMBOL key_usage_element )* )? CLOSE_PAR_SYMBOL )
        // MySQL.g:1976:2: ( KEY_SYMBOL | INDEX_SYMBOL ) OPEN_PAR_SYMBOL ( key_usage_element ( COMMA_SYMBOL key_usage_element )* )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1871=(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, set1871))
                );
                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 rulecache_keys_specEx;
            }


            OPEN_PAR_SYMBOL1872 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_cache_keys_spec9921);
            if  (HASEXCEPTION())
            {
                goto rulecache_keys_specEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL1872_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1872));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1872_tree);
            }

            // MySQL.g:1976:46: ( key_usage_element ( COMMA_SYMBOL key_usage_element )* )?
            {
                int alt585=2;
                {
                    int LA585_0 = LA(1);
                    if ( (((LA585_0 >= ACCOUNT_SYMBOL) && (LA585_0 <= YEAR_SYMBOL)) || LA585_0 == BACK_TICK_QUOTED_ID || LA585_0 == DOUBLE_QUOTED_TEXT || LA585_0 == IDENTIFIER || LA585_0 == PRIMARY_SYMBOL))
                    {
                        alt585=1;
                    }
                }
                switch (alt585)
                {
            	case 1:
            	    // MySQL.g:1976:47: key_usage_element ( COMMA_SYMBOL key_usage_element )*
            	    {
            	        FOLLOWPUSH(FOLLOW_key_usage_element_in_cache_keys_spec9924);
            	        key_usage_element1873=key_usage_element(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecache_keys_specEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_usage_element1873.tree);

            	        // MySQL.g:1976:65: ( COMMA_SYMBOL key_usage_element )*

            	        for (;;)
            	        {
            	            int alt584=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt584=1;
            	            	}
            	                break;

            	            }

            	            switch (alt584)
            	            {
            	        	case 1:
            	        	    // MySQL.g:1976:66: COMMA_SYMBOL key_usage_element
            	        	    {
            	        	        COMMA_SYMBOL1874 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_cache_keys_spec9927);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecache_keys_specEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL1874_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL1874));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL1874_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_key_usage_element_in_cache_keys_spec9929);
            	        	        key_usage_element1875=key_usage_element(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecache_keys_specEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, key_usage_element1875.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop584;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop584: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL1876 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_cache_keys_spec9935);
            if  (HASEXCEPTION())
            {
                goto rulecache_keys_specEx;
            }
            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);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecache_keys_specEx; /* Prevent compiler warnings */
    rulecache_keys_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 cache_keys_spec */

/**
 * $ANTLR start key_usage_element
 * MySQL.g:1979:1: key_usage_element : ( identifier | PRIMARY_SYMBOL );
 */
static MySQLParser_key_usage_element_return
key_usage_element(pMySQLParser ctx)
{
    MySQLParser_key_usage_element_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL1878;
    MySQLParser_identifier_return identifier1877;
    #undef	RETURN_TYPE_identifier1877
    #define	RETURN_TYPE_identifier1877 MySQLParser_identifier_return

    pANTLR3_BASE_TREE PRIMARY_SYMBOL1878_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PRIMARY_SYMBOL1878       = NULL;
    identifier1877.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PRIMARY_SYMBOL1878_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1979:18: ( identifier | PRIMARY_SYMBOL )

            ANTLR3_UINT32 alt586;

            alt586=2;

            {
                int LA586_0 = LA(1);
                if ( (((LA586_0 >= ACCOUNT_SYMBOL) && (LA586_0 <= YEAR_SYMBOL)) || LA586_0 == BACK_TICK_QUOTED_ID || LA586_0 == DOUBLE_QUOTED_TEXT || LA586_0 == IDENTIFIER))
                {
                    alt586=1;
                }
                else if ( (LA586_0 == PRIMARY_SYMBOL))
                {
                    alt586=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 586;
                    EXCEPTION->state        = 0;


                    goto rulekey_usage_elementEx;

                }
            }
            switch (alt586)
            {
        	case 1:
        	    // MySQL.g:1980:2: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_key_usage_element9944);
        	        identifier1877=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekey_usage_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1877.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1981:4: PRIMARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PRIMARY_SYMBOL1878 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_key_usage_element9949);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekey_usage_elementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PRIMARY_SYMBOL1878_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL1878));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL1878_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulekey_usage_elementEx; /* Prevent compiler warnings */
    rulekey_usage_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 key_usage_element */

/**
 * $ANTLR start flush_option
 * MySQL.g:1984:1: flush_option : ( DES_KEY_FILE_SYMBOL | HOSTS_SYMBOL | ( log_type )? LOGS_SYMBOL | RELAY_SYMBOL LOGS_SYMBOL ( channel )? | PRIVILEGES_SYMBOL | QUERY_SYMBOL CACHE_SYMBOL | STATUS_SYMBOL | USER_RESOURCES_SYMBOL |{...}? OPTIMIZER_COSTS_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_SYMBOL1879;
    pANTLR3_COMMON_TOKEN    HOSTS_SYMBOL1880;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1882;
    pANTLR3_COMMON_TOKEN    RELAY_SYMBOL1883;
    pANTLR3_COMMON_TOKEN    LOGS_SYMBOL1884;
    pANTLR3_COMMON_TOKEN    PRIVILEGES_SYMBOL1886;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1887;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1888;
    pANTLR3_COMMON_TOKEN    STATUS_SYMBOL1889;
    pANTLR3_COMMON_TOKEN    USER_RESOURCES_SYMBOL1890;
    pANTLR3_COMMON_TOKEN    OPTIMIZER_COSTS_SYMBOL1891;
    MySQLParser_log_type_return log_type1881;
    #undef	RETURN_TYPE_log_type1881
    #define	RETURN_TYPE_log_type1881 MySQLParser_log_type_return

    MySQLParser_channel_return channel1885;
    #undef	RETURN_TYPE_channel1885
    #define	RETURN_TYPE_channel1885 MySQLParser_channel_return

    pANTLR3_BASE_TREE DES_KEY_FILE_SYMBOL1879_tree;
    pANTLR3_BASE_TREE HOSTS_SYMBOL1880_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1882_tree;
    pANTLR3_BASE_TREE RELAY_SYMBOL1883_tree;
    pANTLR3_BASE_TREE LOGS_SYMBOL1884_tree;
    pANTLR3_BASE_TREE PRIVILEGES_SYMBOL1886_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1887_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1888_tree;
    pANTLR3_BASE_TREE STATUS_SYMBOL1889_tree;
    pANTLR3_BASE_TREE USER_RESOURCES_SYMBOL1890_tree;
    pANTLR3_BASE_TREE OPTIMIZER_COSTS_SYMBOL1891_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DES_KEY_FILE_SYMBOL1879       = NULL;
    HOSTS_SYMBOL1880       = NULL;
    LOGS_SYMBOL1882       = NULL;
    RELAY_SYMBOL1883       = NULL;
    LOGS_SYMBOL1884       = NULL;
    PRIVILEGES_SYMBOL1886       = NULL;
    QUERY_SYMBOL1887       = NULL;
    CACHE_SYMBOL1888       = NULL;
    STATUS_SYMBOL1889       = NULL;
    USER_RESOURCES_SYMBOL1890       = NULL;
    OPTIMIZER_COSTS_SYMBOL1891       = NULL;
    log_type1881.tree = NULL;

    channel1885.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DES_KEY_FILE_SYMBOL1879_tree   = NULL;
    HOSTS_SYMBOL1880_tree   = NULL;
    LOGS_SYMBOL1882_tree   = NULL;
    RELAY_SYMBOL1883_tree   = NULL;
    LOGS_SYMBOL1884_tree   = NULL;
    PRIVILEGES_SYMBOL1886_tree   = NULL;
    QUERY_SYMBOL1887_tree   = NULL;
    CACHE_SYMBOL1888_tree   = NULL;
    STATUS_SYMBOL1889_tree   = NULL;
    USER_RESOURCES_SYMBOL1890_tree   = NULL;
    OPTIMIZER_COSTS_SYMBOL1891_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:1984:13: ( DES_KEY_FILE_SYMBOL | HOSTS_SYMBOL | ( log_type )? LOGS_SYMBOL | RELAY_SYMBOL LOGS_SYMBOL ( channel )? | PRIVILEGES_SYMBOL | QUERY_SYMBOL CACHE_SYMBOL | STATUS_SYMBOL | USER_RESOURCES_SYMBOL |{...}? OPTIMIZER_COSTS_SYMBOL )

            ANTLR3_UINT32 alt589;

            alt589=9;

            switch ( LA(1) )
            {
            case DES_KEY_FILE_SYMBOL:
            	{
            		alt589=1;
            	}
                break;
            case HOSTS_SYMBOL:
            	{
            		alt589=2;
            	}
                break;
            case ENGINE_SYMBOL:
            case ERROR_SYMBOL:
            case GENERAL_SYMBOL:
            case LOGS_SYMBOL:
            case SLOW_SYMBOL:
            case BINARY_SYMBOL:
            	{
            		alt589=3;
            	}
                break;
            case RELAY_SYMBOL:
            	{
            		alt589=4;
            	}
                break;
            case PRIVILEGES_SYMBOL:
            	{
            		alt589=5;
            	}
                break;
            case QUERY_SYMBOL:
            	{
            		alt589=6;
            	}
                break;
            case STATUS_SYMBOL:
            	{
            		alt589=7;
            	}
                break;
            case USER_RESOURCES_SYMBOL:
            	{
            		alt589=8;
            	}
                break;
            case OPTIMIZER_COSTS_SYMBOL:
            	{
            		alt589=9;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 589;
                EXCEPTION->state        = 0;


                goto ruleflush_optionEx;

            }

            switch (alt589)
            {
        	case 1:
        	    // MySQL.g:1985:2: DES_KEY_FILE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DES_KEY_FILE_SYMBOL1879 = (pANTLR3_COMMON_TOKEN) MATCHT(DES_KEY_FILE_SYMBOL, &FOLLOW_DES_KEY_FILE_SYMBOL_in_flush_option9958);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DES_KEY_FILE_SYMBOL1879_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DES_KEY_FILE_SYMBOL1879));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DES_KEY_FILE_SYMBOL1879_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:1986:4: HOSTS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOSTS_SYMBOL1880 = (pANTLR3_COMMON_TOKEN) MATCHT(HOSTS_SYMBOL, &FOLLOW_HOSTS_SYMBOL_in_flush_option9963);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOSTS_SYMBOL1880_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOSTS_SYMBOL1880));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOSTS_SYMBOL1880_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:1987:4: ( log_type )? LOGS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:1987:4: ( log_type )?
        	        {
        	            int alt587=2;
        	            switch ( LA(1) )
        	            {
        	                case ENGINE_SYMBOL:
        	                case ERROR_SYMBOL:
        	                case GENERAL_SYMBOL:
        	                case SLOW_SYMBOL:
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt587=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt587)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1987:4: log_type
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_log_type_in_flush_option9968);
        	        	        log_type1881=log_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleflush_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, log_type1881.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        LOGS_SYMBOL1882 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_flush_option9971);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOGS_SYMBOL1882_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1882));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1882_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:1988:4: RELAY_SYMBOL LOGS_SYMBOL ( channel )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RELAY_SYMBOL1883 = (pANTLR3_COMMON_TOKEN) MATCHT(RELAY_SYMBOL, &FOLLOW_RELAY_SYMBOL_in_flush_option9976);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RELAY_SYMBOL1883_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RELAY_SYMBOL1883));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RELAY_SYMBOL1883_tree);
        	        }

        	        LOGS_SYMBOL1884 = (pANTLR3_COMMON_TOKEN) MATCHT(LOGS_SYMBOL, &FOLLOW_LOGS_SYMBOL_in_flush_option9978);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOGS_SYMBOL1884_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOGS_SYMBOL1884));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOGS_SYMBOL1884_tree);
        	        }

        	        // MySQL.g:1988:29: ( channel )?
        	        {
        	            int alt588=2;
        	            {
        	                int LA588_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50706)) && (LA588_0 == FOR_SYMBOL))
        	                {
        	                    alt588=1;
        	                }
        	            }
        	            switch (alt588)
        	            {
        	        	case 1:
        	        	    // MySQL.g:1988:29: channel
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_channel_in_flush_option9980);
        	        	        channel1885=channel(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleflush_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1885.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:1989:4: PRIVILEGES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PRIVILEGES_SYMBOL1886 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIVILEGES_SYMBOL, &FOLLOW_PRIVILEGES_SYMBOL_in_flush_option9986);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PRIVILEGES_SYMBOL1886_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIVILEGES_SYMBOL1886));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIVILEGES_SYMBOL1886_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:1990:4: QUERY_SYMBOL CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUERY_SYMBOL1887 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_flush_option9991);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUERY_SYMBOL1887_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1887));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1887_tree);
        	        }

        	        CACHE_SYMBOL1888 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_flush_option9993);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1888_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1888));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1888_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:1991:4: STATUS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STATUS_SYMBOL1889 = (pANTLR3_COMMON_TOKEN) MATCHT(STATUS_SYMBOL, &FOLLOW_STATUS_SYMBOL_in_flush_option9998);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STATUS_SYMBOL1889_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STATUS_SYMBOL1889));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STATUS_SYMBOL1889_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:1992:4: USER_RESOURCES_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_RESOURCES_SYMBOL1890 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_RESOURCES_SYMBOL, &FOLLOW_USER_RESOURCES_SYMBOL_in_flush_option10003);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_RESOURCES_SYMBOL1890_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_RESOURCES_SYMBOL1890));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_RESOURCES_SYMBOL1890_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:1993:4: {...}? OPTIMIZER_COSTS_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50706)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50706";
        	                EXCEPTION->ruleName	 = (void *)"flush_option";


        	        }

        	        OPTIMIZER_COSTS_SYMBOL1891 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIMIZER_COSTS_SYMBOL, &FOLLOW_OPTIMIZER_COSTS_SYMBOL_in_flush_option10010);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPTIMIZER_COSTS_SYMBOL1891_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIMIZER_COSTS_SYMBOL1891));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTIMIZER_COSTS_SYMBOL1891_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:1996:1: log_type : ( BINARY_SYMBOL | ENGINE_SYMBOL | ERROR_SYMBOL | GENERAL_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    set1892;

    pANTLR3_BASE_TREE set1892_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1892       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1892_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:1996:9: ( BINARY_SYMBOL | ENGINE_SYMBOL | ERROR_SYMBOL | GENERAL_SYMBOL | SLOW_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1892=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == ENGINE_SYMBOL || LA(1) == ERROR_SYMBOL || LA(1) == GENERAL_SYMBOL || LA(1) == SLOW_SYMBOL || LA(1) == BINARY_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1892))
                );
                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:2004: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    set1893;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1894;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1895;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1896;
    MySQLParser_identifier_list_return identifier_list1897;
    #undef	RETURN_TYPE_identifier_list1897
    #define	RETURN_TYPE_identifier_list1897 MySQLParser_identifier_list_return

    MySQLParser_flush_tables_options_return flush_tables_options1898;
    #undef	RETURN_TYPE_flush_tables_options1898
    #define	RETURN_TYPE_flush_tables_options1898 MySQLParser_flush_tables_options_return

    pANTLR3_BASE_TREE set1893_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1894_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1895_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1896_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1893       = NULL;
    WITH_SYMBOL1894       = NULL;
    READ_SYMBOL1895       = NULL;
    LOCK_SYMBOL1896       = NULL;
    identifier_list1897.tree = NULL;

    flush_tables_options1898.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1893_tree   = NULL;
    WITH_SYMBOL1894_tree   = NULL;
    READ_SYMBOL1895_tree   = NULL;
    LOCK_SYMBOL1896_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2004:13: ( ( TABLES_SYMBOL | TABLE_SYMBOL ) ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )? )
        // MySQL.g:2005:2: ( TABLES_SYMBOL | TABLE_SYMBOL ) ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set1893=(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, set1893))
                );
                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:2006:2: ( WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL | identifier_list ( flush_tables_options )? )?
            {
                int alt591=3;
                {
                    int LA591_0 = LA(1);
                    if ( (LA591_0 == WITH_SYMBOL))
                    {
                        alt591=1;
                    }
                    else if ( (((LA591_0 >= ACCOUNT_SYMBOL) && (LA591_0 <= YEAR_SYMBOL)) || LA591_0 == BACK_TICK_QUOTED_ID || LA591_0 == DOUBLE_QUOTED_TEXT || LA591_0 == IDENTIFIER))
                    {
                        alt591=2;
                    }
                }
                switch (alt591)
                {
            	case 1:
            	    // MySQL.g:2007:3: WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL
            	    {
            	        WITH_SYMBOL1894 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_flush_tables10061);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        WITH_SYMBOL1894_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1894));
            	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1894_tree);
            	        }

            	        READ_SYMBOL1895 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_flush_tables10063);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        READ_SYMBOL1895_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1895));
            	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1895_tree);
            	        }

            	        LOCK_SYMBOL1896 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_flush_tables10065);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LOCK_SYMBOL1896_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1896));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1896_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2008:5: identifier_list ( flush_tables_options )?
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_list_in_flush_tables10071);
            	        identifier_list1897=identifier_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleflush_tablesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1897.tree);

            	        // MySQL.g:2008:21: ( flush_tables_options )?
            	        {
            	            int alt590=2;
            	            switch ( LA(1) )
            	            {
            	                case FOR_SYMBOL:
            	                case WITH_SYMBOL:
            	                	{
            	                		alt590=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt590)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2008:21: flush_tables_options
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_flush_tables_options_in_flush_tables10073);
            	        	        flush_tables_options1898=flush_tables_options(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleflush_tablesEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, flush_tables_options1898.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:2012: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_SYMBOL1899;
    pANTLR3_COMMON_TOKEN    EXPORT_SYMBOL1900;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL1901;
    pANTLR3_COMMON_TOKEN    READ_SYMBOL1902;
    pANTLR3_COMMON_TOKEN    LOCK_SYMBOL1903;

    pANTLR3_BASE_TREE FOR_SYMBOL1899_tree;
    pANTLR3_BASE_TREE EXPORT_SYMBOL1900_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL1901_tree;
    pANTLR3_BASE_TREE READ_SYMBOL1902_tree;
    pANTLR3_BASE_TREE LOCK_SYMBOL1903_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1899       = NULL;
    EXPORT_SYMBOL1900       = NULL;
    WITH_SYMBOL1901       = NULL;
    READ_SYMBOL1902       = NULL;
    LOCK_SYMBOL1903       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1899_tree   = NULL;
    EXPORT_SYMBOL1900_tree   = NULL;
    WITH_SYMBOL1901_tree   = NULL;
    READ_SYMBOL1902_tree   = NULL;
    LOCK_SYMBOL1903_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2012:21: ({...}? FOR_SYMBOL EXPORT_SYMBOL | WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL )

            ANTLR3_UINT32 alt592;

            alt592=2;

            switch ( LA(1) )
            {
            case FOR_SYMBOL:
            	{
            		alt592=1;
            	}
                break;
            case WITH_SYMBOL:
            	{
            		alt592=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 592;
                EXCEPTION->state        = 0;


                goto ruleflush_tables_optionsEx;

            }

            switch (alt592)
            {
        	case 1:
        	    // MySQL.g:2013: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_SYMBOL1899 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_flush_tables_options10089);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1899_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1899));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1899_tree);
        	        }

        	        EXPORT_SYMBOL1900 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPORT_SYMBOL, &FOLLOW_EXPORT_SYMBOL_in_flush_tables_options10091);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXPORT_SYMBOL1900_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPORT_SYMBOL1900));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXPORT_SYMBOL1900_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2014:4: WITH_SYMBOL READ_SYMBOL LOCK_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL1901 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_flush_tables_options10096);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL1901_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL1901));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL1901_tree);
        	        }

        	        READ_SYMBOL1902 = (pANTLR3_COMMON_TOKEN) MATCHT(READ_SYMBOL, &FOLLOW_READ_SYMBOL_in_flush_tables_options10098);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        READ_SYMBOL1902_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, READ_SYMBOL1902));
        	        ADAPTOR->addChild(ADAPTOR, root_0, READ_SYMBOL1902_tree);
        	        }

        	        LOCK_SYMBOL1903 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCK_SYMBOL, &FOLLOW_LOCK_SYMBOL_in_flush_tables_options10100);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleflush_tables_optionsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCK_SYMBOL1903_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCK_SYMBOL1903));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCK_SYMBOL1903_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:2017:1: load_table_index_list : table_ref ( 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    set1906;
    pANTLR3_COMMON_TOKEN    IGNORE_SYMBOL1908;
    pANTLR3_COMMON_TOKEN    LEAVES_SYMBOL1909;
    MySQLParser_table_ref_return table_ref1904;
    #undef	RETURN_TYPE_table_ref1904
    #define	RETURN_TYPE_table_ref1904 MySQLParser_table_ref_return

    MySQLParser_load_table_index_partion_return load_table_index_partion1905;
    #undef	RETURN_TYPE_load_table_index_partion1905
    #define	RETURN_TYPE_load_table_index_partion1905 MySQLParser_load_table_index_partion_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses1907;
    #undef	RETURN_TYPE_identifier_list_with_parentheses1907
    #define	RETURN_TYPE_identifier_list_with_parentheses1907 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE set1906_tree;
    pANTLR3_BASE_TREE IGNORE_SYMBOL1908_tree;
    pANTLR3_BASE_TREE LEAVES_SYMBOL1909_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1906       = NULL;
    IGNORE_SYMBOL1908       = NULL;
    LEAVES_SYMBOL1909       = NULL;
    table_ref1904.tree = NULL;

    load_table_index_partion1905.tree = NULL;

    identifier_list_with_parentheses1907.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1906_tree   = NULL;
    IGNORE_SYMBOL1908_tree   = NULL;
    LEAVES_SYMBOL1909_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2017:22: ( table_ref ( load_table_index_partion )? ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )? ( IGNORE_SYMBOL LEAVES_SYMBOL )? )
        // MySQL.g:2018:2: table_ref ( 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_table_ref_in_load_table_index_list10109);
            table_ref1904=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleload_table_index_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1904.tree);

            // MySQL.g:2018:12: ( load_table_index_partion )?
            {
                int alt593=2;
                {
                    int LA593_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50500)) && (LA593_0 == PARTITION_SYMBOL))
                    {
                        alt593=1;
                    }
                }
                switch (alt593)
                {
            	case 1:
            	    // MySQL.g:2018:12: load_table_index_partion
            	    {
            	        FOLLOWPUSH(FOLLOW_load_table_index_partion_in_load_table_index_list10111);
            	        load_table_index_partion1905=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_partion1905.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2019:3: ( ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses )?
            {
                int alt595=2;
                switch ( LA(1) )
                {
                    case INDEX_SYMBOL:
                    case KEY_SYMBOL:
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt595=1;
                    	}
                        break;
                }

                switch (alt595)
                {
            	case 1:
            	    // MySQL.g:2019:4: ( INDEX_SYMBOL | KEY_SYMBOL )? identifier_list_with_parentheses
            	    {
            	        // MySQL.g:2019:4: ( INDEX_SYMBOL | KEY_SYMBOL )?
            	        {
            	            int alt594=2;
            	            switch ( LA(1) )
            	            {
            	                case INDEX_SYMBOL:
            	                case KEY_SYMBOL:
            	                	{
            	                		alt594=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt594)
            	            {
            	        	case 1:
            	        	    // MySQL.g:
            	        	    {
            	        	        set1906=(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, set1906))
            	        	            );
            	        	            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_list10126);
            	        identifier_list_with_parentheses1907=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_parentheses1907.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2019:68: ( IGNORE_SYMBOL LEAVES_SYMBOL )?
            {
                int alt596=2;
                switch ( LA(1) )
                {
                    case IGNORE_SYMBOL:
                    	{
                    		alt596=1;
                    	}
                        break;
                }

                switch (alt596)
                {
            	case 1:
            	    // MySQL.g:2019:69: IGNORE_SYMBOL LEAVES_SYMBOL
            	    {
            	        IGNORE_SYMBOL1908 = (pANTLR3_COMMON_TOKEN) MATCHT(IGNORE_SYMBOL, &FOLLOW_IGNORE_SYMBOL_in_load_table_index_list10131);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_table_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IGNORE_SYMBOL1908_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IGNORE_SYMBOL1908));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IGNORE_SYMBOL1908_tree);
            	        }

            	        LEAVES_SYMBOL1909 = (pANTLR3_COMMON_TOKEN) MATCHT(LEAVES_SYMBOL, &FOLLOW_LEAVES_SYMBOL_in_load_table_index_list10133);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleload_table_index_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LEAVES_SYMBOL1909_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEAVES_SYMBOL1909));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LEAVES_SYMBOL1909_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:2022: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_SYMBOL1910;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL1911;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1913;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL1914;
    MySQLParser_identifier_list_return identifier_list1912;
    #undef	RETURN_TYPE_identifier_list1912
    #define	RETURN_TYPE_identifier_list1912 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL1910_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL1911_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1913_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL1914_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL1910       = NULL;
    OPEN_PAR_SYMBOL1911       = NULL;
    ALL_SYMBOL1913       = NULL;
    CLOSE_PAR_SYMBOL1914       = NULL;
    identifier_list1912.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL1910_tree   = NULL;
    OPEN_PAR_SYMBOL1911_tree   = NULL;
    ALL_SYMBOL1913_tree   = NULL;
    CLOSE_PAR_SYMBOL1914_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2022:25: ({...}? => ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL ) )
        // MySQL.g:2023: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:2023:32: ( PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL )
            // MySQL.g:2023:33: PARTITION_SYMBOL OPEN_PAR_SYMBOL ( identifier_list | ALL_SYMBOL ) CLOSE_PAR_SYMBOL
            {
                PARTITION_SYMBOL1910 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_load_table_index_partion10149);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                PARTITION_SYMBOL1910_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL1910));
                ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL1910_tree);
                }

                OPEN_PAR_SYMBOL1911 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_load_table_index_partion10151);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                OPEN_PAR_SYMBOL1911_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL1911));
                ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL1911_tree);
                }

                // MySQL.g:2023:66: ( identifier_list | ALL_SYMBOL )
                {
                    int alt597=2;
                    {
                        int LA597_0 = LA(1);
                        if ( (((LA597_0 >= ACCOUNT_SYMBOL) && (LA597_0 <= YEAR_SYMBOL)) || LA597_0 == BACK_TICK_QUOTED_ID || LA597_0 == DOUBLE_QUOTED_TEXT || LA597_0 == IDENTIFIER))
                        {
                            alt597=1;
                        }
                        else if ( (LA597_0 == ALL_SYMBOL))
                        {
                            alt597=2;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 597;
                            EXCEPTION->state        = 0;


                            goto ruleload_table_index_partionEx;

                        }
                    }
                    switch (alt597)
                    {
                	case 1:
                	    // MySQL.g:2023:67: identifier_list
                	    {
                	        FOLLOWPUSH(FOLLOW_identifier_list_in_load_table_index_partion10154);
                	        identifier_list1912=identifier_list(ctx);

                	        FOLLOWPOP();
                	        if  (HASEXCEPTION())
                	        {
                	            goto ruleload_table_index_partionEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list1912.tree);

                	    }
                	    break;
                	case 2:
                	    // MySQL.g:2023:85: ALL_SYMBOL
                	    {
                	        ALL_SYMBOL1913 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_load_table_index_partion10158);
                	        if  (HASEXCEPTION())
                	        {
                	            goto ruleload_table_index_partionEx;
                	        }
                	        if (HASFAILED())
                	        {
                	            return retval;
                	        }

                	        if ( BACKTRACKING==0 ) {
                	        ALL_SYMBOL1913_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1913));
                	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1913_tree);
                	        }

                	    }
                	    break;

                    }
                }

                CLOSE_PAR_SYMBOL1914 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_load_table_index_partion10161);
                if  (HASEXCEPTION())
                {
                    goto ruleload_table_index_partionEx;
                }
                if (HASFAILED())
                {
                    return retval;
                }

                if ( BACKTRACKING==0 ) {
                CLOSE_PAR_SYMBOL1914_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL1914));
                ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL1914_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:2026:1: reset_option : ( MASTER_SYMBOL | QUERY_SYMBOL CACHE_SYMBOL | SLAVE_SYMBOL ( ALL_SYMBOL )? ( channel )? );
 */
static MySQLParser_reset_option_return
reset_option(pMySQLParser ctx)
{
    MySQLParser_reset_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    MASTER_SYMBOL1915;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL1916;
    pANTLR3_COMMON_TOKEN    CACHE_SYMBOL1917;
    pANTLR3_COMMON_TOKEN    SLAVE_SYMBOL1918;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL1919;
    MySQLParser_channel_return channel1920;
    #undef	RETURN_TYPE_channel1920
    #define	RETURN_TYPE_channel1920 MySQLParser_channel_return

    pANTLR3_BASE_TREE MASTER_SYMBOL1915_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL1916_tree;
    pANTLR3_BASE_TREE CACHE_SYMBOL1917_tree;
    pANTLR3_BASE_TREE SLAVE_SYMBOL1918_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL1919_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MASTER_SYMBOL1915       = NULL;
    QUERY_SYMBOL1916       = NULL;
    CACHE_SYMBOL1917       = NULL;
    SLAVE_SYMBOL1918       = NULL;
    ALL_SYMBOL1919       = NULL;
    channel1920.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MASTER_SYMBOL1915_tree   = NULL;
    QUERY_SYMBOL1916_tree   = NULL;
    CACHE_SYMBOL1917_tree   = NULL;
    SLAVE_SYMBOL1918_tree   = NULL;
    ALL_SYMBOL1919_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2026:13: ( MASTER_SYMBOL | QUERY_SYMBOL CACHE_SYMBOL | SLAVE_SYMBOL ( ALL_SYMBOL )? ( channel )? )

            ANTLR3_UINT32 alt600;

            alt600=3;

            switch ( LA(1) )
            {
            case MASTER_SYMBOL:
            	{
            		alt600=1;
            	}
                break;
            case QUERY_SYMBOL:
            	{
            		alt600=2;
            	}
                break;
            case SLAVE_SYMBOL:
            	{
            		alt600=3;
            	}
                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 rulereset_optionEx;

            }

            switch (alt600)
            {
        	case 1:
        	    // MySQL.g:2027:2: MASTER_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MASTER_SYMBOL1915 = (pANTLR3_COMMON_TOKEN) MATCHT(MASTER_SYMBOL, &FOLLOW_MASTER_SYMBOL_in_reset_option10171);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MASTER_SYMBOL1915_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MASTER_SYMBOL1915));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MASTER_SYMBOL1915_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2028:4: QUERY_SYMBOL CACHE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUERY_SYMBOL1916 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_reset_option10176);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUERY_SYMBOL1916_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL1916));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL1916_tree);
        	        }

        	        CACHE_SYMBOL1917 = (pANTLR3_COMMON_TOKEN) MATCHT(CACHE_SYMBOL, &FOLLOW_CACHE_SYMBOL_in_reset_option10178);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CACHE_SYMBOL1917_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CACHE_SYMBOL1917));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CACHE_SYMBOL1917_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2029:4: SLAVE_SYMBOL ( ALL_SYMBOL )? ( channel )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SLAVE_SYMBOL1918 = (pANTLR3_COMMON_TOKEN) MATCHT(SLAVE_SYMBOL, &FOLLOW_SLAVE_SYMBOL_in_reset_option10183);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereset_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SLAVE_SYMBOL1918_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SLAVE_SYMBOL1918));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SLAVE_SYMBOL1918_tree);
        	        }

        	        // MySQL.g:2029:17: ( ALL_SYMBOL )?
        	        {
        	            int alt598=2;
        	            switch ( LA(1) )
        	            {
        	                case ALL_SYMBOL:
        	                	{
        	                		alt598=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt598)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2029:17: ALL_SYMBOL
        	        	    {
        	        	        ALL_SYMBOL1919 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_reset_option10185);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereset_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ALL_SYMBOL1919_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL1919));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL1919_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2029:29: ( channel )?
        	        {
        	            int alt599=2;
        	            {
        	                int LA599_0 = LA(1);
        	                if ( ((SERVER_VERSION >= 50706)) && (LA599_0 == FOR_SYMBOL))
        	                {
        	                    alt599=1;
        	                }
        	            }
        	            switch (alt599)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2029:29: channel
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_channel_in_reset_option10188);
        	        	        channel1920=channel(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereset_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, channel1920.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    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:2034:1: utility_statement : ( describe_command ( table_ref ( text_string | identifier )? | ( EXTENDED_SYMBOL |{...}? PARTITIONS_SYMBOL |{...}? FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement ) | HELP_SYMBOL ^ text_or_identifier | use_command );
 */
static MySQLParser_utility_statement_return
utility_statement(pMySQLParser ctx)
{
    MySQLParser_utility_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EXTENDED_SYMBOL1925;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL1926;
    pANTLR3_COMMON_TOKEN    FORMAT_SYMBOL1927;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR1928;
    pANTLR3_COMMON_TOKEN    HELP_SYMBOL1931;
    MySQLParser_describe_command_return describe_command1921;
    #undef	RETURN_TYPE_describe_command1921
    #define	RETURN_TYPE_describe_command1921 MySQLParser_describe_command_return

    MySQLParser_table_ref_return table_ref1922;
    #undef	RETURN_TYPE_table_ref1922
    #define	RETURN_TYPE_table_ref1922 MySQLParser_table_ref_return

    MySQLParser_text_string_return text_string1923;
    #undef	RETURN_TYPE_text_string1923
    #define	RETURN_TYPE_text_string1923 MySQLParser_text_string_return

    MySQLParser_identifier_return identifier1924;
    #undef	RETURN_TYPE_identifier1924
    #define	RETURN_TYPE_identifier1924 MySQLParser_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier1929;
    #undef	RETURN_TYPE_text_or_identifier1929
    #define	RETURN_TYPE_text_or_identifier1929 MySQLParser_text_or_identifier_return

    MySQLParser_explainable_statement_return explainable_statement1930;
    #undef	RETURN_TYPE_explainable_statement1930
    #define	RETURN_TYPE_explainable_statement1930 MySQLParser_explainable_statement_return

    MySQLParser_text_or_identifier_return text_or_identifier1932;
    #undef	RETURN_TYPE_text_or_identifier1932
    #define	RETURN_TYPE_text_or_identifier1932 MySQLParser_text_or_identifier_return

    MySQLParser_use_command_return use_command1933;
    #undef	RETURN_TYPE_use_command1933
    #define	RETURN_TYPE_use_command1933 MySQLParser_use_command_return

    pANTLR3_BASE_TREE EXTENDED_SYMBOL1925_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL1926_tree;
    pANTLR3_BASE_TREE FORMAT_SYMBOL1927_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR1928_tree;
    pANTLR3_BASE_TREE HELP_SYMBOL1931_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EXTENDED_SYMBOL1925       = NULL;
    PARTITIONS_SYMBOL1926       = NULL;
    FORMAT_SYMBOL1927       = NULL;
    EQUAL_OPERATOR1928       = NULL;
    HELP_SYMBOL1931       = NULL;
    describe_command1921.tree = NULL;

    table_ref1922.tree = NULL;

    text_string1923.tree = NULL;

    identifier1924.tree = NULL;

    text_or_identifier1929.tree = NULL;

    explainable_statement1930.tree = NULL;

    text_or_identifier1932.tree = NULL;

    use_command1933.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EXTENDED_SYMBOL1925_tree   = NULL;
    PARTITIONS_SYMBOL1926_tree   = NULL;
    FORMAT_SYMBOL1927_tree   = NULL;
    EQUAL_OPERATOR1928_tree   = NULL;
    HELP_SYMBOL1931_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2034:18: ( describe_command ( table_ref ( text_string | identifier )? | ( EXTENDED_SYMBOL |{...}? PARTITIONS_SYMBOL |{...}? FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement ) | HELP_SYMBOL ^ text_or_identifier | use_command )

            ANTLR3_UINT32 alt604;

            alt604=3;

            switch ( LA(1) )
            {
            case DESCRIBE_SYMBOL:
            case DESC_SYMBOL:
            	{
            		alt604=1;
            	}
                break;
            case HELP_SYMBOL:
            	{
            		alt604=2;
            	}
                break;
            case USE_SYMBOL:
            	{
            		alt604=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 604;
                EXCEPTION->state        = 0;


                goto ruleutility_statementEx;

            }

            switch (alt604)
            {
        	case 1:
        	    // MySQL.g:2035:2: describe_command ( table_ref ( text_string | 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_statement10200);
        	        describe_command1921=describe_command(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, describe_command1921.tree);

        	        // MySQL.g:2036:3: ( table_ref ( text_string | identifier )? | ( EXTENDED_SYMBOL |{...}? PARTITIONS_SYMBOL |{...}? FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement )
        	        {
        	            int alt603=2;
        	            {
        	                int LA603_0 = LA(1);
        	                if ( (((LA603_0 >= ACCOUNT_SYMBOL) && (LA603_0 <= FOLLOWS_SYMBOL)) || ((LA603_0 >= GROUP_REPLICATION_SYMBOL) && (LA603_0 <= EXPORT_SYMBOL)) || ((LA603_0 >= EXTENT_SIZE_SYMBOL) && (LA603_0 <= PARTITIONING_SYMBOL)) || ((LA603_0 >= PASSWORD_SYMBOL) && (LA603_0 <= YEAR_SYMBOL)) || LA603_0 == BACK_TICK_QUOTED_ID || LA603_0 == DOT_SYMBOL || LA603_0 == DOUBLE_QUOTED_TEXT || LA603_0 == IDENTIFIER))
        	                {
        	                    alt603=1;
        	                }
        	                else if ( (LA603_0 == EXTENDED_SYMBOL))
        	                {
        	                    {
        	                        int LA603_4 = LA(2);
        	                        if ( (LA603_4 == EOF || ((LA603_4 >= ACCOUNT_SYMBOL) && (LA603_4 <= YEAR_SYMBOL)) || LA603_4 == BACK_TICK_QUOTED_ID || LA603_4 == BIN_NUMBER || LA603_4 == DOT_SYMBOL || LA603_4 == DOUBLE_QUOTED_TEXT || LA603_4 == HEX_NUMBER || LA603_4 == IDENTIFIER || LA603_4 == SEMICOLON_SYMBOL || LA603_4 == SINGLE_QUOTED_TEXT))
        	                        {
        	                            alt603=1;
        	                        }
        	                        else if ( (LA603_4 == DELETE_SYMBOL || LA603_4 == FOR_SYMBOL || LA603_4 == INSERT_SYMBOL || LA603_4 == OPEN_PAR_SYMBOL || LA603_4 == REPLACE_SYMBOL || LA603_4 == SELECT_SYMBOL || LA603_4 == UPDATE_SYMBOL))
        	                        {
        	                            alt603=2;
        	                        }
        	                        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        = 4;


        	                            goto ruleutility_statementEx;

        	                        }
        	                    }
        	                }
        	                else if ( (LA603_0 == FORMAT_SYMBOL))
        	                {
        	                    {
        	                        int LA603_5 = LA(2);
        	                        if ( (LA603_5 == EQUAL_OPERATOR))
        	                        {
        	                            alt603=2;
        	                        }
        	                        else if ( (LA603_5 == EOF || ((LA603_5 >= ACCOUNT_SYMBOL) && (LA603_5 <= YEAR_SYMBOL)) || LA603_5 == BACK_TICK_QUOTED_ID || LA603_5 == BIN_NUMBER || LA603_5 == DOT_SYMBOL || LA603_5 == DOUBLE_QUOTED_TEXT || LA603_5 == HEX_NUMBER || LA603_5 == IDENTIFIER || LA603_5 == SEMICOLON_SYMBOL || LA603_5 == SINGLE_QUOTED_TEXT))
        	                        {
        	                            alt603=1;
        	                        }
        	                        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        = 5;


        	                            goto ruleutility_statementEx;

        	                        }
        	                    }
        	                }
        	                else if ( (LA603_0 == PARTITIONS_SYMBOL))
        	                {
        	                    {
        	                        int LA603_7 = LA(2);
        	                        if ( (LA603_7 == EOF || ((LA603_7 >= ACCOUNT_SYMBOL) && (LA603_7 <= YEAR_SYMBOL)) || LA603_7 == BACK_TICK_QUOTED_ID || LA603_7 == BIN_NUMBER || LA603_7 == DOT_SYMBOL || LA603_7 == DOUBLE_QUOTED_TEXT || LA603_7 == HEX_NUMBER || LA603_7 == IDENTIFIER || LA603_7 == SEMICOLON_SYMBOL || LA603_7 == SINGLE_QUOTED_TEXT))
        	                        {
        	                            alt603=1;
        	                        }
        	                        else if ( (LA603_7 == DELETE_SYMBOL || LA603_7 == FOR_SYMBOL || LA603_7 == INSERT_SYMBOL || LA603_7 == OPEN_PAR_SYMBOL || LA603_7 == REPLACE_SYMBOL || LA603_7 == SELECT_SYMBOL || LA603_7 == UPDATE_SYMBOL))
        	                        {
        	                            alt603=2;
        	                        }
        	                        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        = 7;


        	                            goto ruleutility_statementEx;

        	                        }
        	                    }
        	                }
        	                else if ( (LA603_0 == DELETE_SYMBOL || LA603_0 == FOR_SYMBOL || LA603_0 == INSERT_SYMBOL || LA603_0 == OPEN_PAR_SYMBOL || LA603_0 == REPLACE_SYMBOL || LA603_0 == SELECT_SYMBOL || LA603_0 == UPDATE_SYMBOL))
        	                {
        	                    alt603=2;
        	                }
        	                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 ruleutility_statementEx;

        	                }
        	            }
        	            switch (alt603)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2037:4: table_ref ( text_string | identifier )?
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_table_ref_in_utility_statement10209);
        	        	        table_ref1922=table_ref(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleutility_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref1922.tree);

        	        	        // MySQL.g:2037:14: ( text_string | identifier )?
        	        	        {
        	        	            int alt601=3;
        	        	            {
        	        	                int LA601_0 = LA(1);
        	        	                if ( (LA601_0 == BIN_NUMBER || LA601_0 == HEX_NUMBER || LA601_0 == SINGLE_QUOTED_TEXT))
        	        	                {
        	        	                    alt601=1;
        	        	                }
        	        	                else if ( (((LA601_0 >= ACCOUNT_SYMBOL) && (LA601_0 <= YEAR_SYMBOL)) || LA601_0 == BACK_TICK_QUOTED_ID || LA601_0 == DOUBLE_QUOTED_TEXT || LA601_0 == IDENTIFIER))
        	        	                {
        	        	                    alt601=2;
        	        	                }
        	        	            }
        	        	            switch (alt601)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2037:15: text_string
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_text_string_in_utility_statement10212);
        	        	        	        text_string1923=text_string(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string1923.tree);

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:2037:29: identifier
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_identifier_in_utility_statement10216);
        	        	        	        identifier1924=identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier1924.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2039:5: ( EXTENDED_SYMBOL |{...}? PARTITIONS_SYMBOL |{...}? FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )? explainable_statement
        	        	    {
        	        	        // MySQL.g:2039:5: ( EXTENDED_SYMBOL |{...}? PARTITIONS_SYMBOL |{...}? FORMAT_SYMBOL EQUAL_OPERATOR text_or_identifier )?
        	        	        {
        	        	            int alt602=4;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EXTENDED_SYMBOL:
        	        	                	{
        	        	                		alt602=1;
        	        	                	}
        	        	                    break;
        	        	                case PARTITIONS_SYMBOL:
        	        	                	{
        	        	                		alt602=2;
        	        	                	}
        	        	                    break;
        	        	                case FORMAT_SYMBOL:
        	        	                	{
        	        	                		alt602=3;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt602)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2042:6: EXTENDED_SYMBOL
        	        	        	    {
        	        	        	        EXTENDED_SYMBOL1925 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTENDED_SYMBOL, &FOLLOW_EXTENDED_SYMBOL_in_utility_statement10248);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EXTENDED_SYMBOL1925_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTENDED_SYMBOL1925));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTENDED_SYMBOL1925_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;
        	        	        	case 2:
        	        	        	    // MySQL.g:2043: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_SYMBOL1926 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONS_SYMBOL, &FOLLOW_PARTITIONS_SYMBOL_in_utility_statement10260);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        PARTITIONS_SYMBOL1926_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONS_SYMBOL1926));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONS_SYMBOL1926_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;
        	        	        	case 3:
        	        	        	    // MySQL.g:2044: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_SYMBOL1927 = (pANTLR3_COMMON_TOKEN) MATCHT(FORMAT_SYMBOL, &FOLLOW_FORMAT_SYMBOL_in_utility_statement10272);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        FORMAT_SYMBOL1927_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FORMAT_SYMBOL1927));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, FORMAT_SYMBOL1927_tree);
        	        	        	        }

        	        	        	        EQUAL_OPERATOR1928 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_utility_statement10274);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR1928_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR1928));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR1928_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_utility_statement10276);
        	        	        	        text_or_identifier1929=text_or_identifier(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleutility_statementEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier1929.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_explainable_statement_in_utility_statement10285);
        	        	        explainable_statement1930=explainable_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleutility_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, explainable_statement1930.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2047:4: HELP_SYMBOL ^ text_or_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HELP_SYMBOL1931 = (pANTLR3_COMMON_TOKEN) MATCHT(HELP_SYMBOL, &FOLLOW_HELP_SYMBOL_in_utility_statement10294);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HELP_SYMBOL1931_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HELP_SYMBOL1931))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, HELP_SYMBOL1931_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_utility_statement10297);
        	        text_or_identifier1932=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier1932.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2048:4: use_command
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_use_command_in_utility_statement10302);
        	        use_command1933=use_command(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleutility_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, use_command1933.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:2051: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    DESCRIBE_SYMBOL1934;
    pANTLR3_COMMON_TOKEN    DESC_SYMBOL1935;

    pANTLR3_BASE_TREE DESCRIBE_SYMBOL1934_tree;
    pANTLR3_BASE_TREE DESC_SYMBOL1935_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DESCRIBE_SYMBOL1934       = NULL;
    DESC_SYMBOL1935       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DESCRIBE_SYMBOL1934_tree   = NULL;
    DESC_SYMBOL1935_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2051:17: ( DESCRIBE_SYMBOL ^| DESC_SYMBOL ^)

            ANTLR3_UINT32 alt605;

            alt605=2;

            switch ( LA(1) )
            {
            case DESCRIBE_SYMBOL:
            	{
            		alt605=1;
            	}
                break;
            case DESC_SYMBOL:
            	{
            		alt605=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 605;
                EXCEPTION->state        = 0;


                goto ruledescribe_commandEx;

            }

            switch (alt605)
            {
        	case 1:
        	    // MySQL.g:2052:2: DESCRIBE_SYMBOL ^
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DESCRIBE_SYMBOL1934 = (pANTLR3_COMMON_TOKEN) MATCHT(DESCRIBE_SYMBOL, &FOLLOW_DESCRIBE_SYMBOL_in_describe_command10311);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledescribe_commandEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DESCRIBE_SYMBOL1934_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DESCRIBE_SYMBOL1934))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DESCRIBE_SYMBOL1934_tree, root_0));
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2052:21: DESC_SYMBOL ^
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DESC_SYMBOL1935 = (pANTLR3_COMMON_TOKEN) MATCHT(DESC_SYMBOL, &FOLLOW_DESC_SYMBOL_in_describe_command10316);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledescribe_commandEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DESC_SYMBOL1935_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DESC_SYMBOL1935))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DESC_SYMBOL1935_tree, root_0));
        	        }

        	    }
        	    break;

            }
        }
    }

    // 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:2056:1: explainable_statement : ( select_statement |{...}? ( delete_statement | insert_statement | replace_statement | update_statement ) |{...}? FOR_SYMBOL CONNECTION_SYMBOL real_ulong_number );
 */
static MySQLParser_explainable_statement_return
explainable_statement(pMySQLParser ctx)
{
    MySQLParser_explainable_statement_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FOR_SYMBOL1941;
    pANTLR3_COMMON_TOKEN    CONNECTION_SYMBOL1942;
    MySQLParser_select_statement_return select_statement1936;
    #undef	RETURN_TYPE_select_statement1936
    #define	RETURN_TYPE_select_statement1936 MySQLParser_select_statement_return

    MySQLParser_delete_statement_return delete_statement1937;
    #undef	RETURN_TYPE_delete_statement1937
    #define	RETURN_TYPE_delete_statement1937 MySQLParser_delete_statement_return

    MySQLParser_insert_statement_return insert_statement1938;
    #undef	RETURN_TYPE_insert_statement1938
    #define	RETURN_TYPE_insert_statement1938 MySQLParser_insert_statement_return

    MySQLParser_replace_statement_return replace_statement1939;
    #undef	RETURN_TYPE_replace_statement1939
    #define	RETURN_TYPE_replace_statement1939 MySQLParser_replace_statement_return

    MySQLParser_update_statement_return update_statement1940;
    #undef	RETURN_TYPE_update_statement1940
    #define	RETURN_TYPE_update_statement1940 MySQLParser_update_statement_return

    MySQLParser_real_ulong_number_return real_ulong_number1943;
    #undef	RETURN_TYPE_real_ulong_number1943
    #define	RETURN_TYPE_real_ulong_number1943 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE FOR_SYMBOL1941_tree;
    pANTLR3_BASE_TREE CONNECTION_SYMBOL1942_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL1941       = NULL;
    CONNECTION_SYMBOL1942       = NULL;
    select_statement1936.tree = NULL;

    delete_statement1937.tree = NULL;

    insert_statement1938.tree = NULL;

    replace_statement1939.tree = NULL;

    update_statement1940.tree = NULL;

    real_ulong_number1943.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL1941_tree   = NULL;
    CONNECTION_SYMBOL1942_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2056:22: ( select_statement |{...}? ( delete_statement | insert_statement | replace_statement | update_statement ) |{...}? FOR_SYMBOL CONNECTION_SYMBOL real_ulong_number )

            ANTLR3_UINT32 alt607;

            alt607=3;

            switch ( LA(1) )
            {
            case OPEN_PAR_SYMBOL:
            case SELECT_SYMBOL:
            	{
            		alt607=1;
            	}
                break;
            case DELETE_SYMBOL:
            case INSERT_SYMBOL:
            case REPLACE_SYMBOL:
            case UPDATE_SYMBOL:
            	{
            		alt607=2;
            	}
                break;
            case FOR_SYMBOL:
            	{
            		alt607=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 607;
                EXCEPTION->state        = 0;


                goto ruleexplainable_statementEx;

            }

            switch (alt607)
            {
        	case 1:
        	    // MySQL.g:2057:2: select_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_select_statement_in_explainable_statement10327);
        	        select_statement1936=select_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement1936.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2058:4: {...}? ( 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:2059:3: ( delete_statement | insert_statement | replace_statement | update_statement )
        	        {
        	            int alt606=4;
        	            switch ( LA(1) )
        	            {
        	            case DELETE_SYMBOL:
        	            	{
        	            		alt606=1;
        	            	}
        	                break;
        	            case INSERT_SYMBOL:
        	            	{
        	            		alt606=2;
        	            	}
        	                break;
        	            case REPLACE_SYMBOL:
        	            	{
        	            		alt606=3;
        	            	}
        	                break;
        	            case UPDATE_SYMBOL:
        	            	{
        	            		alt606=4;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 606;
        	                EXCEPTION->state        = 0;


        	                goto ruleexplainable_statementEx;

        	            }

        	            switch (alt606)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2060:4: delete_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_delete_statement_in_explainable_statement10341);
        	        	        delete_statement1937=delete_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, delete_statement1937.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2061:6: insert_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_insert_statement_in_explainable_statement10348);
        	        	        insert_statement1938=insert_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, insert_statement1938.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:2062:6: replace_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_replace_statement_in_explainable_statement10355);
        	        	        replace_statement1939=replace_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, replace_statement1939.tree);

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:2063:6: update_statement
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_update_statement_in_explainable_statement10362);
        	        	        update_statement1940=update_statement(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleexplainable_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, update_statement1940.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2065:4: {...}? FOR_SYMBOL CONNECTION_SYMBOL real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50700)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50700";
        	                EXCEPTION->ruleName	 = (void *)"explainable_statement";


        	        }

        	        FOR_SYMBOL1941 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_explainable_statement10373);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOR_SYMBOL1941_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL1941));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL1941_tree);
        	        }

        	        CONNECTION_SYMBOL1942 = (pANTLR3_COMMON_TOKEN) MATCHT(CONNECTION_SYMBOL, &FOLLOW_CONNECTION_SYMBOL_in_explainable_statement10375);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONNECTION_SYMBOL1942_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONNECTION_SYMBOL1942));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONNECTION_SYMBOL1942_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_explainable_statement10377);
        	        real_ulong_number1943=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexplainable_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number1943.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 use_command
 * MySQL.g:2068:1: use_command : USE_SYMBOL identifier -> ^( USE_SYMBOL SCHEMA_REF_TOKEN identifier ) ;
 */
static MySQLParser_use_command_return
use_command(pMySQLParser ctx)
{
    MySQLParser_use_command_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    USE_SYMBOL1944;
    MySQLParser_identifier_return identifier1945;
    #undef	RETURN_TYPE_identifier1945
    #define	RETURN_TYPE_identifier1945 MySQLParser_identifier_return

    pANTLR3_BASE_TREE USE_SYMBOL1944_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_USE_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    USE_SYMBOL1944       = NULL;
    identifier1945.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    USE_SYMBOL1944_tree   = NULL;

    stream_USE_SYMBOL   = NULL;
    #define CREATE_stream_USE_SYMBOL  if (stream_USE_SYMBOL == NULL) {stream_USE_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token USE_SYMBOL"); } 
    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2068:12: ( USE_SYMBOL identifier -> ^( USE_SYMBOL SCHEMA_REF_TOKEN identifier ) )
        // MySQL.g:2069:2: USE_SYMBOL identifier
        {
            USE_SYMBOL1944 = (pANTLR3_COMMON_TOKEN) MATCHT(USE_SYMBOL, &FOLLOW_USE_SYMBOL_in_use_command10386);
            if  (HASEXCEPTION())
            {
                goto ruleuse_commandEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_USE_SYMBOL; stream_USE_SYMBOL->add(stream_USE_SYMBOL, USE_SYMBOL1944, NULL); }


            FOLLOWPUSH(FOLLOW_identifier_in_use_command10388);
            identifier1945=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleuse_commandEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier1945.tree, NULL); }

            /* AST REWRITE
             * elements          : USE_SYMBOL, 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;
            	// 2069:24: -> ^( USE_SYMBOL SCHEMA_REF_TOKEN identifier )
            	{
            	    // MySQL.g:2069:27: ^( USE_SYMBOL SCHEMA_REF_TOKEN identifier )
            	    {
            	        pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));
            	        root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, 
            	        stream_USE_SYMBOL == NULL ? NULL : stream_USE_SYMBOL->nextNode(stream_USE_SYMBOL)
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, SCHEMA_REF_TOKEN, (pANTLR3_UINT8)"SCHEMA_REF_TOKEN")
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruleuse_commandEx; /* Prevent compiler warnings */
    ruleuse_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 (stream_USE_SYMBOL != NULL) stream_USE_SYMBOL->free(stream_USE_SYMBOL);
        if (stream_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end use_command */

/**
 * $ANTLR start expression
 * MySQL.g:2077:1: expression : logical_or_expression -> ^( EXPRESSION_TOKEN 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_expression1946;
    #undef	RETURN_TYPE_logical_or_expression1946
    #define	RETURN_TYPE_logical_or_expression1946 MySQLParser_logical_or_expression_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_logical_or_expression;
    /* Initialize rule variables
     */

    root_0 = NULL;

    logical_or_expression1946.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_logical_or_expression   = NULL;
    #define CREATE_stream_logical_or_expression  if (stream_logical_or_expression == NULL) {stream_logical_or_expression = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule logical_or_expression"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2077:11: ( logical_or_expression -> ^( EXPRESSION_TOKEN logical_or_expression ) )
        // MySQL.g:2078:2: logical_or_expression
        {
            FOLLOWPUSH(FOLLOW_logical_or_expression_in_expression10412);
            logical_or_expression1946=logical_or_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_logical_or_expression; stream_logical_or_expression->add(stream_logical_or_expression, logical_or_expression1946.tree, NULL); }

            /* AST REWRITE
             * elements          : logical_or_expression
             * 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;
            	// 2078:24: -> ^( EXPRESSION_TOKEN logical_or_expression )
            	{
            	    // MySQL.g:2078:27: ^( EXPRESSION_TOKEN logical_or_expression )
            	    {
            	        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, EXPRESSION_TOKEN, (pANTLR3_UINT8)"EXPRESSION_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_logical_or_expression == NULL ? NULL : stream_logical_or_expression->nextTree(stream_logical_or_expression));

            	        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 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 (stream_logical_or_expression != NULL) stream_logical_or_expression->free(stream_logical_or_expression);
    }


            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:2081: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    set1948;
    MySQLParser_logical_xor_expression_return logical_xor_expression1947;
    #undef	RETURN_TYPE_logical_xor_expression1947
    #define	RETURN_TYPE_logical_xor_expression1947 MySQLParser_logical_xor_expression_return

    MySQLParser_logical_xor_expression_return logical_xor_expression1949;
    #undef	RETURN_TYPE_logical_xor_expression1949
    #define	RETURN_TYPE_logical_xor_expression1949 MySQLParser_logical_xor_expression_return

    pANTLR3_BASE_TREE set1948_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1948       = NULL;
    logical_xor_expression1947.tree = NULL;

    logical_xor_expression1949.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1948_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2081:22: ( logical_xor_expression ( options {greedy=true; } : ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression )* )
        // MySQL.g:2082: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_expression10429);
            logical_xor_expression1947=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_expression1947.tree);

            // MySQL.g:2082:25: ( options {greedy=true; } : ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression )*

            for (;;)
            {
                int alt608=2;
                switch ( LA(1) )
                {
                case LOGICAL_OR_OPERATOR:
                case OR_SYMBOL:
                	{
                		alt608=1;
                	}
                    break;

                }

                switch (alt608)
                {
            	case 1:
            	    // MySQL.g:2082:55: ( LOGICAL_OR_OPERATOR | OR_SYMBOL ) ^ logical_xor_expression
            	    {
            	        set1948=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1948=(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, set1948))
            	            , 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_expression10454);
            	        logical_xor_expression1949=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_expression1949.tree);

            	    }
            	    break;

            	default:
            	    goto loop608;	/* break out of the loop */
            	    break;
                }
            }
            loop608: ; /* 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:2085: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_SYMBOL1951;
    MySQLParser_logical_and_expression_return logical_and_expression1950;
    #undef	RETURN_TYPE_logical_and_expression1950
    #define	RETURN_TYPE_logical_and_expression1950 MySQLParser_logical_and_expression_return

    MySQLParser_logical_and_expression_return logical_and_expression1952;
    #undef	RETURN_TYPE_logical_and_expression1952
    #define	RETURN_TYPE_logical_and_expression1952 MySQLParser_logical_and_expression_return

    pANTLR3_BASE_TREE XOR_SYMBOL1951_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    XOR_SYMBOL1951       = NULL;
    logical_and_expression1950.tree = NULL;

    logical_and_expression1952.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    XOR_SYMBOL1951_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2085:23: ( logical_and_expression ( options {greedy=true; } : XOR_SYMBOL ^ logical_and_expression )* )
        // MySQL.g:2086: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_expression10465);
            logical_and_expression1950=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_expression1950.tree);

            // MySQL.g:2086:25: ( options {greedy=true; } : XOR_SYMBOL ^ logical_and_expression )*

            for (;;)
            {
                int alt609=2;
                switch ( LA(1) )
                {
                case XOR_SYMBOL:
                	{
                		alt609=1;
                	}
                    break;

                }

                switch (alt609)
                {
            	case 1:
            	    // MySQL.g:2086:55: XOR_SYMBOL ^ logical_and_expression
            	    {
            	        XOR_SYMBOL1951 = (pANTLR3_COMMON_TOKEN) MATCHT(XOR_SYMBOL, &FOLLOW_XOR_SYMBOL_in_logical_xor_expression10481);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulelogical_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        XOR_SYMBOL1951_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, XOR_SYMBOL1951))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, XOR_SYMBOL1951_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_logical_and_expression_in_logical_xor_expression10484);
            	        logical_and_expression1952=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_expression1952.tree);

            	    }
            	    break;

            	default:
            	    goto loop609;	/* break out of the loop */
            	    break;
                }
            }
            loop609: ; /* 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:2089: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    set1954;
    MySQLParser_logical_not_expression_return logical_not_expression1953;
    #undef	RETURN_TYPE_logical_not_expression1953
    #define	RETURN_TYPE_logical_not_expression1953 MySQLParser_logical_not_expression_return

    MySQLParser_logical_not_expression_return logical_not_expression1955;
    #undef	RETURN_TYPE_logical_not_expression1955
    #define	RETURN_TYPE_logical_not_expression1955 MySQLParser_logical_not_expression_return

    pANTLR3_BASE_TREE set1954_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1954       = NULL;
    logical_not_expression1953.tree = NULL;

    logical_not_expression1955.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1954_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2089:23: ( logical_not_expression ( options {greedy=true; } : ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression )* )
        // MySQL.g:2090: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_expression10495);
            logical_not_expression1953=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_expression1953.tree);

            // MySQL.g:2090:25: ( options {greedy=true; } : ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression )*

            for (;;)
            {
                int alt610=2;
                switch ( LA(1) )
                {
                case AND_SYMBOL:
                	{
                		alt610=1;
                	}
                    break;
                case LOGICAL_AND_OPERATOR:
                	{
                		alt610=1;
                	}
                    break;

                }

                switch (alt610)
                {
            	case 1:
            	    // MySQL.g:2090:55: ( LOGICAL_AND_OPERATOR | AND_SYMBOL ) ^ logical_not_expression
            	    {
            	        set1954=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1954=(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, set1954))
            	            , 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_expression10520);
            	        logical_not_expression1955=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_expression1955.tree);

            	    }
            	    break;

            	default:
            	    goto loop610;	/* break out of the loop */
            	    break;
                }
            }
            loop610: ; /* 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:2093: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_SYMBOL1956;
    MySQLParser_logical_not_expression_return logical_not_expression1957;
    #undef	RETURN_TYPE_logical_not_expression1957
    #define	RETURN_TYPE_logical_not_expression1957 MySQLParser_logical_not_expression_return

    MySQLParser_boolean_primary_expression_return boolean_primary_expression1958;
    #undef	RETURN_TYPE_boolean_primary_expression1958
    #define	RETURN_TYPE_boolean_primary_expression1958 MySQLParser_boolean_primary_expression_return

    pANTLR3_BASE_TREE NOT_SYMBOL1956_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL1956       = NULL;
    logical_not_expression1957.tree = NULL;

    boolean_primary_expression1958.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL1956_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2093:23: ( NOT_SYMBOL ^ logical_not_expression | boolean_primary_expression )

            ANTLR3_UINT32 alt611;

            alt611=2;

            {
                int LA611_0 = LA(1);
                if ( (LA611_0 == NOT_SYMBOL))
                {
                    alt611=1;
                }
                else if ( (((LA611_0 >= ACCOUNT_SYMBOL) && (LA611_0 <= YEAR_SYMBOL)) || ((LA611_0 >= AT_AT_SIGN_SYMBOL) && (LA611_0 <= AT_TEXT_SUFFIX)) || LA611_0 == BACK_TICK_QUOTED_ID || ((LA611_0 >= BINARY_SYMBOL) && (LA611_0 <= BIN_NUMBER)) || LA611_0 == BITWISE_NOT_OPERATOR || ((LA611_0 >= BIT_AND_SYMBOL) && (LA611_0 <= BIT_XOR_SYMBOL)) || ((LA611_0 >= CASE_SYMBOL) && (LA611_0 <= CAST_SYMBOL)) || LA611_0 == CHAR_SYMBOL || ((LA611_0 >= CONVERT_SYMBOL) && (LA611_0 <= COUNT_SYMBOL)) || LA611_0 == CURDATE_SYMBOL || LA611_0 == CURRENT_USER_SYMBOL || LA611_0 == CURTIME_SYMBOL || LA611_0 == DATABASE_SYMBOL || LA611_0 == DATE_ADD_SYMBOL || LA611_0 == DATE_SUB_SYMBOL || LA611_0 == DECIMAL_NUMBER || LA611_0 == DOT_SYMBOL || LA611_0 == DOUBLE_QUOTED_TEXT || LA611_0 == EXISTS_SYMBOL || ((LA611_0 >= EXTRACT_SYMBOL) && (LA611_0 <= FALSE_SYMBOL)) || LA611_0 == FLOAT_NUMBER || LA611_0 == GROUP_CONCAT_SYMBOL || LA611_0 == HEX_NUMBER || ((LA611_0 >= IDENTIFIER) && (LA611_0 <= IF_SYMBOL)) || LA611_0 == INSERT_SYMBOL || LA611_0 == INTERVAL_SYMBOL || LA611_0 == INT_NUMBER || LA611_0 == LEFT_SYMBOL || LA611_0 == LOGICAL_NOT_OPERATOR || LA611_0 == LONG_NUMBER || LA611_0 == MATCH_SYMBOL || LA611_0 == MAX_SYMBOL || LA611_0 == MINUS_OPERATOR || LA611_0 == MIN_SYMBOL || LA611_0 == MOD_SYMBOL || LA611_0 == NCHAR_TEXT || LA611_0 == NOT2_SYMBOL || LA611_0 == NOW_SYMBOL || LA611_0 == NULL2_SYMBOL || LA611_0 == NULL_SYMBOL || ((LA611_0 >= OPEN_CURLY_SYMBOL) && (LA611_0 <= OPEN_PAR_SYMBOL)) || LA611_0 == PARAM_MARKER || ((LA611_0 >= PLUS_OPERATOR) && (LA611_0 <= POSITION_SYMBOL)) || ((LA611_0 >= REPEAT_SYMBOL) && (LA611_0 <= REPLACE_SYMBOL)) || LA611_0 == RIGHT_SYMBOL || LA611_0 == SINGLE_QUOTED_TEXT || LA611_0 == STDDEV_SAMP_SYMBOL || LA611_0 == STD_SYMBOL || LA611_0 == SUBSTRING_SYMBOL || ((LA611_0 >= SUM_SYMBOL) && (LA611_0 <= SYSDATE_SYMBOL)) || ((LA611_0 >= TRIM_SYMBOL) && (LA611_0 <= TRUE_SYMBOL)) || LA611_0 == ULONGLONG_NUMBER || LA611_0 == UNDERSCORE_CHARSET || ((LA611_0 >= UTC_DATE_SYMBOL) && (LA611_0 <= UTC_TIME_SYMBOL)) || LA611_0 == VALUES_SYMBOL || LA611_0 == VARIANCE_SYMBOL || LA611_0 == VAR_SAMP_SYMBOL))
                {
                    alt611=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 611;
                    EXCEPTION->state        = 0;


                    goto rulelogical_not_expressionEx;

                }
            }
            switch (alt611)
            {
        	case 1:
        	    // MySQL.g:2094:2: NOT_SYMBOL ^ logical_not_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NOT_SYMBOL1956 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_logical_not_expression10531);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelogical_not_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOT_SYMBOL1956_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1956))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, NOT_SYMBOL1956_tree, root_0));
        	        }

        	        FOLLOWPUSH(FOLLOW_logical_not_expression_in_logical_not_expression10534);
        	        logical_not_expression1957=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_expression1957.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2095:4: boolean_primary_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_boolean_primary_expression_in_logical_not_expression10539);
        	        boolean_primary_expression1958=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_expression1958.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:2098: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    set1961;
    pANTLR3_COMMON_TOKEN    IS_SYMBOL1964;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL1965;
    pANTLR3_COMMON_TOKEN    FALSE_SYMBOL1967;
    pANTLR3_COMMON_TOKEN    TRUE_SYMBOL1968;
    pANTLR3_COMMON_TOKEN    UNKNOWN_SYMBOL1969;
    MySQLParser_predicate_return predicate1959;
    #undef	RETURN_TYPE_predicate1959
    #define	RETURN_TYPE_predicate1959 MySQLParser_predicate_return

    MySQLParser_comparison_operator_return comparison_operator1960;
    #undef	RETURN_TYPE_comparison_operator1960
    #define	RETURN_TYPE_comparison_operator1960 MySQLParser_comparison_operator_return

    MySQLParser_subquery_return subquery1962;
    #undef	RETURN_TYPE_subquery1962
    #define	RETURN_TYPE_subquery1962 MySQLParser_subquery_return

    MySQLParser_predicate_return predicate1963;
    #undef	RETURN_TYPE_predicate1963
    #define	RETURN_TYPE_predicate1963 MySQLParser_predicate_return

    MySQLParser_null_literal_return null_literal1966;
    #undef	RETURN_TYPE_null_literal1966
    #define	RETURN_TYPE_null_literal1966 MySQLParser_null_literal_return

    pANTLR3_BASE_TREE set1961_tree;
    pANTLR3_BASE_TREE IS_SYMBOL1964_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL1965_tree;
    pANTLR3_BASE_TREE FALSE_SYMBOL1967_tree;
    pANTLR3_BASE_TREE TRUE_SYMBOL1968_tree;
    pANTLR3_BASE_TREE UNKNOWN_SYMBOL1969_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1961       = NULL;
    IS_SYMBOL1964       = NULL;
    NOT_SYMBOL1965       = NULL;
    FALSE_SYMBOL1967       = NULL;
    TRUE_SYMBOL1968       = NULL;
    UNKNOWN_SYMBOL1969       = NULL;
    predicate1959.tree = NULL;

    comparison_operator1960.tree = NULL;

    subquery1962.tree = NULL;

    predicate1963.tree = NULL;

    null_literal1966.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1961_tree   = NULL;
    IS_SYMBOL1964_tree   = NULL;
    NOT_SYMBOL1965_tree   = NULL;
    FALSE_SYMBOL1967_tree   = NULL;
    TRUE_SYMBOL1968_tree   = NULL;
    UNKNOWN_SYMBOL1969_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2098: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:2099: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_expression10548);
            predicate1959=predicate(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleboolean_primary_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1959.tree);

            // MySQL.g:2100: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 alt616=3;
                switch ( LA(1) )
                {
                case EQUAL_OPERATOR:
                	{
                		alt616=1;
                	}
                    break;
                case IS_SYMBOL:
                	{
                		alt616=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:
                	{
                		alt616=1;
                	}
                    break;

                }

                switch (alt616)
                {
            	case 1:
            	    // MySQL.g:2101:4: comparison_operator ^ ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate )
            	    {
            	        FOLLOWPUSH(FOLLOW_comparison_operator_in_boolean_primary_expression10569);
            	        comparison_operator1960=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_operator1960.tree, root_0));

            	        // MySQL.g:2102:4: ({...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery | predicate )
            	        {
            	            int alt612=2;
            	            {
            	                int LA612_0 = LA(1);
            	                if ( (LA612_0 == ANY_SYMBOL))
            	                {
            	                    {
            	                        int LA612_1 = LA(2);
            	                        if ( (LA612_1 == OPEN_PAR_SYMBOL))
            	                        {
            	                            {
            	                                int LA612_104 = LA(3);
            	                                if ( ((LA(2) == OPEN_PAR_SYMBOL)))
            	                                {
            	                                    alt612=1;
            	                                }
            	                                else if ( (ANTLR3_TRUE))
            	                                {
            	                                    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        = 104;


            	                                    goto ruleboolean_primary_expressionEx;

            	                                }
            	                            }
            	                        }
            	                        else if ( (LA612_1 == EOF || ((LA612_1 >= ACCOUNT_SYMBOL) && (LA612_1 <= YEAR_SYMBOL)) || ((LA612_1 >= AND_SYMBOL) && (LA612_1 <= ASC_SYMBOL)) || ((LA612_1 >= AS_SYMBOL) && (LA612_1 <= AT_TEXT_SUFFIX)) || LA612_1 == BACK_TICK_QUOTED_ID || LA612_1 == BETWEEN_SYMBOL || LA612_1 == BIN_NUMBER || LA612_1 == BITWISE_AND_OPERATOR || ((LA612_1 >= BITWISE_OR_OPERATOR) && (LA612_1 <= BITWISE_XOR_OPERATOR)) || ((LA612_1 >= CLOSE_CURLY_SYMBOL) && (LA612_1 <= COLLATE_SYMBOL)) || LA612_1 == COMMA_SYMBOL || LA612_1 == CONCAT_PIPES_SYMBOL || LA612_1 == CROSS_SYMBOL || ((LA612_1 >= DAY_HOUR_SYMBOL) && (LA612_1 <= DAY_SECOND_SYMBOL)) || LA612_1 == DESC_SYMBOL || ((LA612_1 >= DIV_OPERATOR) && (LA612_1 <= DOT_SYMBOL)) || LA612_1 == DOUBLE_QUOTED_TEXT || LA612_1 == ELSE_SYMBOL || LA612_1 == EQUAL_OPERATOR || ((LA612_1 >= FOR_SYMBOL) && (LA612_1 <= FROM_SYMBOL)) || ((LA612_1 >= GREATER_OR_EQUAL_OPERATOR) && (LA612_1 <= GREATER_THAN_OPERATOR)) || ((LA612_1 >= GROUP_SYMBOL) && (LA612_1 <= HAVING_SYMBOL)) || LA612_1 == HEX_NUMBER || ((LA612_1 >= HOUR_MICROSECOND_SYMBOL) && (LA612_1 <= IDENTIFIER)) || LA612_1 == INNER_SYMBOL || LA612_1 == INTO_SYMBOL || LA612_1 == IN_SYMBOL || LA612_1 == IS_SYMBOL || ((LA612_1 >= JOIN_SYMBOL) && (LA612_1 <= JSON_SEPARATOR_SYMBOL)) || ((LA612_1 >= LEFT_SYMBOL) && (LA612_1 <= LESS_THAN_OPERATOR)) || ((LA612_1 >= LIKE_SYMBOL) && (LA612_1 <= LIMIT_SYMBOL)) || LA612_1 == LOCK_SYMBOL || LA612_1 == LOGICAL_AND_OPERATOR || LA612_1 == LOGICAL_OR_OPERATOR || ((LA612_1 >= MINUS_OPERATOR) && (LA612_1 <= MINUTE_SECOND_SYMBOL)) || ((LA612_1 >= MOD_OPERATOR) && (LA612_1 <= MOD_SYMBOL)) || ((LA612_1 >= MULT_OPERATOR) && (LA612_1 <= NATURAL_SYMBOL)) || ((LA612_1 >= NOT_EQUAL2_OPERATOR) && (LA612_1 <= NOT_SYMBOL)) || LA612_1 == NULL_SAFE_EQUAL_OPERATOR || LA612_1 == ON_SYMBOL || ((LA612_1 >= ORDER_SYMBOL) && (LA612_1 <= OR_SYMBOL)) || LA612_1 == PLUS_OPERATOR || LA612_1 == PROCEDURE_SYMBOL || LA612_1 == REGEXP_SYMBOL || LA612_1 == RENAME_SYMBOL || LA612_1 == RIGHT_SYMBOL || LA612_1 == SECOND_MICROSECOND_SYMBOL || LA612_1 == SEMICOLON_SYMBOL || LA612_1 == SEPARATOR_SYMBOL || LA612_1 == SET_SYMBOL || ((LA612_1 >= SHIFT_LEFT_OPERATOR) && (LA612_1 <= SHIFT_RIGHT_OPERATOR)) || LA612_1 == SINGLE_QUOTED_TEXT || LA612_1 == STRAIGHT_JOIN_SYMBOL || LA612_1 == THEN_SYMBOL || LA612_1 == UNION_SYMBOL || LA612_1 == USING_SYMBOL || ((LA612_1 >= WHEN_SYMBOL) && (LA612_1 <= WHERE_SYMBOL)) || LA612_1 == WITH_SYMBOL || ((LA612_1 >= XOR_SYMBOL) && (LA612_1 <= YEAR_MONTH_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        = 1;


            	                            goto ruleboolean_primary_expressionEx;

            	                        }
            	                    }
            	                }
            	                else if ( (((LA612_0 >= ACCOUNT_SYMBOL) && (LA612_0 <= ANALYZE_SYMBOL)) || ((LA612_0 >= AT_SYMBOL) && (LA612_0 <= YEAR_SYMBOL)) || ((LA612_0 >= AT_AT_SIGN_SYMBOL) && (LA612_0 <= AT_TEXT_SUFFIX)) || LA612_0 == BACK_TICK_QUOTED_ID || ((LA612_0 >= BINARY_SYMBOL) && (LA612_0 <= BIN_NUMBER)) || LA612_0 == BITWISE_NOT_OPERATOR || ((LA612_0 >= BIT_AND_SYMBOL) && (LA612_0 <= BIT_XOR_SYMBOL)) || ((LA612_0 >= CASE_SYMBOL) && (LA612_0 <= CAST_SYMBOL)) || LA612_0 == CHAR_SYMBOL || ((LA612_0 >= CONVERT_SYMBOL) && (LA612_0 <= COUNT_SYMBOL)) || LA612_0 == CURDATE_SYMBOL || LA612_0 == CURRENT_USER_SYMBOL || LA612_0 == CURTIME_SYMBOL || LA612_0 == DATABASE_SYMBOL || LA612_0 == DATE_ADD_SYMBOL || LA612_0 == DATE_SUB_SYMBOL || LA612_0 == DECIMAL_NUMBER || LA612_0 == DOT_SYMBOL || LA612_0 == DOUBLE_QUOTED_TEXT || LA612_0 == EXISTS_SYMBOL || ((LA612_0 >= EXTRACT_SYMBOL) && (LA612_0 <= FALSE_SYMBOL)) || LA612_0 == FLOAT_NUMBER || LA612_0 == GROUP_CONCAT_SYMBOL || LA612_0 == HEX_NUMBER || ((LA612_0 >= IDENTIFIER) && (LA612_0 <= IF_SYMBOL)) || LA612_0 == INSERT_SYMBOL || LA612_0 == INTERVAL_SYMBOL || LA612_0 == INT_NUMBER || LA612_0 == LEFT_SYMBOL || LA612_0 == LOGICAL_NOT_OPERATOR || LA612_0 == LONG_NUMBER || LA612_0 == MATCH_SYMBOL || LA612_0 == MAX_SYMBOL || LA612_0 == MINUS_OPERATOR || LA612_0 == MIN_SYMBOL || LA612_0 == MOD_SYMBOL || LA612_0 == NCHAR_TEXT || LA612_0 == NOT2_SYMBOL || LA612_0 == NOW_SYMBOL || LA612_0 == NULL2_SYMBOL || LA612_0 == NULL_SYMBOL || ((LA612_0 >= OPEN_CURLY_SYMBOL) && (LA612_0 <= OPEN_PAR_SYMBOL)) || LA612_0 == PARAM_MARKER || ((LA612_0 >= PLUS_OPERATOR) && (LA612_0 <= POSITION_SYMBOL)) || ((LA612_0 >= REPEAT_SYMBOL) && (LA612_0 <= REPLACE_SYMBOL)) || LA612_0 == RIGHT_SYMBOL || LA612_0 == SINGLE_QUOTED_TEXT || LA612_0 == STDDEV_SAMP_SYMBOL || LA612_0 == STD_SYMBOL || LA612_0 == SUBSTRING_SYMBOL || ((LA612_0 >= SUM_SYMBOL) && (LA612_0 <= SYSDATE_SYMBOL)) || ((LA612_0 >= TRIM_SYMBOL) && (LA612_0 <= TRUE_SYMBOL)) || LA612_0 == ULONGLONG_NUMBER || LA612_0 == UNDERSCORE_CHARSET || ((LA612_0 >= UTC_DATE_SYMBOL) && (LA612_0 <= UTC_TIME_SYMBOL)) || LA612_0 == VALUES_SYMBOL || LA612_0 == VARIANCE_SYMBOL || LA612_0 == VAR_SAMP_SYMBOL))
            	                {
            	                    alt612=2;
            	                }
            	                else if ( (LA612_0 == ALL_SYMBOL))
            	                {
            	                    alt612=1;
            	                }
            	                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 ruleboolean_primary_expressionEx;

            	                }
            	            }
            	            switch (alt612)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2103:5: {...}? ( ALL_SYMBOL | ANY_SYMBOL ) subquery
            	        	    {
            	        	        if ( !((LA(2) == OPEN_PAR_SYMBOL)) )
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"LA(2) == OPEN_PAR_SYMBOL";
            	        	                EXCEPTION->ruleName	 = (void *)"boolean_primary_expression";


            	        	        }

            	        	        set1961=(pANTLR3_COMMON_TOKEN)LT(1);

            	        	        if ( LA(1) == ANY_SYMBOL || LA(1) == ALL_SYMBOL )
            	        	        {
            	        	            CONSUME();
            	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set1961))
            	        	            );
            	        	            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_expression10591);
            	        	        subquery1962=subquery(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleboolean_primary_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery1962.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2104:7: predicate
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_predicate_in_boolean_primary_expression10599);
            	        	        predicate1963=predicate(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleboolean_primary_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1963.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2106:9: ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+
            	    {
            	        // MySQL.g:2106:9: ( options {greedy=true; } : IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL ) )+
            	        {
            	            int cnt615=0;

            	            for (;;)
            	            {
            	                int alt615=2;
            	        	switch ( LA(1) )
            	        	{
            	        	case IS_SYMBOL:
            	        		{
            	        			alt615=1;
            	        		}
            	        	    break;

            	        	}

            	        	switch (alt615)
            	        	{
            	        	    case 1:
            	        	        // MySQL.g:2106:39: IS_SYMBOL ^ ( NOT_SYMBOL )? ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL )
            	        	        {
            	        	            IS_SYMBOL1964 = (pANTLR3_COMMON_TOKEN) MATCHT(IS_SYMBOL, &FOLLOW_IS_SYMBOL_in_boolean_primary_expression10628);
            	        	            if  (HASEXCEPTION())
            	        	            {
            	        	                goto ruleboolean_primary_expressionEx;
            	        	            }
            	        	            if (HASFAILED())
            	        	            {
            	        	                return retval;
            	        	            }

            	        	            if ( BACKTRACKING==0 ) {
            	        	            IS_SYMBOL1964_tree = 
            	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IS_SYMBOL1964))
            	        	            ;
            	        	            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, IS_SYMBOL1964_tree, root_0));
            	        	            }

            	        	            // MySQL.g:2106:50: ( NOT_SYMBOL )?
            	        	            {
            	        	                int alt613=2;
            	        	                switch ( LA(1) )
            	        	                {
            	        	                    case NOT_SYMBOL:
            	        	                    	{
            	        	                    		alt613=1;
            	        	                    	}
            	        	                        break;
            	        	                }

            	        	                switch (alt613)
            	        	                {
            	        	            	case 1:
            	        	            	    // MySQL.g:2106:50: NOT_SYMBOL
            	        	            	    {
            	        	            	        NOT_SYMBOL1965 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_boolean_primary_expression10631);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        NOT_SYMBOL1965_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1965));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL1965_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;

            	        	                }
            	        	            }

            	        	            // MySQL.g:2106:62: ( null_literal | FALSE_SYMBOL | TRUE_SYMBOL | UNKNOWN_SYMBOL )
            	        	            {
            	        	                int alt614=4;
            	        	                switch ( LA(1) )
            	        	                {
            	        	                case NULL2_SYMBOL:
            	        	                case NULL_SYMBOL:
            	        	                	{
            	        	                		alt614=1;
            	        	                	}
            	        	                    break;
            	        	                case FALSE_SYMBOL:
            	        	                	{
            	        	                		alt614=2;
            	        	                	}
            	        	                    break;
            	        	                case TRUE_SYMBOL:
            	        	                	{
            	        	                		alt614=3;
            	        	                	}
            	        	                    break;
            	        	                case UNKNOWN_SYMBOL:
            	        	                	{
            	        	                		alt614=4;
            	        	                	}
            	        	                    break;

            	        	                default:
            	        	                    if (BACKTRACKING>0)
            	        	                    {
            	        	                        FAILEDFLAG = ANTLR3_TRUE;
            	        	                        return retval;
            	        	                    }

            	        	                    CONSTRUCTEX();
            	        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                    EXCEPTION->message      = (void *)"";
            	        	                    EXCEPTION->decisionNum  = 614;
            	        	                    EXCEPTION->state        = 0;


            	        	                    goto ruleboolean_primary_expressionEx;

            	        	                }

            	        	                switch (alt614)
            	        	                {
            	        	            	case 1:
            	        	            	    // MySQL.g:2106:64: null_literal
            	        	            	    {
            	        	            	        FOLLOWPUSH(FOLLOW_null_literal_in_boolean_primary_expression10636);
            	        	            	        null_literal1966=null_literal(ctx);

            	        	            	        FOLLOWPOP();
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal1966.tree);

            	        	            	    }
            	        	            	    break;
            	        	            	case 2:
            	        	            	    // MySQL.g:2106:79: FALSE_SYMBOL
            	        	            	    {
            	        	            	        FALSE_SYMBOL1967 = (pANTLR3_COMMON_TOKEN) MATCHT(FALSE_SYMBOL, &FOLLOW_FALSE_SYMBOL_in_boolean_primary_expression10640);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        FALSE_SYMBOL1967_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FALSE_SYMBOL1967));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, FALSE_SYMBOL1967_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;
            	        	            	case 3:
            	        	            	    // MySQL.g:2106:94: TRUE_SYMBOL
            	        	            	    {
            	        	            	        TRUE_SYMBOL1968 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUE_SYMBOL, &FOLLOW_TRUE_SYMBOL_in_boolean_primary_expression10644);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        TRUE_SYMBOL1968_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUE_SYMBOL1968));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, TRUE_SYMBOL1968_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;
            	        	            	case 4:
            	        	            	    // MySQL.g:2106:108: UNKNOWN_SYMBOL
            	        	            	    {
            	        	            	        UNKNOWN_SYMBOL1969 = (pANTLR3_COMMON_TOKEN) MATCHT(UNKNOWN_SYMBOL, &FOLLOW_UNKNOWN_SYMBOL_in_boolean_primary_expression10648);
            	        	            	        if  (HASEXCEPTION())
            	        	            	        {
            	        	            	            goto ruleboolean_primary_expressionEx;
            	        	            	        }
            	        	            	        if (HASFAILED())
            	        	            	        {
            	        	            	            return retval;
            	        	            	        }

            	        	            	        if ( BACKTRACKING==0 ) {
            	        	            	        UNKNOWN_SYMBOL1969_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNKNOWN_SYMBOL1969));
            	        	            	        ADAPTOR->addChild(ADAPTOR, root_0, UNKNOWN_SYMBOL1969_tree);
            	        	            	        }

            	        	            	    }
            	        	            	    break;

            	        	                }
            	        	            }

            	        	        }
            	        	        break;

            	        	    default:

            	        		if ( cnt615 >= 1 )
            	        		{
            	        		    goto loop615;
            	        		}
            	        		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;
            	        	}
            	        	cnt615++;
            	            }
            	            loop615: ;	/* Jump to here if this rule does not match */
            	        }

            	    }
            	    break;

            	default:
            	    goto loop616;	/* break out of the loop */
            	    break;
                }
            }
            loop616: ; /* 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:2110: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 predicate_in ) | 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_SYMBOL1971;
    pANTLR3_COMMON_TOKEN    BETWEEN_SYMBOL1972;
    pANTLR3_COMMON_TOKEN    AND_SYMBOL1974;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL1976;
    pANTLR3_COMMON_TOKEN    ESCAPE_SYMBOL1978;
    pANTLR3_COMMON_TOKEN    REGEXP_SYMBOL1980;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL1982;
    pANTLR3_COMMON_TOKEN    SOUNDS_SYMBOL1984;
    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL1985;
    MySQLParser_bitwise_or_expression_return bitwise_or_expression1970;
    #undef	RETURN_TYPE_bitwise_or_expression1970
    #define	RETURN_TYPE_bitwise_or_expression1970 MySQLParser_bitwise_or_expression_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1973;
    #undef	RETURN_TYPE_bitwise_or_expression1973
    #define	RETURN_TYPE_bitwise_or_expression1973 MySQLParser_bitwise_or_expression_return

    MySQLParser_predicate_return predicate1975;
    #undef	RETURN_TYPE_predicate1975
    #define	RETURN_TYPE_predicate1975 MySQLParser_predicate_return

    MySQLParser_unary_expression_return unary_expression1977;
    #undef	RETURN_TYPE_unary_expression1977
    #define	RETURN_TYPE_unary_expression1977 MySQLParser_unary_expression_return

    MySQLParser_primary_return primary1979;
    #undef	RETURN_TYPE_primary1979
    #define	RETURN_TYPE_primary1979 MySQLParser_primary_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1981;
    #undef	RETURN_TYPE_bitwise_or_expression1981
    #define	RETURN_TYPE_bitwise_or_expression1981 MySQLParser_bitwise_or_expression_return

    MySQLParser_predicate_in_return predicate_in1983;
    #undef	RETURN_TYPE_predicate_in1983
    #define	RETURN_TYPE_predicate_in1983 MySQLParser_predicate_in_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression1986;
    #undef	RETURN_TYPE_bitwise_or_expression1986
    #define	RETURN_TYPE_bitwise_or_expression1986 MySQLParser_bitwise_or_expression_return

    pANTLR3_BASE_TREE NOT_SYMBOL1971_tree;
    pANTLR3_BASE_TREE BETWEEN_SYMBOL1972_tree;
    pANTLR3_BASE_TREE AND_SYMBOL1974_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL1976_tree;
    pANTLR3_BASE_TREE ESCAPE_SYMBOL1978_tree;
    pANTLR3_BASE_TREE REGEXP_SYMBOL1980_tree;
    pANTLR3_BASE_TREE IN_SYMBOL1982_tree;
    pANTLR3_BASE_TREE SOUNDS_SYMBOL1984_tree;
    pANTLR3_BASE_TREE LIKE_SYMBOL1985_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL1971       = NULL;
    BETWEEN_SYMBOL1972       = NULL;
    AND_SYMBOL1974       = NULL;
    LIKE_SYMBOL1976       = NULL;
    ESCAPE_SYMBOL1978       = NULL;
    REGEXP_SYMBOL1980       = NULL;
    IN_SYMBOL1982       = NULL;
    SOUNDS_SYMBOL1984       = NULL;
    LIKE_SYMBOL1985       = NULL;
    bitwise_or_expression1970.tree = NULL;

    bitwise_or_expression1973.tree = NULL;

    predicate1975.tree = NULL;

    unary_expression1977.tree = NULL;

    primary1979.tree = NULL;

    bitwise_or_expression1981.tree = NULL;

    predicate_in1983.tree = NULL;

    bitwise_or_expression1986.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL1971_tree   = NULL;
    BETWEEN_SYMBOL1972_tree   = NULL;
    AND_SYMBOL1974_tree   = NULL;
    LIKE_SYMBOL1976_tree   = NULL;
    ESCAPE_SYMBOL1978_tree   = NULL;
    REGEXP_SYMBOL1980_tree   = NULL;
    IN_SYMBOL1982_tree   = NULL;
    SOUNDS_SYMBOL1984_tree   = NULL;
    LIKE_SYMBOL1985_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2110: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 predicate_in ) | SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression )? )
        // MySQL.g:2111: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 predicate_in ) | SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate10665);
            bitwise_or_expression1970=bitwise_or_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepredicateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1970.tree);

            // MySQL.g:2112: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 predicate_in ) | SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression )?
            {
                int alt620=3;
                switch ( LA(1) )
                {
                    case NOT_SYMBOL:
                    	{
                    		alt620=1;
                    	}
                        break;
                    case BETWEEN_SYMBOL:
                    	{
                    		alt620=1;
                    	}
                        break;
                    case LIKE_SYMBOL:
                    	{
                    		alt620=1;
                    	}
                        break;
                    case REGEXP_SYMBOL:
                    	{
                    		alt620=1;
                    	}
                        break;
                    case IN_SYMBOL:
                    	{
                    		alt620=1;
                    	}
                        break;
                    case SOUNDS_SYMBOL:
                    	{
                    		alt620=2;
                    	}
                        break;
                }

                switch (alt620)
                {
            	case 1:
            	    // MySQL.g:2113: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 predicate_in )
            	    {
            	        // MySQL.g:2113:4: ( NOT_SYMBOL )?
            	        {
            	            int alt617=2;
            	            switch ( LA(1) )
            	            {
            	                case NOT_SYMBOL:
            	                	{
            	                		alt617=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt617)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2113:4: NOT_SYMBOL
            	        	    {
            	        	        NOT_SYMBOL1971 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_predicate10686);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NOT_SYMBOL1971_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL1971));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL1971_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:2114: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 predicate_in )
            	        {
            	            int alt619=4;
            	            switch ( LA(1) )
            	            {
            	            case BETWEEN_SYMBOL:
            	            	{
            	            		alt619=1;
            	            	}
            	                break;
            	            case LIKE_SYMBOL:
            	            	{
            	            		alt619=2;
            	            	}
            	                break;
            	            case REGEXP_SYMBOL:
            	            	{
            	            		alt619=3;
            	            	}
            	                break;
            	            case IN_SYMBOL:
            	            	{
            	            		alt619=4;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 619;
            	                EXCEPTION->state        = 0;


            	                goto rulepredicateEx;

            	            }

            	            switch (alt619)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2115:6: BETWEEN_SYMBOL ^ bitwise_or_expression AND_SYMBOL predicate
            	        	    {
            	        	        BETWEEN_SYMBOL1972 = (pANTLR3_COMMON_TOKEN) MATCHT(BETWEEN_SYMBOL, &FOLLOW_BETWEEN_SYMBOL_in_predicate10700);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        BETWEEN_SYMBOL1972_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BETWEEN_SYMBOL1972))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BETWEEN_SYMBOL1972_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate10703);
            	        	        bitwise_or_expression1973=bitwise_or_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1973.tree);

            	        	        AND_SYMBOL1974 = (pANTLR3_COMMON_TOKEN) MATCHT(AND_SYMBOL, &FOLLOW_AND_SYMBOL_in_predicate10705);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        AND_SYMBOL1974_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AND_SYMBOL1974));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, AND_SYMBOL1974_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_predicate_in_predicate10707);
            	        	        predicate1975=predicate(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate1975.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2116:8: LIKE_SYMBOL ^ unary_expression ( options {greedy=true; } : ESCAPE_SYMBOL primary )?
            	        	    {
            	        	        LIKE_SYMBOL1976 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_predicate10716);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LIKE_SYMBOL1976_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL1976))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LIKE_SYMBOL1976_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_unary_expression_in_predicate10719);
            	        	        unary_expression1977=unary_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression1977.tree);

            	        	        // MySQL.g:2116:38: ( options {greedy=true; } : ESCAPE_SYMBOL primary )?
            	        	        {
            	        	            int alt618=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case ESCAPE_SYMBOL:
            	        	                	{
            	        	                		alt618=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt618)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:2116:68: ESCAPE_SYMBOL primary
            	        	        	    {
            	        	        	        ESCAPE_SYMBOL1978 = (pANTLR3_COMMON_TOKEN) MATCHT(ESCAPE_SYMBOL, &FOLLOW_ESCAPE_SYMBOL_in_predicate10735);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepredicateEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        ESCAPE_SYMBOL1978_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ESCAPE_SYMBOL1978));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ESCAPE_SYMBOL1978_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_primary_in_predicate10737);
            	        	        	        primary1979=primary(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepredicateEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary1979.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 3:
            	        	    // MySQL.g:2117:8: REGEXP_SYMBOL ^ bitwise_or_expression
            	        	    {
            	        	        REGEXP_SYMBOL1980 = (pANTLR3_COMMON_TOKEN) MATCHT(REGEXP_SYMBOL, &FOLLOW_REGEXP_SYMBOL_in_predicate10748);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        REGEXP_SYMBOL1980_tree = 
            	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REGEXP_SYMBOL1980))
            	        	        ;
            	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REGEXP_SYMBOL1980_tree, root_0));
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate10751);
            	        	        bitwise_or_expression1981=bitwise_or_expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1981.tree);

            	        	    }
            	        	    break;
            	        	case 4:
            	        	    // MySQL.g:2118:8: IN_SYMBOL predicate_in
            	        	    {
            	        	        IN_SYMBOL1982 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_predicate10760);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL1982_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL1982));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL1982_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_predicate_in_in_predicate10762);
            	        	        predicate_in1983=predicate_in(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepredicateEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, predicate_in1983.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2120:9: SOUNDS_SYMBOL ^ LIKE_SYMBOL bitwise_or_expression
            	    {
            	        SOUNDS_SYMBOL1984 = (pANTLR3_COMMON_TOKEN) MATCHT(SOUNDS_SYMBOL, &FOLLOW_SOUNDS_SYMBOL_in_predicate10781);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SOUNDS_SYMBOL1984_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SOUNDS_SYMBOL1984))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, SOUNDS_SYMBOL1984_tree, root_0));
            	        }

            	        LIKE_SYMBOL1985 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_predicate10784);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LIKE_SYMBOL1985_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL1985));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL1985_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_predicate10786);
            	        bitwise_or_expression1986=bitwise_or_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepredicateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression1986.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 predicate_in
 * MySQL.g:2125:1: predicate_in : ({...}? => subquery | expression_list_with_parentheses );
 */
static MySQLParser_predicate_in_return
predicate_in(pMySQLParser ctx)
{
    MySQLParser_predicate_in_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_subquery_return subquery1987;
    #undef	RETURN_TYPE_subquery1987
    #define	RETURN_TYPE_subquery1987 MySQLParser_subquery_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses1988;
    #undef	RETURN_TYPE_expression_list_with_parentheses1988
    #define	RETURN_TYPE_expression_list_with_parentheses1988 MySQLParser_expression_list_with_parentheses_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    subquery1987.tree = NULL;

    expression_list_with_parentheses1988.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2125:13: ({...}? => subquery | expression_list_with_parentheses )

            ANTLR3_UINT32 alt621;

            alt621=2;

            switch ( LA(1) )
            {
            case OPEN_PAR_SYMBOL:
            	{
            		{
            		    int LA621_1 = LA(2);
            		    if ( ((LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL)) && (LA621_1 == SELECT_SYMBOL))
            		    {
            		        alt621=1;
            		    }
            		    else if ( (LA621_1 == OPEN_PAR_SYMBOL))
            		    {
            		        {
            		            int LA621_3 = LA(3);
            		            if ( ((LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL)))
            		            {
            		                alt621=1;
            		            }
            		            else if ( (ANTLR3_TRUE))
            		            {
            		                alt621=2;
            		            }
            		            else
            		            {
            		                if (BACKTRACKING>0)
            		                {
            		                    FAILEDFLAG = ANTLR3_TRUE;
            		                    return retval;
            		                }


            		                CONSTRUCTEX();
            		                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		                EXCEPTION->message      = (void *)"";
            		                EXCEPTION->decisionNum  = 621;
            		                EXCEPTION->state        = 3;


            		                goto rulepredicate_inEx;

            		            }
            		        }
            		    }
            		    else if ( (((LA621_1 >= ACCOUNT_SYMBOL) && (LA621_1 <= YEAR_SYMBOL)) || ((LA621_1 >= AT_AT_SIGN_SYMBOL) && (LA621_1 <= AT_TEXT_SUFFIX)) || LA621_1 == BACK_TICK_QUOTED_ID || ((LA621_1 >= BINARY_SYMBOL) && (LA621_1 <= BIN_NUMBER)) || LA621_1 == BITWISE_NOT_OPERATOR || ((LA621_1 >= BIT_AND_SYMBOL) && (LA621_1 <= BIT_XOR_SYMBOL)) || ((LA621_1 >= CASE_SYMBOL) && (LA621_1 <= CAST_SYMBOL)) || LA621_1 == CHAR_SYMBOL || ((LA621_1 >= CONVERT_SYMBOL) && (LA621_1 <= COUNT_SYMBOL)) || LA621_1 == CURDATE_SYMBOL || LA621_1 == CURRENT_USER_SYMBOL || LA621_1 == CURTIME_SYMBOL || LA621_1 == DATABASE_SYMBOL || LA621_1 == DATE_ADD_SYMBOL || LA621_1 == DATE_SUB_SYMBOL || LA621_1 == DECIMAL_NUMBER || LA621_1 == DOT_SYMBOL || LA621_1 == DOUBLE_QUOTED_TEXT || LA621_1 == EXISTS_SYMBOL || ((LA621_1 >= EXTRACT_SYMBOL) && (LA621_1 <= FALSE_SYMBOL)) || LA621_1 == FLOAT_NUMBER || LA621_1 == GROUP_CONCAT_SYMBOL || LA621_1 == HEX_NUMBER || ((LA621_1 >= IDENTIFIER) && (LA621_1 <= IF_SYMBOL)) || LA621_1 == INSERT_SYMBOL || LA621_1 == INTERVAL_SYMBOL || LA621_1 == INT_NUMBER || LA621_1 == LEFT_SYMBOL || LA621_1 == LOGICAL_NOT_OPERATOR || LA621_1 == LONG_NUMBER || LA621_1 == MATCH_SYMBOL || LA621_1 == MAX_SYMBOL || LA621_1 == MINUS_OPERATOR || LA621_1 == MIN_SYMBOL || LA621_1 == MOD_SYMBOL || LA621_1 == NCHAR_TEXT || LA621_1 == NOT2_SYMBOL || ((LA621_1 >= NOT_SYMBOL) && (LA621_1 <= NOW_SYMBOL)) || LA621_1 == NULL2_SYMBOL || LA621_1 == NULL_SYMBOL || LA621_1 == OPEN_CURLY_SYMBOL || LA621_1 == PARAM_MARKER || ((LA621_1 >= PLUS_OPERATOR) && (LA621_1 <= POSITION_SYMBOL)) || ((LA621_1 >= REPEAT_SYMBOL) && (LA621_1 <= REPLACE_SYMBOL)) || LA621_1 == RIGHT_SYMBOL || LA621_1 == SINGLE_QUOTED_TEXT || LA621_1 == STDDEV_SAMP_SYMBOL || LA621_1 == STD_SYMBOL || LA621_1 == SUBSTRING_SYMBOL || ((LA621_1 >= SUM_SYMBOL) && (LA621_1 <= SYSDATE_SYMBOL)) || ((LA621_1 >= TRIM_SYMBOL) && (LA621_1 <= TRUE_SYMBOL)) || LA621_1 == ULONGLONG_NUMBER || LA621_1 == UNDERSCORE_CHARSET || ((LA621_1 >= UTC_DATE_SYMBOL) && (LA621_1 <= UTC_TIME_SYMBOL)) || LA621_1 == VALUES_SYMBOL || LA621_1 == VARIANCE_SYMBOL || LA621_1 == VAR_SAMP_SYMBOL))
            		    {
            		        alt621=2;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 621;
            		        EXCEPTION->state        = 1;


            		        goto rulepredicate_inEx;

            		    }
            		}
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 621;
                EXCEPTION->state        = 0;


                goto rulepredicate_inEx;

            }

            switch (alt621)
            {
        	case 1:
        	    // MySQL.g:2126:2: {...}? => subquery
        	    {
        	        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 *)"predicate_in";


        	        }

        	        FOLLOWPUSH(FOLLOW_subquery_in_predicate_in10805);
        	        subquery1987=subquery(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepredicate_inEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery1987.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2127:4: expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_predicate_in10810);
        	        expression_list_with_parentheses1988=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepredicate_inEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses1988.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulepredicate_inEx; /* Prevent compiler warnings */
    rulepredicate_inEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_in */

/**
 * $ANTLR start bitwise_or_expression
 * MySQL.g:2130: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_OPERATOR1990;
    MySQLParser_bitwise_and_expression_return bitwise_and_expression1989;
    #undef	RETURN_TYPE_bitwise_and_expression1989
    #define	RETURN_TYPE_bitwise_and_expression1989 MySQLParser_bitwise_and_expression_return

    MySQLParser_bitwise_and_expression_return bitwise_and_expression1991;
    #undef	RETURN_TYPE_bitwise_and_expression1991
    #define	RETURN_TYPE_bitwise_and_expression1991 MySQLParser_bitwise_and_expression_return

    pANTLR3_BASE_TREE BITWISE_OR_OPERATOR1990_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_OR_OPERATOR1990       = NULL;
    bitwise_and_expression1989.tree = NULL;

    bitwise_and_expression1991.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_OR_OPERATOR1990_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2130:22: ( bitwise_and_expression ( options {greedy=true; } : BITWISE_OR_OPERATOR ^ bitwise_and_expression )* )
        // MySQL.g:2131: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_expression10819);
            bitwise_and_expression1989=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_expression1989.tree);

            // MySQL.g:2131:25: ( options {greedy=true; } : BITWISE_OR_OPERATOR ^ bitwise_and_expression )*

            for (;;)
            {
                int alt622=2;
                switch ( LA(1) )
                {
                case BITWISE_OR_OPERATOR:
                	{
                		alt622=1;
                	}
                    break;

                }

                switch (alt622)
                {
            	case 1:
            	    // MySQL.g:2131:55: BITWISE_OR_OPERATOR ^ bitwise_and_expression
            	    {
            	        BITWISE_OR_OPERATOR1990 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_OR_OPERATOR, &FOLLOW_BITWISE_OR_OPERATOR_in_bitwise_or_expression10835);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_or_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_OR_OPERATOR1990_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_OR_OPERATOR1990))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_OR_OPERATOR1990_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_bitwise_and_expression_in_bitwise_or_expression10838);
            	        bitwise_and_expression1991=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_expression1991.tree);

            	    }
            	    break;

            	default:
            	    goto loop622;	/* break out of the loop */
            	    break;
                }
            }
            loop622: ; /* 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:2134: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_OPERATOR1993;
    MySQLParser_shift_expression_return shift_expression1992;
    #undef	RETURN_TYPE_shift_expression1992
    #define	RETURN_TYPE_shift_expression1992 MySQLParser_shift_expression_return

    MySQLParser_shift_expression_return shift_expression1994;
    #undef	RETURN_TYPE_shift_expression1994
    #define	RETURN_TYPE_shift_expression1994 MySQLParser_shift_expression_return

    pANTLR3_BASE_TREE BITWISE_AND_OPERATOR1993_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_AND_OPERATOR1993       = NULL;
    shift_expression1992.tree = NULL;

    shift_expression1994.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_AND_OPERATOR1993_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2134:23: ( shift_expression ( options {greedy=true; } : BITWISE_AND_OPERATOR ^ shift_expression )* )
        // MySQL.g:2135: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_expression10849);
            shift_expression1992=shift_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebitwise_and_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, shift_expression1992.tree);

            // MySQL.g:2135:19: ( options {greedy=true; } : BITWISE_AND_OPERATOR ^ shift_expression )*

            for (;;)
            {
                int alt623=2;
                switch ( LA(1) )
                {
                case BITWISE_AND_OPERATOR:
                	{
                		alt623=1;
                	}
                    break;

                }

                switch (alt623)
                {
            	case 1:
            	    // MySQL.g:2135:49: BITWISE_AND_OPERATOR ^ shift_expression
            	    {
            	        BITWISE_AND_OPERATOR1993 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_AND_OPERATOR, &FOLLOW_BITWISE_AND_OPERATOR_in_bitwise_and_expression10865);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_and_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_AND_OPERATOR1993_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_AND_OPERATOR1993))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_AND_OPERATOR1993_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_shift_expression_in_bitwise_and_expression10868);
            	        shift_expression1994=shift_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_and_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, shift_expression1994.tree);

            	    }
            	    break;

            	default:
            	    goto loop623;	/* break out of the loop */
            	    break;
                }
            }
            loop623: ; /* 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:2138: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    set1996;
    MySQLParser_additive_expression_return additive_expression1995;
    #undef	RETURN_TYPE_additive_expression1995
    #define	RETURN_TYPE_additive_expression1995 MySQLParser_additive_expression_return

    MySQLParser_additive_expression_return additive_expression1997;
    #undef	RETURN_TYPE_additive_expression1997
    #define	RETURN_TYPE_additive_expression1997 MySQLParser_additive_expression_return

    pANTLR3_BASE_TREE set1996_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1996       = NULL;
    additive_expression1995.tree = NULL;

    additive_expression1997.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1996_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2138:17: ( additive_expression ( options {greedy=true; } : ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression )* )
        // MySQL.g:2139: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_expression10879);
            additive_expression1995=additive_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleshift_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, additive_expression1995.tree);

            // MySQL.g:2139:22: ( options {greedy=true; } : ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression )*

            for (;;)
            {
                int alt624=2;
                switch ( LA(1) )
                {
                case SHIFT_LEFT_OPERATOR:
                case SHIFT_RIGHT_OPERATOR:
                	{
                		alt624=1;
                	}
                    break;

                }

                switch (alt624)
                {
            	case 1:
            	    // MySQL.g:2139:52: ( SHIFT_LEFT_OPERATOR | SHIFT_RIGHT_OPERATOR ) ^ additive_expression
            	    {
            	        set1996=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1996=(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, set1996))
            	            , 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_expression10904);
            	        additive_expression1997=additive_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleshift_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, additive_expression1997.tree);

            	    }
            	    break;

            	default:
            	    goto loop624;	/* break out of the loop */
            	    break;
                }
            }
            loop624: ; /* 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:2142: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    set1999;
    MySQLParser_multiplicative_expression_return multiplicative_expression1998;
    #undef	RETURN_TYPE_multiplicative_expression1998
    #define	RETURN_TYPE_multiplicative_expression1998 MySQLParser_multiplicative_expression_return

    MySQLParser_multiplicative_expression_return multiplicative_expression2000;
    #undef	RETURN_TYPE_multiplicative_expression2000
    #define	RETURN_TYPE_multiplicative_expression2000 MySQLParser_multiplicative_expression_return

    pANTLR3_BASE_TREE set1999_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set1999       = NULL;
    multiplicative_expression1998.tree = NULL;

    multiplicative_expression2000.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set1999_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2142:20: ( multiplicative_expression ( options {greedy=true; } : ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression )* )
        // MySQL.g:2143: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_expression10915);
            multiplicative_expression1998=multiplicative_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleadditive_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, multiplicative_expression1998.tree);

            // MySQL.g:2143:28: ( options {greedy=true; } : ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression )*

            for (;;)
            {
                int alt625=2;
                switch ( LA(1) )
                {
                case MINUS_OPERATOR:
                case PLUS_OPERATOR:
                	{
                		alt625=1;
                	}
                    break;

                }

                switch (alt625)
                {
            	case 1:
            	    // MySQL.g:2143:57: ( PLUS_OPERATOR | MINUS_OPERATOR ) ^ multiplicative_expression
            	    {
            	        set1999=(pANTLR3_COMMON_TOKEN)LT(1);

            	        set1999=(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, set1999))
            	            , 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_expression10940);
            	        multiplicative_expression2000=multiplicative_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleadditive_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, multiplicative_expression2000.tree);

            	    }
            	    break;

            	default:
            	    goto loop625;	/* break out of the loop */
            	    break;
                }
            }
            loop625: ; /* 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:2146: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_expression2001;
    #undef	RETURN_TYPE_bitwise_xor_expression2001
    #define	RETURN_TYPE_bitwise_xor_expression2001 MySQLParser_bitwise_xor_expression_return

    MySQLParser_multiplication_operator_return multiplication_operator2002;
    #undef	RETURN_TYPE_multiplication_operator2002
    #define	RETURN_TYPE_multiplication_operator2002 MySQLParser_multiplication_operator_return

    MySQLParser_bitwise_xor_expression_return bitwise_xor_expression2003;
    #undef	RETURN_TYPE_bitwise_xor_expression2003
    #define	RETURN_TYPE_bitwise_xor_expression2003 MySQLParser_bitwise_xor_expression_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    bitwise_xor_expression2001.tree = NULL;

    multiplication_operator2002.tree = NULL;

    bitwise_xor_expression2003.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2146:26: ( bitwise_xor_expression ( options {greedy=true; } : multiplication_operator ^ bitwise_xor_expression )* )
        // MySQL.g:2147: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_expression10951);
            bitwise_xor_expression2001=bitwise_xor_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulemultiplicative_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_xor_expression2001.tree);

            // MySQL.g:2147:25: ( options {greedy=true; } : multiplication_operator ^ bitwise_xor_expression )*

            for (;;)
            {
                int alt626=2;
                switch ( LA(1) )
                {
                case DIV_OPERATOR:
                case DIV_SYMBOL:
                case MOD_OPERATOR:
                case MOD_SYMBOL:
                case MULT_OPERATOR:
                	{
                		alt626=1;
                	}
                    break;

                }

                switch (alt626)
                {
            	case 1:
            	    // MySQL.g:2147:55: multiplication_operator ^ bitwise_xor_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_multiplication_operator_in_multiplicative_expression10967);
            	        multiplication_operator2002=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_operator2002.tree, root_0));

            	        FOLLOWPUSH(FOLLOW_bitwise_xor_expression_in_multiplicative_expression10970);
            	        bitwise_xor_expression2003=bitwise_xor_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulemultiplicative_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_xor_expression2003.tree);

            	    }
            	    break;

            	default:
            	    goto loop626;	/* break out of the loop */
            	    break;
                }
            }
            loop626: ; /* 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:2150: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_OPERATOR2005;
    MySQLParser_concat_expression_return concat_expression2004;
    #undef	RETURN_TYPE_concat_expression2004
    #define	RETURN_TYPE_concat_expression2004 MySQLParser_concat_expression_return

    MySQLParser_concat_expression_return concat_expression2006;
    #undef	RETURN_TYPE_concat_expression2006
    #define	RETURN_TYPE_concat_expression2006 MySQLParser_concat_expression_return

    pANTLR3_BASE_TREE BITWISE_XOR_OPERATOR2005_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BITWISE_XOR_OPERATOR2005       = NULL;
    concat_expression2004.tree = NULL;

    concat_expression2006.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BITWISE_XOR_OPERATOR2005_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2150:23: ( concat_expression ( options {greedy=true; } : BITWISE_XOR_OPERATOR ^ concat_expression )* )
        // MySQL.g:2151: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_expression10981);
            concat_expression2004=concat_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebitwise_xor_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, concat_expression2004.tree);

            // MySQL.g:2151:20: ( options {greedy=true; } : BITWISE_XOR_OPERATOR ^ concat_expression )*

            for (;;)
            {
                int alt627=2;
                switch ( LA(1) )
                {
                case BITWISE_XOR_OPERATOR:
                	{
                		alt627=1;
                	}
                    break;

                }

                switch (alt627)
                {
            	case 1:
            	    // MySQL.g:2151:50: BITWISE_XOR_OPERATOR ^ concat_expression
            	    {
            	        BITWISE_XOR_OPERATOR2005 = (pANTLR3_COMMON_TOKEN) MATCHT(BITWISE_XOR_OPERATOR, &FOLLOW_BITWISE_XOR_OPERATOR_in_bitwise_xor_expression10997);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BITWISE_XOR_OPERATOR2005_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BITWISE_XOR_OPERATOR2005))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BITWISE_XOR_OPERATOR2005_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_concat_expression_in_bitwise_xor_expression11000);
            	        concat_expression2006=concat_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebitwise_xor_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, concat_expression2006.tree);

            	    }
            	    break;

            	default:
            	    goto loop627;	/* break out of the loop */
            	    break;
                }
            }
            loop627: ; /* 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:2155: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_SYMBOL2008;
    MySQLParser_unary_expression_return unary_expression2007;
    #undef	RETURN_TYPE_unary_expression2007
    #define	RETURN_TYPE_unary_expression2007 MySQLParser_unary_expression_return

    MySQLParser_unary_expression_return unary_expression2009;
    #undef	RETURN_TYPE_unary_expression2009
    #define	RETURN_TYPE_unary_expression2009 MySQLParser_unary_expression_return

    pANTLR3_BASE_TREE CONCAT_PIPES_SYMBOL2008_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONCAT_PIPES_SYMBOL2008       = NULL;
    unary_expression2007.tree = NULL;

    unary_expression2009.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONCAT_PIPES_SYMBOL2008_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2155:18: ( unary_expression ( options {greedy=true; } : CONCAT_PIPES_SYMBOL ^ unary_expression )* )
        // MySQL.g:2156: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_expression11012);
            unary_expression2007=unary_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleconcat_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression2007.tree);

            // MySQL.g:2156:19: ( options {greedy=true; } : CONCAT_PIPES_SYMBOL ^ unary_expression )*

            for (;;)
            {
                int alt628=2;
                switch ( LA(1) )
                {
                case CONCAT_PIPES_SYMBOL:
                	{
                		alt628=1;
                	}
                    break;

                }

                switch (alt628)
                {
            	case 1:
            	    // MySQL.g:2156:49: CONCAT_PIPES_SYMBOL ^ unary_expression
            	    {
            	        CONCAT_PIPES_SYMBOL2008 = (pANTLR3_COMMON_TOKEN) MATCHT(CONCAT_PIPES_SYMBOL, &FOLLOW_CONCAT_PIPES_SYMBOL_in_concat_expression11028);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleconcat_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONCAT_PIPES_SYMBOL2008_tree = 
            	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONCAT_PIPES_SYMBOL2008))
            	        ;
            	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CONCAT_PIPES_SYMBOL2008_tree, root_0));
            	        }

            	        FOLLOWPUSH(FOLLOW_unary_expression_in_concat_expression11031);
            	        unary_expression2009=unary_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleconcat_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression2009.tree);

            	    }
            	    break;

            	default:
            	    goto loop628;	/* break out of the loop */
            	    break;
                }
            }
            loop628: ; /* 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:2159: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    set2010;
    MySQLParser_unary_expression_return unary_expression2011;
    #undef	RETURN_TYPE_unary_expression2011
    #define	RETURN_TYPE_unary_expression2011 MySQLParser_unary_expression_return

    MySQLParser_not_expression_return not_expression2012;
    #undef	RETURN_TYPE_not_expression2012
    #define	RETURN_TYPE_not_expression2012 MySQLParser_not_expression_return

    pANTLR3_BASE_TREE set2010_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2010       = NULL;
    unary_expression2011.tree = NULL;

    not_expression2012.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2010_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2159:17: ( ( PLUS_OPERATOR | MINUS_OPERATOR | BITWISE_NOT_OPERATOR ) unary_expression | not_expression )

            ANTLR3_UINT32 alt629;

            alt629=2;

            {
                int LA629_0 = LA(1);
                if ( (LA629_0 == BITWISE_NOT_OPERATOR || LA629_0 == MINUS_OPERATOR || LA629_0 == PLUS_OPERATOR))
                {
                    alt629=1;
                }
                else if ( (((LA629_0 >= ACCOUNT_SYMBOL) && (LA629_0 <= YEAR_SYMBOL)) || ((LA629_0 >= AT_AT_SIGN_SYMBOL) && (LA629_0 <= AT_TEXT_SUFFIX)) || LA629_0 == BACK_TICK_QUOTED_ID || ((LA629_0 >= BINARY_SYMBOL) && (LA629_0 <= BIN_NUMBER)) || ((LA629_0 >= BIT_AND_SYMBOL) && (LA629_0 <= BIT_XOR_SYMBOL)) || ((LA629_0 >= CASE_SYMBOL) && (LA629_0 <= CAST_SYMBOL)) || LA629_0 == CHAR_SYMBOL || ((LA629_0 >= CONVERT_SYMBOL) && (LA629_0 <= COUNT_SYMBOL)) || LA629_0 == CURDATE_SYMBOL || LA629_0 == CURRENT_USER_SYMBOL || LA629_0 == CURTIME_SYMBOL || LA629_0 == DATABASE_SYMBOL || LA629_0 == DATE_ADD_SYMBOL || LA629_0 == DATE_SUB_SYMBOL || LA629_0 == DECIMAL_NUMBER || LA629_0 == DOT_SYMBOL || LA629_0 == DOUBLE_QUOTED_TEXT || LA629_0 == EXISTS_SYMBOL || ((LA629_0 >= EXTRACT_SYMBOL) && (LA629_0 <= FALSE_SYMBOL)) || LA629_0 == FLOAT_NUMBER || LA629_0 == GROUP_CONCAT_SYMBOL || LA629_0 == HEX_NUMBER || ((LA629_0 >= IDENTIFIER) && (LA629_0 <= IF_SYMBOL)) || LA629_0 == INSERT_SYMBOL || LA629_0 == INTERVAL_SYMBOL || LA629_0 == INT_NUMBER || LA629_0 == LEFT_SYMBOL || LA629_0 == LOGICAL_NOT_OPERATOR || LA629_0 == LONG_NUMBER || LA629_0 == MATCH_SYMBOL || LA629_0 == MAX_SYMBOL || LA629_0 == MIN_SYMBOL || LA629_0 == MOD_SYMBOL || LA629_0 == NCHAR_TEXT || LA629_0 == NOT2_SYMBOL || LA629_0 == NOW_SYMBOL || LA629_0 == NULL2_SYMBOL || LA629_0 == NULL_SYMBOL || ((LA629_0 >= OPEN_CURLY_SYMBOL) && (LA629_0 <= OPEN_PAR_SYMBOL)) || LA629_0 == PARAM_MARKER || LA629_0 == POSITION_SYMBOL || ((LA629_0 >= REPEAT_SYMBOL) && (LA629_0 <= REPLACE_SYMBOL)) || LA629_0 == RIGHT_SYMBOL || LA629_0 == SINGLE_QUOTED_TEXT || LA629_0 == STDDEV_SAMP_SYMBOL || LA629_0 == STD_SYMBOL || LA629_0 == SUBSTRING_SYMBOL || ((LA629_0 >= SUM_SYMBOL) && (LA629_0 <= SYSDATE_SYMBOL)) || ((LA629_0 >= TRIM_SYMBOL) && (LA629_0 <= TRUE_SYMBOL)) || LA629_0 == ULONGLONG_NUMBER || LA629_0 == UNDERSCORE_CHARSET || ((LA629_0 >= UTC_DATE_SYMBOL) && (LA629_0 <= UTC_TIME_SYMBOL)) || LA629_0 == VALUES_SYMBOL || LA629_0 == VARIANCE_SYMBOL || LA629_0 == VAR_SAMP_SYMBOL))
                {
                    alt629=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 629;
                    EXCEPTION->state        = 0;


                    goto ruleunary_expressionEx;

                }
            }
            switch (alt629)
            {
        	case 1:
        	    // MySQL.g:2160:2: ( PLUS_OPERATOR | MINUS_OPERATOR | BITWISE_NOT_OPERATOR ) unary_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set2010=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == BITWISE_NOT_OPERATOR || LA(1) == MINUS_OPERATOR || LA(1) == PLUS_OPERATOR )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2010))
        	            );
        	            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_expression11054);
        	        unary_expression2011=unary_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunary_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unary_expression2011.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2161:4: not_expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_not_expression_in_unary_expression11059);
        	        not_expression2012=not_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunary_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not_expression2012.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:2164: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_rule2013;
    #undef	RETURN_TYPE_not2_rule2013
    #define	RETURN_TYPE_not2_rule2013 MySQLParser_not2_rule_return

    MySQLParser_interval_expression_return interval_expression2014;
    #undef	RETURN_TYPE_interval_expression2014
    #define	RETURN_TYPE_interval_expression2014 MySQLParser_interval_expression_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    not2_rule2013.tree = NULL;

    interval_expression2014.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2164:15: ( ( not2_rule )? interval_expression )
        // MySQL.g:2165:2: ( not2_rule )? interval_expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2165:2: ( not2_rule )?
            {
                int alt630=2;
                switch ( LA(1) )
                {
                    case LOGICAL_NOT_OPERATOR:
                    case NOT2_SYMBOL:
                    	{
                    		alt630=1;
                    	}
                        break;
                }

                switch (alt630)
                {
            	case 1:
            	    // MySQL.g:2165:2: not2_rule
            	    {
            	        FOLLOWPUSH(FOLLOW_not2_rule_in_not_expression11068);
            	        not2_rule2013=not2_rule(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulenot_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not2_rule2013.tree);

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_interval_expression_in_not_expression11071);
            interval_expression2014=interval_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulenot_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_expression2014.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:2168: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_SYMBOL2015;
    MySQLParser_interval_function_return interval_function2016;
    #undef	RETURN_TYPE_interval_function2016
    #define	RETURN_TYPE_interval_function2016 MySQLParser_interval_function_return

    MySQLParser_interval_time_span_return interval_time_span2017;
    #undef	RETURN_TYPE_interval_time_span2017
    #define	RETURN_TYPE_interval_time_span2017 MySQLParser_interval_time_span_return

    MySQLParser_primary_return primary2018;
    #undef	RETURN_TYPE_primary2018
    #define	RETURN_TYPE_primary2018 MySQLParser_primary_return

    pANTLR3_BASE_TREE INTERVAL_SYMBOL2015_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INTERVAL_SYMBOL2015       = NULL;
    interval_function2016.tree = NULL;

    interval_time_span2017.tree = NULL;

    primary2018.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INTERVAL_SYMBOL2015_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2168:20: ( INTERVAL_SYMBOL ! ( ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function | interval_time_span ) | primary )

            ANTLR3_UINT32 alt632;

            alt632=2;

            {
                int LA632_0 = LA(1);
                if ( (LA632_0 == INTERVAL_SYMBOL))
                {
                    alt632=1;
                }
                else if ( (((LA632_0 >= ACCOUNT_SYMBOL) && (LA632_0 <= YEAR_SYMBOL)) || ((LA632_0 >= AT_AT_SIGN_SYMBOL) && (LA632_0 <= AT_TEXT_SUFFIX)) || LA632_0 == BACK_TICK_QUOTED_ID || ((LA632_0 >= BINARY_SYMBOL) && (LA632_0 <= BIN_NUMBER)) || ((LA632_0 >= BIT_AND_SYMBOL) && (LA632_0 <= BIT_XOR_SYMBOL)) || ((LA632_0 >= CASE_SYMBOL) && (LA632_0 <= CAST_SYMBOL)) || LA632_0 == CHAR_SYMBOL || ((LA632_0 >= CONVERT_SYMBOL) && (LA632_0 <= COUNT_SYMBOL)) || LA632_0 == CURDATE_SYMBOL || LA632_0 == CURRENT_USER_SYMBOL || LA632_0 == CURTIME_SYMBOL || LA632_0 == DATABASE_SYMBOL || LA632_0 == DATE_ADD_SYMBOL || LA632_0 == DATE_SUB_SYMBOL || LA632_0 == DECIMAL_NUMBER || LA632_0 == DOT_SYMBOL || LA632_0 == DOUBLE_QUOTED_TEXT || LA632_0 == EXISTS_SYMBOL || ((LA632_0 >= EXTRACT_SYMBOL) && (LA632_0 <= FALSE_SYMBOL)) || LA632_0 == FLOAT_NUMBER || LA632_0 == GROUP_CONCAT_SYMBOL || LA632_0 == HEX_NUMBER || ((LA632_0 >= IDENTIFIER) && (LA632_0 <= IF_SYMBOL)) || LA632_0 == INSERT_SYMBOL || LA632_0 == INT_NUMBER || LA632_0 == LEFT_SYMBOL || LA632_0 == LONG_NUMBER || LA632_0 == MATCH_SYMBOL || LA632_0 == MAX_SYMBOL || LA632_0 == MIN_SYMBOL || LA632_0 == MOD_SYMBOL || LA632_0 == NCHAR_TEXT || LA632_0 == NOW_SYMBOL || LA632_0 == NULL2_SYMBOL || LA632_0 == NULL_SYMBOL || ((LA632_0 >= OPEN_CURLY_SYMBOL) && (LA632_0 <= OPEN_PAR_SYMBOL)) || LA632_0 == PARAM_MARKER || LA632_0 == POSITION_SYMBOL || ((LA632_0 >= REPEAT_SYMBOL) && (LA632_0 <= REPLACE_SYMBOL)) || LA632_0 == RIGHT_SYMBOL || LA632_0 == SINGLE_QUOTED_TEXT || LA632_0 == STDDEV_SAMP_SYMBOL || LA632_0 == STD_SYMBOL || LA632_0 == SUBSTRING_SYMBOL || ((LA632_0 >= SUM_SYMBOL) && (LA632_0 <= SYSDATE_SYMBOL)) || ((LA632_0 >= TRIM_SYMBOL) && (LA632_0 <= TRUE_SYMBOL)) || LA632_0 == ULONGLONG_NUMBER || LA632_0 == UNDERSCORE_CHARSET || ((LA632_0 >= UTC_DATE_SYMBOL) && (LA632_0 <= UTC_TIME_SYMBOL)) || LA632_0 == VALUES_SYMBOL || LA632_0 == VARIANCE_SYMBOL || LA632_0 == VAR_SAMP_SYMBOL))
                {
                    alt632=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 632;
                    EXCEPTION->state        = 0;


                    goto ruleinterval_expressionEx;

                }
            }
            switch (alt632)
            {
        	case 1:
        	    // MySQL.g:2169:2: INTERVAL_SYMBOL ! ( ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function | interval_time_span )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INTERVAL_SYMBOL2015 = (pANTLR3_COMMON_TOKEN) MATCHT(INTERVAL_SYMBOL, &FOLLOW_INTERVAL_SYMBOL_in_interval_expression11080);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }


        	        // MySQL.g:2170:3: ( ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function | interval_time_span )
        	        {
        	            int alt631=2;
        	            {
        	                int LA631_0 = LA(1);
        	                if ( (LA631_0 == OPEN_PAR_SYMBOL))
        	                {
        	                    {
        	                        int LA631_1 = LA(2);
        	                        if ( (LA631_1 == NOT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_103 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 103;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == BITWISE_NOT_OPERATOR || LA631_1 == MINUS_OPERATOR || LA631_1 == PLUS_OPERATOR))
        	                        {
        	                            {
        	                                int LA631_104 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 104;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == LOGICAL_NOT_OPERATOR || LA631_1 == NOT2_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_105 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 105;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == INTERVAL_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_106 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 106;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == NCHAR_TEXT))
        	                        {
        	                            {
        	                                int LA631_107 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 107;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == UNDERSCORE_CHARSET))
        	                        {
        	                            {
        	                                int LA631_108 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 108;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == SINGLE_QUOTED_TEXT))
        	                        {
        	                            {
        	                                int LA631_109 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 109;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == DOUBLE_QUOTED_TEXT))
        	                        {
        	                            {
        	                                int LA631_110 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 110;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == DECIMAL_NUMBER || LA631_1 == FLOAT_NUMBER || LA631_1 == INT_NUMBER || LA631_1 == LONG_NUMBER || LA631_1 == ULONGLONG_NUMBER))
        	                        {
        	                            {
        	                                int LA631_111 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 111;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == DATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_112 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 112;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == TIME_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_113 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 113;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == TIMESTAMP_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_114 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 114;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == NULL2_SYMBOL || LA631_1 == NULL_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_115 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 115;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == FALSE_SYMBOL || LA631_1 == TRUE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_116 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 116;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == HEX_NUMBER))
        	                        {
        	                            {
        	                                int LA631_117 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 117;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == BIN_NUMBER))
        	                        {
        	                            {
        	                                int LA631_118 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 118;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CHAR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_119 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 119;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CURRENT_USER_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_120 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 120;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == DAY_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_121 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 121;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == HOUR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_122 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 122;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == INSERT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_123 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 123;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == LEFT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_124 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 124;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MINUTE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_125 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 125;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MONTH_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_126 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 126;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == RIGHT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_127 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 127;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == SECOND_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_128 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 128;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == TRIM_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_129 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 129;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == USER_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_130 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 130;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == VALUES_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_131 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 131;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == YEAR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_132 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 132;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == ADDDATE_SYMBOL || LA631_1 == SUBDATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_133 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 133;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CURDATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_134 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 134;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CURTIME_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_135 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 135;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == DATE_ADD_SYMBOL || LA631_1 == DATE_SUB_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_136 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 136;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == EXTRACT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_137 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 137;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == GET_FORMAT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_138 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 138;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == NOW_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_139 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 139;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == POSITION_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_140 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 140;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == SUBSTRING_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_141 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 141;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == SYSDATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_142 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 142;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (((LA631_1 >= TIMESTAMP_ADD_SYMBOL) && (LA631_1 <= TIMESTAMP_DIFF_SYMBOL))))
        	                        {
        	                            {
        	                                int LA631_143 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 143;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == UTC_DATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_144 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 144;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == UTC_TIME_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_145 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 145;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == UTC_TIMESTAMP_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_146 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 146;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == ASCII_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_147 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 147;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CHARSET_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_148 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 148;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == COALESCE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_149 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 149;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == COLLATION_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_150 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 150;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == DATABASE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_151 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 151;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == IF_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_152 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 152;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == FORMAT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_153 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 153;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MICROSECOND_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_154 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 154;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MOD_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_155 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 155;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == OLD_PASSWORD_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_156 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 156;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == PASSWORD_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_157 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 157;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == QUARTER_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_158 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 158;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == REPEAT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_159 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 159;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == REPLACE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_160 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 160;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == REVERSE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_161 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 161;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == ROW_COUNT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_162 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 162;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == TRUNCATE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_163 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 163;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == WEEK_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_164 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 164;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == WEIGHT_STRING_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_165 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 165;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == GEOMETRYCOLLECTION_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_166 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 166;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == LINESTRING_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_167 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 167;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MULTILINESTRING_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_168 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 168;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MULTIPOINT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_169 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 169;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MULTIPOLYGON_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_170 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 170;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == POINT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_171 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 171;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == POLYGON_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_172 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 172;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CONTAINS_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_173 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 173;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == AVG_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_174 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 174;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == BIT_AND_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_175 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 175;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == BIT_OR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_176 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 176;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == BIT_XOR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_177 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 177;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == COUNT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_178 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 178;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MIN_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_179 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 179;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MAX_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_180 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 180;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == STD_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_181 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 181;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == VARIANCE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_182 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 182;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == STDDEV_SAMP_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_183 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 183;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == VAR_SAMP_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_184 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 184;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == SUM_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_185 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 185;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == GROUP_CONCAT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_186 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 186;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == IDENTIFIER))
        	                        {
        	                            {
        	                                int LA631_187 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 187;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == BACK_TICK_QUOTED_ID))
        	                        {
        	                            {
        	                                int LA631_188 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 188;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == ROW_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_189 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 189;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == ACCOUNT_SYMBOL || ((LA631_1 >= ALWAYS_SYMBOL) && (LA631_1 <= CACHE_SYMBOL)) || ((LA631_1 >= CHECKSUM_SYMBOL) && (LA631_1 <= COMMIT_SYMBOL)) || ((LA631_1 >= DEALLOCATE_SYMBOL) && (LA631_1 <= FOLLOWS_SYMBOL)) || ((LA631_1 >= GROUP_REPLICATION_SYMBOL) && (LA631_1 <= STOP_SYMBOL)) || ((LA631_1 >= UNICODE_SYMBOL) && (LA631_1 <= XA_SYMBOL)) || LA631_1 == SHUTDOWN_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_190 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 190;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == DOT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_191 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 191;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == PARAM_MARKER))
        	                        {
        	                            {
        	                                int LA631_192 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 192;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == AT_SIGN_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_193 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 193;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == AT_TEXT_SUFFIX))
        	                        {
        	                            {
        	                                int LA631_194 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 194;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == AT_AT_SIGN_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_195 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 195;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == EXISTS_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_196 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 196;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == OPEN_PAR_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_197 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 197;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == ACTION_SYMBOL || ((LA631_1 >= AFTER_SYMBOL) && (LA631_1 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA631_1 >= BINLOG_SYMBOL) && (LA631_1 <= CLASS_ORIGIN_SYMBOL)) || LA631_1 == CODE_SYMBOL || ((LA631_1 >= COLUMN_NAME_SYMBOL) && (LA631_1 <= DATETIME_SYMBOL)) || ((LA631_1 >= DEFAULT_AUTH_SYMBOL) && (LA631_1 <= GEOMETRY_SYMBOL)) || ((LA631_1 >= GRANTS_SYMBOL) && (LA631_1 <= HOSTS_SYMBOL)) || ((LA631_1 >= IDENTIFIED_SYMBOL) && (LA631_1 <= LEVEL_SYMBOL)) || ((LA631_1 >= LIST_SYMBOL) && (LA631_1 <= MESSAGE_TEXT_SYMBOL)) || LA631_1 == MIGRATE_SYMBOL || ((LA631_1 >= MIN_ROWS_SYMBOL) && (LA631_1 <= MODE_SYMBOL)) || ((LA631_1 >= MUTEX_SYMBOL) && (LA631_1 <= OFFSET_SYMBOL)) || ((LA631_1 >= ONE_SHOT_SYMBOL) && (LA631_1 <= PARTITIONS_SYMBOL)) || ((LA631_1 >= PHASE_SYMBOL) && (LA631_1 <= PLUGINS_SYMBOL)) || ((LA631_1 >= PRESERVE_SYMBOL) && (LA631_1 <= PROXY_SYMBOL)) || ((LA631_1 >= QUERY_SYMBOL) && (LA631_1 <= RETURNS_SYMBOL)) || ((LA631_1 >= ROLLUP_SYMBOL) && (LA631_1 <= ROWS_SYMBOL)) || LA631_1 == ROW_FORMAT_SYMBOL || ((LA631_1 >= RTREE_SYMBOL) && (LA631_1 <= SCHEMA_NAME_SYMBOL)) || ((LA631_1 >= SERIAL_SYMBOL) && (LA631_1 <= SHARE_SYMBOL)) || ((LA631_1 >= SLOW_SYMBOL) && (LA631_1 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA631_1 >= SUBJECT_SYMBOL) && (LA631_1 <= TRIGGERS_SYMBOL)) || ((LA631_1 >= TYPES_SYMBOL) && (LA631_1 <= USER_RESOURCES_SYMBOL)) || ((LA631_1 >= USE_FRM_SYMBOL) && (LA631_1 <= WAIT_SYMBOL)) || LA631_1 == WORK_SYMBOL || ((LA631_1 >= X509_SYMBOL) && (LA631_1 <= XML_SYMBOL))))
        	                        {
        	                            {
        	                                int LA631_198 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 198;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == OPEN_CURLY_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_199 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 199;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == MATCH_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_200 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 200;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CASE_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_201 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 201;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == BINARY_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_202 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 202;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CAST_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_203 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 203;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == CONVERT_SYMBOL))
        	                        {
        	                            {
        	                                int LA631_204 = LA(3);
        	                                if ( (synpred1_MySQL(ctx)))
        	                                {
        	                                    alt631=1;
        	                                }
        	                                else if ( (ANTLR3_TRUE))
        	                                {
        	                                    alt631=2;
        	                                }
        	                                else
        	                                {
        	                                    if (BACKTRACKING>0)
        	                                    {
        	                                        FAILEDFLAG = ANTLR3_TRUE;
        	                                        return retval;
        	                                    }


        	                                    CONSTRUCTEX();
        	                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                                    EXCEPTION->message      = (void *)"";
        	                                    EXCEPTION->decisionNum  = 631;
        	                                    EXCEPTION->state        = 204;


        	                                    goto ruleinterval_expressionEx;

        	                                }
        	                            }
        	                        }
        	                        else if ( (LA631_1 == SELECT_SYMBOL))
        	                        {
        	                            alt631=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 631;
        	                            EXCEPTION->state        = 1;


        	                            goto ruleinterval_expressionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (((LA631_0 >= ACCOUNT_SYMBOL) && (LA631_0 <= YEAR_SYMBOL)) || ((LA631_0 >= AT_AT_SIGN_SYMBOL) && (LA631_0 <= AT_TEXT_SUFFIX)) || LA631_0 == BACK_TICK_QUOTED_ID || ((LA631_0 >= BINARY_SYMBOL) && (LA631_0 <= BIN_NUMBER)) || LA631_0 == BITWISE_NOT_OPERATOR || ((LA631_0 >= BIT_AND_SYMBOL) && (LA631_0 <= BIT_XOR_SYMBOL)) || ((LA631_0 >= CASE_SYMBOL) && (LA631_0 <= CAST_SYMBOL)) || LA631_0 == CHAR_SYMBOL || ((LA631_0 >= CONVERT_SYMBOL) && (LA631_0 <= COUNT_SYMBOL)) || LA631_0 == CURDATE_SYMBOL || LA631_0 == CURRENT_USER_SYMBOL || LA631_0 == CURTIME_SYMBOL || LA631_0 == DATABASE_SYMBOL || LA631_0 == DATE_ADD_SYMBOL || LA631_0 == DATE_SUB_SYMBOL || LA631_0 == DECIMAL_NUMBER || LA631_0 == DOT_SYMBOL || LA631_0 == DOUBLE_QUOTED_TEXT || LA631_0 == EXISTS_SYMBOL || ((LA631_0 >= EXTRACT_SYMBOL) && (LA631_0 <= FALSE_SYMBOL)) || LA631_0 == FLOAT_NUMBER || LA631_0 == GROUP_CONCAT_SYMBOL || LA631_0 == HEX_NUMBER || ((LA631_0 >= IDENTIFIER) && (LA631_0 <= IF_SYMBOL)) || LA631_0 == INSERT_SYMBOL || LA631_0 == INTERVAL_SYMBOL || LA631_0 == INT_NUMBER || LA631_0 == LEFT_SYMBOL || LA631_0 == LOGICAL_NOT_OPERATOR || LA631_0 == LONG_NUMBER || LA631_0 == MATCH_SYMBOL || LA631_0 == MAX_SYMBOL || LA631_0 == MINUS_OPERATOR || LA631_0 == MIN_SYMBOL || LA631_0 == MOD_SYMBOL || LA631_0 == NCHAR_TEXT || LA631_0 == NOT2_SYMBOL || ((LA631_0 >= NOT_SYMBOL) && (LA631_0 <= NOW_SYMBOL)) || LA631_0 == NULL2_SYMBOL || LA631_0 == NULL_SYMBOL || LA631_0 == OPEN_CURLY_SYMBOL || LA631_0 == PARAM_MARKER || ((LA631_0 >= PLUS_OPERATOR) && (LA631_0 <= POSITION_SYMBOL)) || ((LA631_0 >= REPEAT_SYMBOL) && (LA631_0 <= REPLACE_SYMBOL)) || LA631_0 == RIGHT_SYMBOL || LA631_0 == SINGLE_QUOTED_TEXT || LA631_0 == STDDEV_SAMP_SYMBOL || LA631_0 == STD_SYMBOL || LA631_0 == SUBSTRING_SYMBOL || ((LA631_0 >= SUM_SYMBOL) && (LA631_0 <= SYSDATE_SYMBOL)) || ((LA631_0 >= TRIM_SYMBOL) && (LA631_0 <= TRUE_SYMBOL)) || LA631_0 == ULONGLONG_NUMBER || LA631_0 == UNDERSCORE_CHARSET || ((LA631_0 >= UTC_DATE_SYMBOL) && (LA631_0 <= UTC_TIME_SYMBOL)) || LA631_0 == VALUES_SYMBOL || LA631_0 == VARIANCE_SYMBOL || LA631_0 == VAR_SAMP_SYMBOL))
        	                {
        	                    alt631=2;
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 631;
        	                    EXCEPTION->state        = 0;


        	                    goto ruleinterval_expressionEx;

        	                }
        	            }
        	            switch (alt631)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2174:4: ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )=> interval_function
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_interval_function_in_interval_expression11112);
        	        	        interval_function2016=interval_function(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinterval_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_function2016.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2175:6: interval_time_span
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_interval_time_span_in_interval_expression11119);
        	        	        interval_time_span2017=interval_time_span(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleinterval_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_time_span2017.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2177:4: primary
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_primary_in_interval_expression11128);
        	        primary2018=primary(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary2018.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:2180:1: interval_function : OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL -> ^( RUNTIME_FUNCTION_TOKEN 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_SYMBOL2019;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2021;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2023;
    MySQLParser_expression_return expression2020;
    #undef	RETURN_TYPE_expression2020
    #define	RETURN_TYPE_expression2020 MySQLParser_expression_return

    MySQLParser_expression_return expression2022;
    #undef	RETURN_TYPE_expression2022
    #define	RETURN_TYPE_expression2022 MySQLParser_expression_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2019_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2021_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2023_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_CLOSE_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_OPEN_PAR_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_expression;
    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2019       = NULL;
    COMMA_SYMBOL2021       = NULL;
    CLOSE_PAR_SYMBOL2023       = NULL;
    expression2020.tree = NULL;

    expression2022.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2019_tree   = NULL;
    COMMA_SYMBOL2021_tree   = NULL;
    CLOSE_PAR_SYMBOL2023_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_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_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   = NULL;
    #define CREATE_stream_expression  if (stream_expression == NULL) {stream_expression = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule expression"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2180:18: ( OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL -> ^( RUNTIME_FUNCTION_TOKEN INTERVAL_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL ) )
        // MySQL.g:2181:2: OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL2019 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_interval_function11137);
            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_SYMBOL2019, NULL); }


            FOLLOWPUSH(FOLLOW_expression_in_interval_function11139);
            expression2020=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinterval_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression2020.tree, NULL); }

            // MySQL.g:2181:29: ( COMMA_SYMBOL expression )+
            {
                int cnt633=0;

                for (;;)
                {
                    int alt633=2;
            	switch ( LA(1) )
            	{
            	case COMMA_SYMBOL:
            		{
            			alt633=1;
            		}
            	    break;

            	}

            	switch (alt633)
            	{
            	    case 1:
            	        // MySQL.g:2181:30: COMMA_SYMBOL expression
            	        {
            	            COMMA_SYMBOL2021 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_interval_function11142);
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleinterval_functionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }
            	             
            	            if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL2021, NULL); }


            	            FOLLOWPUSH(FOLLOW_expression_in_interval_function11144);
            	            expression2022=expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto ruleinterval_functionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) { CREATE_stream_expression; stream_expression->add(stream_expression, expression2022.tree, NULL); }

            	        }
            	        break;

            	    default:

            		if ( cnt633 >= 1 )
            		{
            		    goto loop633;
            		}
            		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;
            	}
            	cnt633++;
                }
                loop633: ;	/* Jump to here if this rule does not match */
            }

            CLOSE_PAR_SYMBOL2023 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_interval_function11148);
            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_SYMBOL2023, NULL); }


            /* AST REWRITE
             * elements          : CLOSE_PAR_SYMBOL, OPEN_PAR_SYMBOL, expression, COMMA_SYMBOL, expression
             * 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;
            	// 2182:3: -> ^( RUNTIME_FUNCTION_TOKEN INTERVAL_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:2182:6: ^( RUNTIME_FUNCTION_TOKEN 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, RUNTIME_FUNCTION_TOKEN, (pANTLR3_UINT8)"RUNTIME_FUNCTION_TOKEN")
            	        , 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_expression == NULL || !stream_expression->hasNext(stream_expression)) || (stream_COMMA_SYMBOL == NULL || !stream_COMMA_SYMBOL->hasNext(stream_COMMA_SYMBOL))  )
            	        {
            	            CONSTRUCTEX();
            	            EXCEPTION->type         = ANTLR3_REWRITE_EARLY_EXCEPTION;
            	            EXCEPTION->name         = (void *)ANTLR3_REWRITE_EARLY_EXCEPTION_NAME;
            	        }
            	        else
            	        {
            	        	while ( (stream_expression->hasNext(stream_expression)) || (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_expression == NULL ? NULL : stream_expression->nextTree(stream_expression));

            	        	}
            	        	stream_expression->reset(stream_expression);
            	        	stream_COMMA_SYMBOL->reset(stream_COMMA_SYMBOL);

            	        }
            	        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_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_OPEN_PAR_SYMBOL != NULL) stream_OPEN_PAR_SYMBOL->free(stream_OPEN_PAR_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:2185: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 interval2024;
    #undef	RETURN_TYPE_interval2024
    #define	RETURN_TYPE_interval2024 MySQLParser_interval_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_interval;
    /* Initialize rule variables
     */

    root_0 = NULL;

    interval2024.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:2185:19: ( interval -> ^( INTERVAL_SYMBOL interval ) )
        // MySQL.g:2186:2: interval
        {
            FOLLOWPUSH(FOLLOW_interval_in_interval_time_span11180);
            interval2024=interval(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleinterval_time_spanEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_interval; stream_interval->add(stream_interval, interval2024.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;
            	// 2186:11: -> ^( INTERVAL_SYMBOL interval )
            	{
            	    // MySQL.g:2186: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:2189:1: primary : ( literal | runtime_function_call | udf_call | ( stored_function_call )=> stored_function_call | column_ref ({...}? ( JSON_SEPARATOR_SYMBOL text_string )? |) | PARAM_MARKER | variable | EXISTS_SYMBOL subquery | expression_with_nested_parentheses | OPEN_CURLY_SYMBOL identifier expression CLOSE_CURLY_SYMBOL | match_expression | case_expression | cast_expression ) ( options {greedy=true; } : COLLATE_SYMBOL collation_name )* ;
 */
static MySQLParser_primary_return
primary(pMySQLParser ctx)
{
    MySQLParser_primary_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    JSON_SEPARATOR_SYMBOL2030;
    pANTLR3_COMMON_TOKEN    PARAM_MARKER2032;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL2034;
    pANTLR3_COMMON_TOKEN    OPEN_CURLY_SYMBOL2037;
    pANTLR3_COMMON_TOKEN    CLOSE_CURLY_SYMBOL2040;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2044;
    MySQLParser_literal_return literal2025;
    #undef	RETURN_TYPE_literal2025
    #define	RETURN_TYPE_literal2025 MySQLParser_literal_return

    MySQLParser_runtime_function_call_return runtime_function_call2026;
    #undef	RETURN_TYPE_runtime_function_call2026
    #define	RETURN_TYPE_runtime_function_call2026 MySQLParser_runtime_function_call_return

    MySQLParser_udf_call_return udf_call2027;
    #undef	RETURN_TYPE_udf_call2027
    #define	RETURN_TYPE_udf_call2027 MySQLParser_udf_call_return

    MySQLParser_stored_function_call_return stored_function_call2028;
    #undef	RETURN_TYPE_stored_function_call2028
    #define	RETURN_TYPE_stored_function_call2028 MySQLParser_stored_function_call_return

    MySQLParser_column_ref_return column_ref2029;
    #undef	RETURN_TYPE_column_ref2029
    #define	RETURN_TYPE_column_ref2029 MySQLParser_column_ref_return

    MySQLParser_text_string_return text_string2031;
    #undef	RETURN_TYPE_text_string2031
    #define	RETURN_TYPE_text_string2031 MySQLParser_text_string_return

    MySQLParser_variable_return variable2033;
    #undef	RETURN_TYPE_variable2033
    #define	RETURN_TYPE_variable2033 MySQLParser_variable_return

    MySQLParser_subquery_return subquery2035;
    #undef	RETURN_TYPE_subquery2035
    #define	RETURN_TYPE_subquery2035 MySQLParser_subquery_return

    MySQLParser_expression_with_nested_parentheses_return expression_with_nested_parentheses2036;
    #undef	RETURN_TYPE_expression_with_nested_parentheses2036
    #define	RETURN_TYPE_expression_with_nested_parentheses2036 MySQLParser_expression_with_nested_parentheses_return

    MySQLParser_identifier_return identifier2038;
    #undef	RETURN_TYPE_identifier2038
    #define	RETURN_TYPE_identifier2038 MySQLParser_identifier_return

    MySQLParser_expression_return expression2039;
    #undef	RETURN_TYPE_expression2039
    #define	RETURN_TYPE_expression2039 MySQLParser_expression_return

    MySQLParser_match_expression_return match_expression2041;
    #undef	RETURN_TYPE_match_expression2041
    #define	RETURN_TYPE_match_expression2041 MySQLParser_match_expression_return

    MySQLParser_case_expression_return case_expression2042;
    #undef	RETURN_TYPE_case_expression2042
    #define	RETURN_TYPE_case_expression2042 MySQLParser_case_expression_return

    MySQLParser_cast_expression_return cast_expression2043;
    #undef	RETURN_TYPE_cast_expression2043
    #define	RETURN_TYPE_cast_expression2043 MySQLParser_cast_expression_return

    MySQLParser_collation_name_return collation_name2045;
    #undef	RETURN_TYPE_collation_name2045
    #define	RETURN_TYPE_collation_name2045 MySQLParser_collation_name_return

    pANTLR3_BASE_TREE JSON_SEPARATOR_SYMBOL2030_tree;
    pANTLR3_BASE_TREE PARAM_MARKER2032_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL2034_tree;
    pANTLR3_BASE_TREE OPEN_CURLY_SYMBOL2037_tree;
    pANTLR3_BASE_TREE CLOSE_CURLY_SYMBOL2040_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL2044_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    JSON_SEPARATOR_SYMBOL2030       = NULL;
    PARAM_MARKER2032       = NULL;
    EXISTS_SYMBOL2034       = NULL;
    OPEN_CURLY_SYMBOL2037       = NULL;
    CLOSE_CURLY_SYMBOL2040       = NULL;
    COLLATE_SYMBOL2044       = NULL;
    literal2025.tree = NULL;

    runtime_function_call2026.tree = NULL;

    udf_call2027.tree = NULL;

    stored_function_call2028.tree = NULL;

    column_ref2029.tree = NULL;

    text_string2031.tree = NULL;

    variable2033.tree = NULL;

    subquery2035.tree = NULL;

    expression_with_nested_parentheses2036.tree = NULL;

    identifier2038.tree = NULL;

    expression2039.tree = NULL;

    match_expression2041.tree = NULL;

    case_expression2042.tree = NULL;

    cast_expression2043.tree = NULL;

    collation_name2045.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    JSON_SEPARATOR_SYMBOL2030_tree   = NULL;
    PARAM_MARKER2032_tree   = NULL;
    EXISTS_SYMBOL2034_tree   = NULL;
    OPEN_CURLY_SYMBOL2037_tree   = NULL;
    CLOSE_CURLY_SYMBOL2040_tree   = NULL;
    COLLATE_SYMBOL2044_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2189:8: ( ( literal | runtime_function_call | udf_call | ( stored_function_call )=> stored_function_call | column_ref ({...}? ( JSON_SEPARATOR_SYMBOL text_string )? |) | PARAM_MARKER | variable | EXISTS_SYMBOL subquery | expression_with_nested_parentheses | OPEN_CURLY_SYMBOL identifier expression CLOSE_CURLY_SYMBOL | match_expression | case_expression | cast_expression ) ( options {greedy=true; } : COLLATE_SYMBOL collation_name )* )
        // MySQL.g:2190:5: ( literal | runtime_function_call | udf_call | ( stored_function_call )=> stored_function_call | column_ref ({...}? ( JSON_SEPARATOR_SYMBOL text_string )? |) | PARAM_MARKER | variable | EXISTS_SYMBOL subquery | expression_with_nested_parentheses | OPEN_CURLY_SYMBOL identifier expression CLOSE_CURLY_SYMBOL | match_expression | case_expression | cast_expression ) ( options {greedy=true; } : COLLATE_SYMBOL collation_name )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2190:5: ( literal | runtime_function_call | udf_call | ( stored_function_call )=> stored_function_call | column_ref ({...}? ( JSON_SEPARATOR_SYMBOL text_string )? |) | PARAM_MARKER | variable | EXISTS_SYMBOL subquery | expression_with_nested_parentheses | OPEN_CURLY_SYMBOL identifier expression CLOSE_CURLY_SYMBOL | match_expression | case_expression | cast_expression )
            {
                int alt636=13;
                {
                    int LA636_0 = LA(1);
                    if ( (LA636_0 == BIN_NUMBER || LA636_0 == DECIMAL_NUMBER || LA636_0 == FALSE_SYMBOL || LA636_0 == FLOAT_NUMBER || LA636_0 == HEX_NUMBER || LA636_0 == INT_NUMBER || LA636_0 == LONG_NUMBER || LA636_0 == NCHAR_TEXT || LA636_0 == NULL2_SYMBOL || LA636_0 == NULL_SYMBOL || LA636_0 == SINGLE_QUOTED_TEXT || LA636_0 == TRUE_SYMBOL || LA636_0 == ULONGLONG_NUMBER || LA636_0 == UNDERSCORE_CHARSET))
                    {
                        alt636=1;
                    }
                    else if ( (LA636_0 == DOUBLE_QUOTED_TEXT))
                    {
                        {
                            int LA636_4 = LA(2);
                            if ( (synpred2_MySQL(ctx)) && (LA636_4 == DOT_SYMBOL))
                            {
                                alt636=4;
                            }
                            else if ( (synpred2_MySQL(ctx)) && (LA636_4 == OPEN_PAR_SYMBOL))
                            {
                                alt636=4;
                            }
                            else if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                            {
                                alt636=1;
                            }
                            else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                            {
                                alt636=5;
                            }
                            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        = 4;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == DATE_SYMBOL))
                    {
                        {
                            int LA636_6 = LA(2);
                            if ( (LA636_6 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA636_186 = LA(3);
                                    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                                    {
                                        alt636=1;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 186;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_6 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_187 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 187;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_6 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_188 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 188;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_6 == EOF || ((LA636_6 >= ACCOUNT_SYMBOL) && (LA636_6 <= YEAR_SYMBOL)) || ((LA636_6 >= AND_SYMBOL) && (LA636_6 <= ASC_SYMBOL)) || ((LA636_6 >= AS_SYMBOL) && (LA636_6 <= AT_TEXT_SUFFIX)) || LA636_6 == BACK_TICK_QUOTED_ID || LA636_6 == BETWEEN_SYMBOL || LA636_6 == BIN_NUMBER || LA636_6 == BITWISE_AND_OPERATOR || ((LA636_6 >= BITWISE_OR_OPERATOR) && (LA636_6 <= BITWISE_XOR_OPERATOR)) || ((LA636_6 >= CLOSE_CURLY_SYMBOL) && (LA636_6 <= COLLATE_SYMBOL)) || LA636_6 == COMMA_SYMBOL || LA636_6 == CONCAT_PIPES_SYMBOL || LA636_6 == CROSS_SYMBOL || ((LA636_6 >= DAY_HOUR_SYMBOL) && (LA636_6 <= DAY_SECOND_SYMBOL)) || LA636_6 == DESC_SYMBOL || ((LA636_6 >= DIV_OPERATOR) && (LA636_6 <= DIV_SYMBOL)) || LA636_6 == DOUBLE_QUOTED_TEXT || LA636_6 == ELSE_SYMBOL || LA636_6 == EQUAL_OPERATOR || ((LA636_6 >= FOR_SYMBOL) && (LA636_6 <= FROM_SYMBOL)) || ((LA636_6 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_6 <= GREATER_THAN_OPERATOR)) || ((LA636_6 >= GROUP_SYMBOL) && (LA636_6 <= HAVING_SYMBOL)) || LA636_6 == HEX_NUMBER || ((LA636_6 >= HOUR_MICROSECOND_SYMBOL) && (LA636_6 <= IDENTIFIER)) || LA636_6 == INNER_SYMBOL || LA636_6 == INTO_SYMBOL || LA636_6 == IN_SYMBOL || LA636_6 == IS_SYMBOL || ((LA636_6 >= JOIN_SYMBOL) && (LA636_6 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_6 >= LEFT_SYMBOL) && (LA636_6 <= LESS_THAN_OPERATOR)) || ((LA636_6 >= LIKE_SYMBOL) && (LA636_6 <= LIMIT_SYMBOL)) || LA636_6 == LOCK_SYMBOL || LA636_6 == LOGICAL_AND_OPERATOR || LA636_6 == LOGICAL_OR_OPERATOR || ((LA636_6 >= MINUS_OPERATOR) && (LA636_6 <= MINUTE_SECOND_SYMBOL)) || ((LA636_6 >= MOD_OPERATOR) && (LA636_6 <= MOD_SYMBOL)) || ((LA636_6 >= MULT_OPERATOR) && (LA636_6 <= NATURAL_SYMBOL)) || ((LA636_6 >= NOT_EQUAL2_OPERATOR) && (LA636_6 <= NOT_SYMBOL)) || LA636_6 == NULL_SAFE_EQUAL_OPERATOR || LA636_6 == ON_SYMBOL || ((LA636_6 >= ORDER_SYMBOL) && (LA636_6 <= OR_SYMBOL)) || LA636_6 == PLUS_OPERATOR || LA636_6 == PROCEDURE_SYMBOL || LA636_6 == REGEXP_SYMBOL || LA636_6 == RENAME_SYMBOL || LA636_6 == RIGHT_SYMBOL || LA636_6 == SECOND_MICROSECOND_SYMBOL || LA636_6 == SEMICOLON_SYMBOL || LA636_6 == SEPARATOR_SYMBOL || LA636_6 == SET_SYMBOL || ((LA636_6 >= SHIFT_LEFT_OPERATOR) && (LA636_6 <= SHIFT_RIGHT_OPERATOR)) || LA636_6 == STRAIGHT_JOIN_SYMBOL || LA636_6 == THEN_SYMBOL || LA636_6 == UNION_SYMBOL || LA636_6 == USING_SYMBOL || ((LA636_6 >= WHEN_SYMBOL) && (LA636_6 <= WHERE_SYMBOL)) || LA636_6 == WITH_SYMBOL || ((LA636_6 >= XOR_SYMBOL) && (LA636_6 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 6;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == TIME_SYMBOL))
                    {
                        {
                            int LA636_7 = LA(2);
                            if ( (LA636_7 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA636_273 = LA(3);
                                    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                                    {
                                        alt636=1;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 273;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_7 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_274 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 274;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_7 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_275 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 275;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_7 == EOF || ((LA636_7 >= ACCOUNT_SYMBOL) && (LA636_7 <= YEAR_SYMBOL)) || ((LA636_7 >= AND_SYMBOL) && (LA636_7 <= ASC_SYMBOL)) || ((LA636_7 >= AS_SYMBOL) && (LA636_7 <= AT_TEXT_SUFFIX)) || LA636_7 == BACK_TICK_QUOTED_ID || LA636_7 == BETWEEN_SYMBOL || LA636_7 == BIN_NUMBER || LA636_7 == BITWISE_AND_OPERATOR || ((LA636_7 >= BITWISE_OR_OPERATOR) && (LA636_7 <= BITWISE_XOR_OPERATOR)) || ((LA636_7 >= CLOSE_CURLY_SYMBOL) && (LA636_7 <= COLLATE_SYMBOL)) || LA636_7 == COMMA_SYMBOL || LA636_7 == CONCAT_PIPES_SYMBOL || LA636_7 == CROSS_SYMBOL || ((LA636_7 >= DAY_HOUR_SYMBOL) && (LA636_7 <= DAY_SECOND_SYMBOL)) || LA636_7 == DESC_SYMBOL || ((LA636_7 >= DIV_OPERATOR) && (LA636_7 <= DIV_SYMBOL)) || LA636_7 == DOUBLE_QUOTED_TEXT || LA636_7 == ELSE_SYMBOL || LA636_7 == EQUAL_OPERATOR || ((LA636_7 >= FOR_SYMBOL) && (LA636_7 <= FROM_SYMBOL)) || ((LA636_7 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_7 <= GREATER_THAN_OPERATOR)) || ((LA636_7 >= GROUP_SYMBOL) && (LA636_7 <= HAVING_SYMBOL)) || LA636_7 == HEX_NUMBER || ((LA636_7 >= HOUR_MICROSECOND_SYMBOL) && (LA636_7 <= IDENTIFIER)) || LA636_7 == INNER_SYMBOL || LA636_7 == INTO_SYMBOL || LA636_7 == IN_SYMBOL || LA636_7 == IS_SYMBOL || ((LA636_7 >= JOIN_SYMBOL) && (LA636_7 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_7 >= LEFT_SYMBOL) && (LA636_7 <= LESS_THAN_OPERATOR)) || ((LA636_7 >= LIKE_SYMBOL) && (LA636_7 <= LIMIT_SYMBOL)) || LA636_7 == LOCK_SYMBOL || LA636_7 == LOGICAL_AND_OPERATOR || LA636_7 == LOGICAL_OR_OPERATOR || ((LA636_7 >= MINUS_OPERATOR) && (LA636_7 <= MINUTE_SECOND_SYMBOL)) || ((LA636_7 >= MOD_OPERATOR) && (LA636_7 <= MOD_SYMBOL)) || ((LA636_7 >= MULT_OPERATOR) && (LA636_7 <= NATURAL_SYMBOL)) || ((LA636_7 >= NOT_EQUAL2_OPERATOR) && (LA636_7 <= NOT_SYMBOL)) || LA636_7 == NULL_SAFE_EQUAL_OPERATOR || LA636_7 == ON_SYMBOL || ((LA636_7 >= ORDER_SYMBOL) && (LA636_7 <= OR_SYMBOL)) || LA636_7 == PLUS_OPERATOR || LA636_7 == PROCEDURE_SYMBOL || LA636_7 == REGEXP_SYMBOL || LA636_7 == RENAME_SYMBOL || LA636_7 == RIGHT_SYMBOL || LA636_7 == SECOND_MICROSECOND_SYMBOL || LA636_7 == SEMICOLON_SYMBOL || LA636_7 == SEPARATOR_SYMBOL || LA636_7 == SET_SYMBOL || ((LA636_7 >= SHIFT_LEFT_OPERATOR) && (LA636_7 <= SHIFT_RIGHT_OPERATOR)) || LA636_7 == STRAIGHT_JOIN_SYMBOL || LA636_7 == THEN_SYMBOL || LA636_7 == UNION_SYMBOL || LA636_7 == USING_SYMBOL || ((LA636_7 >= WHEN_SYMBOL) && (LA636_7 <= WHERE_SYMBOL)) || LA636_7 == WITH_SYMBOL || ((LA636_7 >= XOR_SYMBOL) && (LA636_7 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 7;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == TIMESTAMP_SYMBOL))
                    {
                        {
                            int LA636_8 = LA(2);
                            if ( (LA636_8 == SINGLE_QUOTED_TEXT))
                            {
                                {
                                    int LA636_360 = LA(3);
                                    if ( ((LA(1) == DATE_SYMBOL || LA(1) == TIME_SYMBOL || LA(1) == TIMESTAMP_SYMBOL)))
                                    {
                                        alt636=1;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 360;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_8 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_361 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 361;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_8 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_362 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 362;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_8 == EOF || ((LA636_8 >= ACCOUNT_SYMBOL) && (LA636_8 <= YEAR_SYMBOL)) || ((LA636_8 >= AND_SYMBOL) && (LA636_8 <= ASC_SYMBOL)) || ((LA636_8 >= AS_SYMBOL) && (LA636_8 <= AT_TEXT_SUFFIX)) || LA636_8 == BACK_TICK_QUOTED_ID || LA636_8 == BETWEEN_SYMBOL || LA636_8 == BIN_NUMBER || LA636_8 == BITWISE_AND_OPERATOR || ((LA636_8 >= BITWISE_OR_OPERATOR) && (LA636_8 <= BITWISE_XOR_OPERATOR)) || ((LA636_8 >= CLOSE_CURLY_SYMBOL) && (LA636_8 <= COLLATE_SYMBOL)) || LA636_8 == COMMA_SYMBOL || LA636_8 == CONCAT_PIPES_SYMBOL || LA636_8 == CROSS_SYMBOL || ((LA636_8 >= DAY_HOUR_SYMBOL) && (LA636_8 <= DAY_SECOND_SYMBOL)) || LA636_8 == DESC_SYMBOL || ((LA636_8 >= DIV_OPERATOR) && (LA636_8 <= DIV_SYMBOL)) || LA636_8 == DOUBLE_QUOTED_TEXT || LA636_8 == ELSE_SYMBOL || LA636_8 == EQUAL_OPERATOR || ((LA636_8 >= FOR_SYMBOL) && (LA636_8 <= FROM_SYMBOL)) || ((LA636_8 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_8 <= GREATER_THAN_OPERATOR)) || ((LA636_8 >= GROUP_SYMBOL) && (LA636_8 <= HAVING_SYMBOL)) || LA636_8 == HEX_NUMBER || ((LA636_8 >= HOUR_MICROSECOND_SYMBOL) && (LA636_8 <= IDENTIFIER)) || LA636_8 == INNER_SYMBOL || LA636_8 == INTO_SYMBOL || LA636_8 == IN_SYMBOL || LA636_8 == IS_SYMBOL || ((LA636_8 >= JOIN_SYMBOL) && (LA636_8 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_8 >= LEFT_SYMBOL) && (LA636_8 <= LESS_THAN_OPERATOR)) || ((LA636_8 >= LIKE_SYMBOL) && (LA636_8 <= LIMIT_SYMBOL)) || LA636_8 == LOCK_SYMBOL || LA636_8 == LOGICAL_AND_OPERATOR || LA636_8 == LOGICAL_OR_OPERATOR || ((LA636_8 >= MINUS_OPERATOR) && (LA636_8 <= MINUTE_SECOND_SYMBOL)) || ((LA636_8 >= MOD_OPERATOR) && (LA636_8 <= MOD_SYMBOL)) || ((LA636_8 >= MULT_OPERATOR) && (LA636_8 <= NATURAL_SYMBOL)) || ((LA636_8 >= NOT_EQUAL2_OPERATOR) && (LA636_8 <= NOT_SYMBOL)) || LA636_8 == NULL_SAFE_EQUAL_OPERATOR || LA636_8 == ON_SYMBOL || ((LA636_8 >= ORDER_SYMBOL) && (LA636_8 <= OR_SYMBOL)) || LA636_8 == PLUS_OPERATOR || LA636_8 == PROCEDURE_SYMBOL || LA636_8 == REGEXP_SYMBOL || LA636_8 == RENAME_SYMBOL || LA636_8 == RIGHT_SYMBOL || LA636_8 == SECOND_MICROSECOND_SYMBOL || LA636_8 == SEMICOLON_SYMBOL || LA636_8 == SEPARATOR_SYMBOL || LA636_8 == SET_SYMBOL || ((LA636_8 >= SHIFT_LEFT_OPERATOR) && (LA636_8 <= SHIFT_RIGHT_OPERATOR)) || LA636_8 == STRAIGHT_JOIN_SYMBOL || LA636_8 == THEN_SYMBOL || LA636_8 == UNION_SYMBOL || LA636_8 == USING_SYMBOL || ((LA636_8 >= WHEN_SYMBOL) && (LA636_8 <= WHERE_SYMBOL)) || LA636_8 == WITH_SYMBOL || ((LA636_8 >= XOR_SYMBOL) && (LA636_8 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 8;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (((LA636_0 >= BIT_AND_SYMBOL) && (LA636_0 <= BIT_XOR_SYMBOL)) || LA636_0 == CHAR_SYMBOL || LA636_0 == COUNT_SYMBOL || LA636_0 == CURDATE_SYMBOL || LA636_0 == CURRENT_USER_SYMBOL || LA636_0 == CURTIME_SYMBOL || LA636_0 == DATABASE_SYMBOL || LA636_0 == DATE_ADD_SYMBOL || LA636_0 == DATE_SUB_SYMBOL || LA636_0 == EXTRACT_SYMBOL || LA636_0 == GROUP_CONCAT_SYMBOL || LA636_0 == IF_SYMBOL || LA636_0 == INSERT_SYMBOL || LA636_0 == LEFT_SYMBOL || LA636_0 == MAX_SYMBOL || LA636_0 == MIN_SYMBOL || LA636_0 == MOD_SYMBOL || LA636_0 == NOW_SYMBOL || LA636_0 == POSITION_SYMBOL || ((LA636_0 >= REPEAT_SYMBOL) && (LA636_0 <= REPLACE_SYMBOL)) || LA636_0 == RIGHT_SYMBOL || LA636_0 == STDDEV_SAMP_SYMBOL || LA636_0 == STD_SYMBOL || LA636_0 == SUBSTRING_SYMBOL || ((LA636_0 >= SUM_SYMBOL) && (LA636_0 <= SYSDATE_SYMBOL)) || LA636_0 == TRIM_SYMBOL || ((LA636_0 >= UTC_DATE_SYMBOL) && (LA636_0 <= UTC_TIME_SYMBOL)) || LA636_0 == VALUES_SYMBOL || LA636_0 == VARIANCE_SYMBOL || LA636_0 == VAR_SAMP_SYMBOL))
                    {
                        alt636=2;
                    }
                    else if ( (LA636_0 == DAY_SYMBOL))
                    {
                        {
                            int LA636_15 = LA(2);
                            if ( (LA636_15 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_447 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 447;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_15 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_448 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 448;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_15 == EOF || ((LA636_15 >= ACCOUNT_SYMBOL) && (LA636_15 <= YEAR_SYMBOL)) || ((LA636_15 >= AND_SYMBOL) && (LA636_15 <= ASC_SYMBOL)) || ((LA636_15 >= AS_SYMBOL) && (LA636_15 <= AT_TEXT_SUFFIX)) || LA636_15 == BACK_TICK_QUOTED_ID || LA636_15 == BETWEEN_SYMBOL || LA636_15 == BIN_NUMBER || LA636_15 == BITWISE_AND_OPERATOR || ((LA636_15 >= BITWISE_OR_OPERATOR) && (LA636_15 <= BITWISE_XOR_OPERATOR)) || ((LA636_15 >= CLOSE_CURLY_SYMBOL) && (LA636_15 <= COLLATE_SYMBOL)) || LA636_15 == COMMA_SYMBOL || LA636_15 == CONCAT_PIPES_SYMBOL || LA636_15 == CROSS_SYMBOL || ((LA636_15 >= DAY_HOUR_SYMBOL) && (LA636_15 <= DAY_SECOND_SYMBOL)) || LA636_15 == DESC_SYMBOL || ((LA636_15 >= DIV_OPERATOR) && (LA636_15 <= DIV_SYMBOL)) || LA636_15 == DOUBLE_QUOTED_TEXT || LA636_15 == ELSE_SYMBOL || LA636_15 == EQUAL_OPERATOR || ((LA636_15 >= FOR_SYMBOL) && (LA636_15 <= FROM_SYMBOL)) || ((LA636_15 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_15 <= GREATER_THAN_OPERATOR)) || ((LA636_15 >= GROUP_SYMBOL) && (LA636_15 <= HAVING_SYMBOL)) || LA636_15 == HEX_NUMBER || ((LA636_15 >= HOUR_MICROSECOND_SYMBOL) && (LA636_15 <= IDENTIFIER)) || LA636_15 == INNER_SYMBOL || LA636_15 == INTO_SYMBOL || LA636_15 == IN_SYMBOL || LA636_15 == IS_SYMBOL || ((LA636_15 >= JOIN_SYMBOL) && (LA636_15 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_15 >= LEFT_SYMBOL) && (LA636_15 <= LESS_THAN_OPERATOR)) || ((LA636_15 >= LIKE_SYMBOL) && (LA636_15 <= LIMIT_SYMBOL)) || LA636_15 == LOCK_SYMBOL || LA636_15 == LOGICAL_AND_OPERATOR || LA636_15 == LOGICAL_OR_OPERATOR || ((LA636_15 >= MINUS_OPERATOR) && (LA636_15 <= MINUTE_SECOND_SYMBOL)) || ((LA636_15 >= MOD_OPERATOR) && (LA636_15 <= MOD_SYMBOL)) || ((LA636_15 >= MULT_OPERATOR) && (LA636_15 <= NATURAL_SYMBOL)) || ((LA636_15 >= NOT_EQUAL2_OPERATOR) && (LA636_15 <= NOT_SYMBOL)) || LA636_15 == NULL_SAFE_EQUAL_OPERATOR || LA636_15 == ON_SYMBOL || ((LA636_15 >= ORDER_SYMBOL) && (LA636_15 <= OR_SYMBOL)) || LA636_15 == PLUS_OPERATOR || LA636_15 == PROCEDURE_SYMBOL || LA636_15 == REGEXP_SYMBOL || LA636_15 == RENAME_SYMBOL || LA636_15 == RIGHT_SYMBOL || LA636_15 == SECOND_MICROSECOND_SYMBOL || LA636_15 == SEMICOLON_SYMBOL || LA636_15 == SEPARATOR_SYMBOL || LA636_15 == SET_SYMBOL || ((LA636_15 >= SHIFT_LEFT_OPERATOR) && (LA636_15 <= SHIFT_RIGHT_OPERATOR)) || LA636_15 == SINGLE_QUOTED_TEXT || LA636_15 == STRAIGHT_JOIN_SYMBOL || LA636_15 == THEN_SYMBOL || LA636_15 == UNION_SYMBOL || LA636_15 == USING_SYMBOL || ((LA636_15 >= WHEN_SYMBOL) && (LA636_15 <= WHERE_SYMBOL)) || LA636_15 == WITH_SYMBOL || ((LA636_15 >= XOR_SYMBOL) && (LA636_15 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 15;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == HOUR_SYMBOL))
                    {
                        {
                            int LA636_16 = LA(2);
                            if ( (LA636_16 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_533 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 533;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_16 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_534 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 534;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_16 == EOF || ((LA636_16 >= ACCOUNT_SYMBOL) && (LA636_16 <= YEAR_SYMBOL)) || ((LA636_16 >= AND_SYMBOL) && (LA636_16 <= ASC_SYMBOL)) || ((LA636_16 >= AS_SYMBOL) && (LA636_16 <= AT_TEXT_SUFFIX)) || LA636_16 == BACK_TICK_QUOTED_ID || LA636_16 == BETWEEN_SYMBOL || LA636_16 == BIN_NUMBER || LA636_16 == BITWISE_AND_OPERATOR || ((LA636_16 >= BITWISE_OR_OPERATOR) && (LA636_16 <= BITWISE_XOR_OPERATOR)) || ((LA636_16 >= CLOSE_CURLY_SYMBOL) && (LA636_16 <= COLLATE_SYMBOL)) || LA636_16 == COMMA_SYMBOL || LA636_16 == CONCAT_PIPES_SYMBOL || LA636_16 == CROSS_SYMBOL || ((LA636_16 >= DAY_HOUR_SYMBOL) && (LA636_16 <= DAY_SECOND_SYMBOL)) || LA636_16 == DESC_SYMBOL || ((LA636_16 >= DIV_OPERATOR) && (LA636_16 <= DIV_SYMBOL)) || LA636_16 == DOUBLE_QUOTED_TEXT || LA636_16 == ELSE_SYMBOL || LA636_16 == EQUAL_OPERATOR || ((LA636_16 >= FOR_SYMBOL) && (LA636_16 <= FROM_SYMBOL)) || ((LA636_16 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_16 <= GREATER_THAN_OPERATOR)) || ((LA636_16 >= GROUP_SYMBOL) && (LA636_16 <= HAVING_SYMBOL)) || LA636_16 == HEX_NUMBER || ((LA636_16 >= HOUR_MICROSECOND_SYMBOL) && (LA636_16 <= IDENTIFIER)) || LA636_16 == INNER_SYMBOL || LA636_16 == INTO_SYMBOL || LA636_16 == IN_SYMBOL || LA636_16 == IS_SYMBOL || ((LA636_16 >= JOIN_SYMBOL) && (LA636_16 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_16 >= LEFT_SYMBOL) && (LA636_16 <= LESS_THAN_OPERATOR)) || ((LA636_16 >= LIKE_SYMBOL) && (LA636_16 <= LIMIT_SYMBOL)) || LA636_16 == LOCK_SYMBOL || LA636_16 == LOGICAL_AND_OPERATOR || LA636_16 == LOGICAL_OR_OPERATOR || ((LA636_16 >= MINUS_OPERATOR) && (LA636_16 <= MINUTE_SECOND_SYMBOL)) || ((LA636_16 >= MOD_OPERATOR) && (LA636_16 <= MOD_SYMBOL)) || ((LA636_16 >= MULT_OPERATOR) && (LA636_16 <= NATURAL_SYMBOL)) || ((LA636_16 >= NOT_EQUAL2_OPERATOR) && (LA636_16 <= NOT_SYMBOL)) || LA636_16 == NULL_SAFE_EQUAL_OPERATOR || LA636_16 == ON_SYMBOL || ((LA636_16 >= ORDER_SYMBOL) && (LA636_16 <= OR_SYMBOL)) || LA636_16 == PLUS_OPERATOR || LA636_16 == PROCEDURE_SYMBOL || LA636_16 == REGEXP_SYMBOL || LA636_16 == RENAME_SYMBOL || LA636_16 == RIGHT_SYMBOL || LA636_16 == SECOND_MICROSECOND_SYMBOL || LA636_16 == SEMICOLON_SYMBOL || LA636_16 == SEPARATOR_SYMBOL || LA636_16 == SET_SYMBOL || ((LA636_16 >= SHIFT_LEFT_OPERATOR) && (LA636_16 <= SHIFT_RIGHT_OPERATOR)) || LA636_16 == SINGLE_QUOTED_TEXT || LA636_16 == STRAIGHT_JOIN_SYMBOL || LA636_16 == THEN_SYMBOL || LA636_16 == UNION_SYMBOL || LA636_16 == USING_SYMBOL || ((LA636_16 >= WHEN_SYMBOL) && (LA636_16 <= WHERE_SYMBOL)) || LA636_16 == WITH_SYMBOL || ((LA636_16 >= XOR_SYMBOL) && (LA636_16 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 16;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MINUTE_SYMBOL))
                    {
                        {
                            int LA636_19 = LA(2);
                            if ( (LA636_19 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_619 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 619;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_19 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_620 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 620;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_19 == EOF || ((LA636_19 >= ACCOUNT_SYMBOL) && (LA636_19 <= YEAR_SYMBOL)) || ((LA636_19 >= AND_SYMBOL) && (LA636_19 <= ASC_SYMBOL)) || ((LA636_19 >= AS_SYMBOL) && (LA636_19 <= AT_TEXT_SUFFIX)) || LA636_19 == BACK_TICK_QUOTED_ID || LA636_19 == BETWEEN_SYMBOL || LA636_19 == BIN_NUMBER || LA636_19 == BITWISE_AND_OPERATOR || ((LA636_19 >= BITWISE_OR_OPERATOR) && (LA636_19 <= BITWISE_XOR_OPERATOR)) || ((LA636_19 >= CLOSE_CURLY_SYMBOL) && (LA636_19 <= COLLATE_SYMBOL)) || LA636_19 == COMMA_SYMBOL || LA636_19 == CONCAT_PIPES_SYMBOL || LA636_19 == CROSS_SYMBOL || ((LA636_19 >= DAY_HOUR_SYMBOL) && (LA636_19 <= DAY_SECOND_SYMBOL)) || LA636_19 == DESC_SYMBOL || ((LA636_19 >= DIV_OPERATOR) && (LA636_19 <= DIV_SYMBOL)) || LA636_19 == DOUBLE_QUOTED_TEXT || LA636_19 == ELSE_SYMBOL || LA636_19 == EQUAL_OPERATOR || ((LA636_19 >= FOR_SYMBOL) && (LA636_19 <= FROM_SYMBOL)) || ((LA636_19 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_19 <= GREATER_THAN_OPERATOR)) || ((LA636_19 >= GROUP_SYMBOL) && (LA636_19 <= HAVING_SYMBOL)) || LA636_19 == HEX_NUMBER || ((LA636_19 >= HOUR_MICROSECOND_SYMBOL) && (LA636_19 <= IDENTIFIER)) || LA636_19 == INNER_SYMBOL || LA636_19 == INTO_SYMBOL || LA636_19 == IN_SYMBOL || LA636_19 == IS_SYMBOL || ((LA636_19 >= JOIN_SYMBOL) && (LA636_19 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_19 >= LEFT_SYMBOL) && (LA636_19 <= LESS_THAN_OPERATOR)) || ((LA636_19 >= LIKE_SYMBOL) && (LA636_19 <= LIMIT_SYMBOL)) || LA636_19 == LOCK_SYMBOL || LA636_19 == LOGICAL_AND_OPERATOR || LA636_19 == LOGICAL_OR_OPERATOR || ((LA636_19 >= MINUS_OPERATOR) && (LA636_19 <= MINUTE_SECOND_SYMBOL)) || ((LA636_19 >= MOD_OPERATOR) && (LA636_19 <= MOD_SYMBOL)) || ((LA636_19 >= MULT_OPERATOR) && (LA636_19 <= NATURAL_SYMBOL)) || ((LA636_19 >= NOT_EQUAL2_OPERATOR) && (LA636_19 <= NOT_SYMBOL)) || LA636_19 == NULL_SAFE_EQUAL_OPERATOR || LA636_19 == ON_SYMBOL || ((LA636_19 >= ORDER_SYMBOL) && (LA636_19 <= OR_SYMBOL)) || LA636_19 == PLUS_OPERATOR || LA636_19 == PROCEDURE_SYMBOL || LA636_19 == REGEXP_SYMBOL || LA636_19 == RENAME_SYMBOL || LA636_19 == RIGHT_SYMBOL || LA636_19 == SECOND_MICROSECOND_SYMBOL || LA636_19 == SEMICOLON_SYMBOL || LA636_19 == SEPARATOR_SYMBOL || LA636_19 == SET_SYMBOL || ((LA636_19 >= SHIFT_LEFT_OPERATOR) && (LA636_19 <= SHIFT_RIGHT_OPERATOR)) || LA636_19 == SINGLE_QUOTED_TEXT || LA636_19 == STRAIGHT_JOIN_SYMBOL || LA636_19 == THEN_SYMBOL || LA636_19 == UNION_SYMBOL || LA636_19 == USING_SYMBOL || ((LA636_19 >= WHEN_SYMBOL) && (LA636_19 <= WHERE_SYMBOL)) || LA636_19 == WITH_SYMBOL || ((LA636_19 >= XOR_SYMBOL) && (LA636_19 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 19;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MONTH_SYMBOL))
                    {
                        {
                            int LA636_20 = LA(2);
                            if ( (LA636_20 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_705 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 705;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_20 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_706 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 706;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_20 == EOF || ((LA636_20 >= ACCOUNT_SYMBOL) && (LA636_20 <= YEAR_SYMBOL)) || ((LA636_20 >= AND_SYMBOL) && (LA636_20 <= ASC_SYMBOL)) || ((LA636_20 >= AS_SYMBOL) && (LA636_20 <= AT_TEXT_SUFFIX)) || LA636_20 == BACK_TICK_QUOTED_ID || LA636_20 == BETWEEN_SYMBOL || LA636_20 == BIN_NUMBER || LA636_20 == BITWISE_AND_OPERATOR || ((LA636_20 >= BITWISE_OR_OPERATOR) && (LA636_20 <= BITWISE_XOR_OPERATOR)) || ((LA636_20 >= CLOSE_CURLY_SYMBOL) && (LA636_20 <= COLLATE_SYMBOL)) || LA636_20 == COMMA_SYMBOL || LA636_20 == CONCAT_PIPES_SYMBOL || LA636_20 == CROSS_SYMBOL || ((LA636_20 >= DAY_HOUR_SYMBOL) && (LA636_20 <= DAY_SECOND_SYMBOL)) || LA636_20 == DESC_SYMBOL || ((LA636_20 >= DIV_OPERATOR) && (LA636_20 <= DIV_SYMBOL)) || LA636_20 == DOUBLE_QUOTED_TEXT || LA636_20 == ELSE_SYMBOL || LA636_20 == EQUAL_OPERATOR || ((LA636_20 >= FOR_SYMBOL) && (LA636_20 <= FROM_SYMBOL)) || ((LA636_20 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_20 <= GREATER_THAN_OPERATOR)) || ((LA636_20 >= GROUP_SYMBOL) && (LA636_20 <= HAVING_SYMBOL)) || LA636_20 == HEX_NUMBER || ((LA636_20 >= HOUR_MICROSECOND_SYMBOL) && (LA636_20 <= IDENTIFIER)) || LA636_20 == INNER_SYMBOL || LA636_20 == INTO_SYMBOL || LA636_20 == IN_SYMBOL || LA636_20 == IS_SYMBOL || ((LA636_20 >= JOIN_SYMBOL) && (LA636_20 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_20 >= LEFT_SYMBOL) && (LA636_20 <= LESS_THAN_OPERATOR)) || ((LA636_20 >= LIKE_SYMBOL) && (LA636_20 <= LIMIT_SYMBOL)) || LA636_20 == LOCK_SYMBOL || LA636_20 == LOGICAL_AND_OPERATOR || LA636_20 == LOGICAL_OR_OPERATOR || ((LA636_20 >= MINUS_OPERATOR) && (LA636_20 <= MINUTE_SECOND_SYMBOL)) || ((LA636_20 >= MOD_OPERATOR) && (LA636_20 <= MOD_SYMBOL)) || ((LA636_20 >= MULT_OPERATOR) && (LA636_20 <= NATURAL_SYMBOL)) || ((LA636_20 >= NOT_EQUAL2_OPERATOR) && (LA636_20 <= NOT_SYMBOL)) || LA636_20 == NULL_SAFE_EQUAL_OPERATOR || LA636_20 == ON_SYMBOL || ((LA636_20 >= ORDER_SYMBOL) && (LA636_20 <= OR_SYMBOL)) || LA636_20 == PLUS_OPERATOR || LA636_20 == PROCEDURE_SYMBOL || LA636_20 == REGEXP_SYMBOL || LA636_20 == RENAME_SYMBOL || LA636_20 == RIGHT_SYMBOL || LA636_20 == SECOND_MICROSECOND_SYMBOL || LA636_20 == SEMICOLON_SYMBOL || LA636_20 == SEPARATOR_SYMBOL || LA636_20 == SET_SYMBOL || ((LA636_20 >= SHIFT_LEFT_OPERATOR) && (LA636_20 <= SHIFT_RIGHT_OPERATOR)) || LA636_20 == SINGLE_QUOTED_TEXT || LA636_20 == STRAIGHT_JOIN_SYMBOL || LA636_20 == THEN_SYMBOL || LA636_20 == UNION_SYMBOL || LA636_20 == USING_SYMBOL || ((LA636_20 >= WHEN_SYMBOL) && (LA636_20 <= WHERE_SYMBOL)) || LA636_20 == WITH_SYMBOL || ((LA636_20 >= XOR_SYMBOL) && (LA636_20 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 20;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == SECOND_SYMBOL))
                    {
                        {
                            int LA636_22 = LA(2);
                            if ( (LA636_22 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_791 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 791;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_22 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_792 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 792;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_22 == EOF || ((LA636_22 >= ACCOUNT_SYMBOL) && (LA636_22 <= YEAR_SYMBOL)) || ((LA636_22 >= AND_SYMBOL) && (LA636_22 <= ASC_SYMBOL)) || ((LA636_22 >= AS_SYMBOL) && (LA636_22 <= AT_TEXT_SUFFIX)) || LA636_22 == BACK_TICK_QUOTED_ID || LA636_22 == BETWEEN_SYMBOL || LA636_22 == BIN_NUMBER || LA636_22 == BITWISE_AND_OPERATOR || ((LA636_22 >= BITWISE_OR_OPERATOR) && (LA636_22 <= BITWISE_XOR_OPERATOR)) || ((LA636_22 >= CLOSE_CURLY_SYMBOL) && (LA636_22 <= COLLATE_SYMBOL)) || LA636_22 == COMMA_SYMBOL || LA636_22 == CONCAT_PIPES_SYMBOL || LA636_22 == CROSS_SYMBOL || ((LA636_22 >= DAY_HOUR_SYMBOL) && (LA636_22 <= DAY_SECOND_SYMBOL)) || LA636_22 == DESC_SYMBOL || ((LA636_22 >= DIV_OPERATOR) && (LA636_22 <= DIV_SYMBOL)) || LA636_22 == DOUBLE_QUOTED_TEXT || LA636_22 == ELSE_SYMBOL || LA636_22 == EQUAL_OPERATOR || ((LA636_22 >= FOR_SYMBOL) && (LA636_22 <= FROM_SYMBOL)) || ((LA636_22 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_22 <= GREATER_THAN_OPERATOR)) || ((LA636_22 >= GROUP_SYMBOL) && (LA636_22 <= HAVING_SYMBOL)) || LA636_22 == HEX_NUMBER || ((LA636_22 >= HOUR_MICROSECOND_SYMBOL) && (LA636_22 <= IDENTIFIER)) || LA636_22 == INNER_SYMBOL || LA636_22 == INTO_SYMBOL || LA636_22 == IN_SYMBOL || LA636_22 == IS_SYMBOL || ((LA636_22 >= JOIN_SYMBOL) && (LA636_22 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_22 >= LEFT_SYMBOL) && (LA636_22 <= LESS_THAN_OPERATOR)) || ((LA636_22 >= LIKE_SYMBOL) && (LA636_22 <= LIMIT_SYMBOL)) || LA636_22 == LOCK_SYMBOL || LA636_22 == LOGICAL_AND_OPERATOR || LA636_22 == LOGICAL_OR_OPERATOR || ((LA636_22 >= MINUS_OPERATOR) && (LA636_22 <= MINUTE_SECOND_SYMBOL)) || ((LA636_22 >= MOD_OPERATOR) && (LA636_22 <= MOD_SYMBOL)) || ((LA636_22 >= MULT_OPERATOR) && (LA636_22 <= NATURAL_SYMBOL)) || ((LA636_22 >= NOT_EQUAL2_OPERATOR) && (LA636_22 <= NOT_SYMBOL)) || LA636_22 == NULL_SAFE_EQUAL_OPERATOR || LA636_22 == ON_SYMBOL || ((LA636_22 >= ORDER_SYMBOL) && (LA636_22 <= OR_SYMBOL)) || LA636_22 == PLUS_OPERATOR || LA636_22 == PROCEDURE_SYMBOL || LA636_22 == REGEXP_SYMBOL || LA636_22 == RENAME_SYMBOL || LA636_22 == RIGHT_SYMBOL || LA636_22 == SECOND_MICROSECOND_SYMBOL || LA636_22 == SEMICOLON_SYMBOL || LA636_22 == SEPARATOR_SYMBOL || LA636_22 == SET_SYMBOL || ((LA636_22 >= SHIFT_LEFT_OPERATOR) && (LA636_22 <= SHIFT_RIGHT_OPERATOR)) || LA636_22 == SINGLE_QUOTED_TEXT || LA636_22 == STRAIGHT_JOIN_SYMBOL || LA636_22 == THEN_SYMBOL || LA636_22 == UNION_SYMBOL || LA636_22 == USING_SYMBOL || ((LA636_22 >= WHEN_SYMBOL) && (LA636_22 <= WHERE_SYMBOL)) || LA636_22 == WITH_SYMBOL || ((LA636_22 >= XOR_SYMBOL) && (LA636_22 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 22;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == USER_SYMBOL))
                    {
                        {
                            int LA636_24 = LA(2);
                            if ( (LA636_24 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_877 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 877;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_24 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_878 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 878;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_24 == EOF || ((LA636_24 >= ACCOUNT_SYMBOL) && (LA636_24 <= YEAR_SYMBOL)) || ((LA636_24 >= AND_SYMBOL) && (LA636_24 <= ASC_SYMBOL)) || ((LA636_24 >= AS_SYMBOL) && (LA636_24 <= AT_TEXT_SUFFIX)) || LA636_24 == BACK_TICK_QUOTED_ID || LA636_24 == BETWEEN_SYMBOL || LA636_24 == BIN_NUMBER || LA636_24 == BITWISE_AND_OPERATOR || ((LA636_24 >= BITWISE_OR_OPERATOR) && (LA636_24 <= BITWISE_XOR_OPERATOR)) || ((LA636_24 >= CLOSE_CURLY_SYMBOL) && (LA636_24 <= COLLATE_SYMBOL)) || LA636_24 == COMMA_SYMBOL || LA636_24 == CONCAT_PIPES_SYMBOL || LA636_24 == CROSS_SYMBOL || ((LA636_24 >= DAY_HOUR_SYMBOL) && (LA636_24 <= DAY_SECOND_SYMBOL)) || LA636_24 == DESC_SYMBOL || ((LA636_24 >= DIV_OPERATOR) && (LA636_24 <= DIV_SYMBOL)) || LA636_24 == DOUBLE_QUOTED_TEXT || LA636_24 == ELSE_SYMBOL || LA636_24 == EQUAL_OPERATOR || ((LA636_24 >= FOR_SYMBOL) && (LA636_24 <= FROM_SYMBOL)) || ((LA636_24 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_24 <= GREATER_THAN_OPERATOR)) || ((LA636_24 >= GROUP_SYMBOL) && (LA636_24 <= HAVING_SYMBOL)) || LA636_24 == HEX_NUMBER || ((LA636_24 >= HOUR_MICROSECOND_SYMBOL) && (LA636_24 <= IDENTIFIER)) || LA636_24 == INNER_SYMBOL || LA636_24 == INTO_SYMBOL || LA636_24 == IN_SYMBOL || LA636_24 == IS_SYMBOL || ((LA636_24 >= JOIN_SYMBOL) && (LA636_24 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_24 >= LEFT_SYMBOL) && (LA636_24 <= LESS_THAN_OPERATOR)) || ((LA636_24 >= LIKE_SYMBOL) && (LA636_24 <= LIMIT_SYMBOL)) || LA636_24 == LOCK_SYMBOL || LA636_24 == LOGICAL_AND_OPERATOR || LA636_24 == LOGICAL_OR_OPERATOR || ((LA636_24 >= MINUS_OPERATOR) && (LA636_24 <= MINUTE_SECOND_SYMBOL)) || ((LA636_24 >= MOD_OPERATOR) && (LA636_24 <= MOD_SYMBOL)) || ((LA636_24 >= MULT_OPERATOR) && (LA636_24 <= NATURAL_SYMBOL)) || ((LA636_24 >= NOT_EQUAL2_OPERATOR) && (LA636_24 <= NOT_SYMBOL)) || LA636_24 == NULL_SAFE_EQUAL_OPERATOR || LA636_24 == ON_SYMBOL || ((LA636_24 >= ORDER_SYMBOL) && (LA636_24 <= OR_SYMBOL)) || LA636_24 == PLUS_OPERATOR || LA636_24 == PROCEDURE_SYMBOL || LA636_24 == REGEXP_SYMBOL || LA636_24 == RENAME_SYMBOL || LA636_24 == RIGHT_SYMBOL || LA636_24 == SECOND_MICROSECOND_SYMBOL || LA636_24 == SEMICOLON_SYMBOL || LA636_24 == SEPARATOR_SYMBOL || LA636_24 == SET_SYMBOL || ((LA636_24 >= SHIFT_LEFT_OPERATOR) && (LA636_24 <= SHIFT_RIGHT_OPERATOR)) || LA636_24 == SINGLE_QUOTED_TEXT || LA636_24 == STRAIGHT_JOIN_SYMBOL || LA636_24 == THEN_SYMBOL || LA636_24 == UNION_SYMBOL || LA636_24 == USING_SYMBOL || ((LA636_24 >= WHEN_SYMBOL) && (LA636_24 <= WHERE_SYMBOL)) || LA636_24 == WITH_SYMBOL || ((LA636_24 >= XOR_SYMBOL) && (LA636_24 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 24;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == YEAR_SYMBOL))
                    {
                        {
                            int LA636_26 = LA(2);
                            if ( (LA636_26 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_963 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 963;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_26 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_964 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 964;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_26 == EOF || ((LA636_26 >= ACCOUNT_SYMBOL) && (LA636_26 <= YEAR_SYMBOL)) || ((LA636_26 >= AND_SYMBOL) && (LA636_26 <= ASC_SYMBOL)) || ((LA636_26 >= AS_SYMBOL) && (LA636_26 <= AT_TEXT_SUFFIX)) || LA636_26 == BACK_TICK_QUOTED_ID || LA636_26 == BETWEEN_SYMBOL || LA636_26 == BIN_NUMBER || LA636_26 == BITWISE_AND_OPERATOR || ((LA636_26 >= BITWISE_OR_OPERATOR) && (LA636_26 <= BITWISE_XOR_OPERATOR)) || ((LA636_26 >= CLOSE_CURLY_SYMBOL) && (LA636_26 <= COLLATE_SYMBOL)) || LA636_26 == COMMA_SYMBOL || LA636_26 == CONCAT_PIPES_SYMBOL || LA636_26 == CROSS_SYMBOL || ((LA636_26 >= DAY_HOUR_SYMBOL) && (LA636_26 <= DAY_SECOND_SYMBOL)) || LA636_26 == DESC_SYMBOL || ((LA636_26 >= DIV_OPERATOR) && (LA636_26 <= DIV_SYMBOL)) || LA636_26 == DOUBLE_QUOTED_TEXT || LA636_26 == ELSE_SYMBOL || LA636_26 == EQUAL_OPERATOR || ((LA636_26 >= FOR_SYMBOL) && (LA636_26 <= FROM_SYMBOL)) || ((LA636_26 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_26 <= GREATER_THAN_OPERATOR)) || ((LA636_26 >= GROUP_SYMBOL) && (LA636_26 <= HAVING_SYMBOL)) || LA636_26 == HEX_NUMBER || ((LA636_26 >= HOUR_MICROSECOND_SYMBOL) && (LA636_26 <= IDENTIFIER)) || LA636_26 == INNER_SYMBOL || LA636_26 == INTO_SYMBOL || LA636_26 == IN_SYMBOL || LA636_26 == IS_SYMBOL || ((LA636_26 >= JOIN_SYMBOL) && (LA636_26 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_26 >= LEFT_SYMBOL) && (LA636_26 <= LESS_THAN_OPERATOR)) || ((LA636_26 >= LIKE_SYMBOL) && (LA636_26 <= LIMIT_SYMBOL)) || LA636_26 == LOCK_SYMBOL || LA636_26 == LOGICAL_AND_OPERATOR || LA636_26 == LOGICAL_OR_OPERATOR || ((LA636_26 >= MINUS_OPERATOR) && (LA636_26 <= MINUTE_SECOND_SYMBOL)) || ((LA636_26 >= MOD_OPERATOR) && (LA636_26 <= MOD_SYMBOL)) || ((LA636_26 >= MULT_OPERATOR) && (LA636_26 <= NATURAL_SYMBOL)) || ((LA636_26 >= NOT_EQUAL2_OPERATOR) && (LA636_26 <= NOT_SYMBOL)) || LA636_26 == NULL_SAFE_EQUAL_OPERATOR || LA636_26 == ON_SYMBOL || ((LA636_26 >= ORDER_SYMBOL) && (LA636_26 <= OR_SYMBOL)) || LA636_26 == PLUS_OPERATOR || LA636_26 == PROCEDURE_SYMBOL || LA636_26 == REGEXP_SYMBOL || LA636_26 == RENAME_SYMBOL || LA636_26 == RIGHT_SYMBOL || LA636_26 == SECOND_MICROSECOND_SYMBOL || LA636_26 == SEMICOLON_SYMBOL || LA636_26 == SEPARATOR_SYMBOL || LA636_26 == SET_SYMBOL || ((LA636_26 >= SHIFT_LEFT_OPERATOR) && (LA636_26 <= SHIFT_RIGHT_OPERATOR)) || LA636_26 == SINGLE_QUOTED_TEXT || LA636_26 == STRAIGHT_JOIN_SYMBOL || LA636_26 == THEN_SYMBOL || LA636_26 == UNION_SYMBOL || LA636_26 == USING_SYMBOL || ((LA636_26 >= WHEN_SYMBOL) && (LA636_26 <= WHERE_SYMBOL)) || LA636_26 == WITH_SYMBOL || ((LA636_26 >= XOR_SYMBOL) && (LA636_26 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 26;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == ADDDATE_SYMBOL || LA636_0 == SUBDATE_SYMBOL))
                    {
                        {
                            int LA636_27 = LA(2);
                            if ( (LA636_27 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1049 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1049;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_27 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1050 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1050;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_27 == EOF || ((LA636_27 >= ACCOUNT_SYMBOL) && (LA636_27 <= YEAR_SYMBOL)) || ((LA636_27 >= AND_SYMBOL) && (LA636_27 <= ASC_SYMBOL)) || ((LA636_27 >= AS_SYMBOL) && (LA636_27 <= AT_TEXT_SUFFIX)) || LA636_27 == BACK_TICK_QUOTED_ID || LA636_27 == BETWEEN_SYMBOL || LA636_27 == BIN_NUMBER || LA636_27 == BITWISE_AND_OPERATOR || ((LA636_27 >= BITWISE_OR_OPERATOR) && (LA636_27 <= BITWISE_XOR_OPERATOR)) || ((LA636_27 >= CLOSE_CURLY_SYMBOL) && (LA636_27 <= COLLATE_SYMBOL)) || LA636_27 == COMMA_SYMBOL || LA636_27 == CONCAT_PIPES_SYMBOL || LA636_27 == CROSS_SYMBOL || ((LA636_27 >= DAY_HOUR_SYMBOL) && (LA636_27 <= DAY_SECOND_SYMBOL)) || LA636_27 == DESC_SYMBOL || ((LA636_27 >= DIV_OPERATOR) && (LA636_27 <= DIV_SYMBOL)) || LA636_27 == DOUBLE_QUOTED_TEXT || LA636_27 == ELSE_SYMBOL || LA636_27 == EQUAL_OPERATOR || ((LA636_27 >= FOR_SYMBOL) && (LA636_27 <= FROM_SYMBOL)) || ((LA636_27 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_27 <= GREATER_THAN_OPERATOR)) || ((LA636_27 >= GROUP_SYMBOL) && (LA636_27 <= HAVING_SYMBOL)) || LA636_27 == HEX_NUMBER || ((LA636_27 >= HOUR_MICROSECOND_SYMBOL) && (LA636_27 <= IDENTIFIER)) || LA636_27 == INNER_SYMBOL || LA636_27 == INTO_SYMBOL || LA636_27 == IN_SYMBOL || LA636_27 == IS_SYMBOL || ((LA636_27 >= JOIN_SYMBOL) && (LA636_27 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_27 >= LEFT_SYMBOL) && (LA636_27 <= LESS_THAN_OPERATOR)) || ((LA636_27 >= LIKE_SYMBOL) && (LA636_27 <= LIMIT_SYMBOL)) || LA636_27 == LOCK_SYMBOL || LA636_27 == LOGICAL_AND_OPERATOR || LA636_27 == LOGICAL_OR_OPERATOR || ((LA636_27 >= MINUS_OPERATOR) && (LA636_27 <= MINUTE_SECOND_SYMBOL)) || ((LA636_27 >= MOD_OPERATOR) && (LA636_27 <= MOD_SYMBOL)) || ((LA636_27 >= MULT_OPERATOR) && (LA636_27 <= NATURAL_SYMBOL)) || ((LA636_27 >= NOT_EQUAL2_OPERATOR) && (LA636_27 <= NOT_SYMBOL)) || LA636_27 == NULL_SAFE_EQUAL_OPERATOR || LA636_27 == ON_SYMBOL || ((LA636_27 >= ORDER_SYMBOL) && (LA636_27 <= OR_SYMBOL)) || LA636_27 == PLUS_OPERATOR || LA636_27 == PROCEDURE_SYMBOL || LA636_27 == REGEXP_SYMBOL || LA636_27 == RENAME_SYMBOL || LA636_27 == RIGHT_SYMBOL || LA636_27 == SECOND_MICROSECOND_SYMBOL || LA636_27 == SEMICOLON_SYMBOL || LA636_27 == SEPARATOR_SYMBOL || LA636_27 == SET_SYMBOL || ((LA636_27 >= SHIFT_LEFT_OPERATOR) && (LA636_27 <= SHIFT_RIGHT_OPERATOR)) || LA636_27 == SINGLE_QUOTED_TEXT || LA636_27 == STRAIGHT_JOIN_SYMBOL || LA636_27 == THEN_SYMBOL || LA636_27 == UNION_SYMBOL || LA636_27 == USING_SYMBOL || ((LA636_27 >= WHEN_SYMBOL) && (LA636_27 <= WHERE_SYMBOL)) || LA636_27 == WITH_SYMBOL || ((LA636_27 >= XOR_SYMBOL) && (LA636_27 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 27;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == GET_FORMAT_SYMBOL))
                    {
                        {
                            int LA636_32 = LA(2);
                            if ( (LA636_32 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1135 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1135;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_32 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1136 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1136;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_32 == EOF || ((LA636_32 >= ACCOUNT_SYMBOL) && (LA636_32 <= YEAR_SYMBOL)) || ((LA636_32 >= AND_SYMBOL) && (LA636_32 <= ASC_SYMBOL)) || ((LA636_32 >= AS_SYMBOL) && (LA636_32 <= AT_TEXT_SUFFIX)) || LA636_32 == BACK_TICK_QUOTED_ID || LA636_32 == BETWEEN_SYMBOL || LA636_32 == BIN_NUMBER || LA636_32 == BITWISE_AND_OPERATOR || ((LA636_32 >= BITWISE_OR_OPERATOR) && (LA636_32 <= BITWISE_XOR_OPERATOR)) || ((LA636_32 >= CLOSE_CURLY_SYMBOL) && (LA636_32 <= COLLATE_SYMBOL)) || LA636_32 == COMMA_SYMBOL || LA636_32 == CONCAT_PIPES_SYMBOL || LA636_32 == CROSS_SYMBOL || ((LA636_32 >= DAY_HOUR_SYMBOL) && (LA636_32 <= DAY_SECOND_SYMBOL)) || LA636_32 == DESC_SYMBOL || ((LA636_32 >= DIV_OPERATOR) && (LA636_32 <= DIV_SYMBOL)) || LA636_32 == DOUBLE_QUOTED_TEXT || LA636_32 == ELSE_SYMBOL || LA636_32 == EQUAL_OPERATOR || ((LA636_32 >= FOR_SYMBOL) && (LA636_32 <= FROM_SYMBOL)) || ((LA636_32 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_32 <= GREATER_THAN_OPERATOR)) || ((LA636_32 >= GROUP_SYMBOL) && (LA636_32 <= HAVING_SYMBOL)) || LA636_32 == HEX_NUMBER || ((LA636_32 >= HOUR_MICROSECOND_SYMBOL) && (LA636_32 <= IDENTIFIER)) || LA636_32 == INNER_SYMBOL || LA636_32 == INTO_SYMBOL || LA636_32 == IN_SYMBOL || LA636_32 == IS_SYMBOL || ((LA636_32 >= JOIN_SYMBOL) && (LA636_32 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_32 >= LEFT_SYMBOL) && (LA636_32 <= LESS_THAN_OPERATOR)) || ((LA636_32 >= LIKE_SYMBOL) && (LA636_32 <= LIMIT_SYMBOL)) || LA636_32 == LOCK_SYMBOL || LA636_32 == LOGICAL_AND_OPERATOR || LA636_32 == LOGICAL_OR_OPERATOR || ((LA636_32 >= MINUS_OPERATOR) && (LA636_32 <= MINUTE_SECOND_SYMBOL)) || ((LA636_32 >= MOD_OPERATOR) && (LA636_32 <= MOD_SYMBOL)) || ((LA636_32 >= MULT_OPERATOR) && (LA636_32 <= NATURAL_SYMBOL)) || ((LA636_32 >= NOT_EQUAL2_OPERATOR) && (LA636_32 <= NOT_SYMBOL)) || LA636_32 == NULL_SAFE_EQUAL_OPERATOR || LA636_32 == ON_SYMBOL || ((LA636_32 >= ORDER_SYMBOL) && (LA636_32 <= OR_SYMBOL)) || LA636_32 == PLUS_OPERATOR || LA636_32 == PROCEDURE_SYMBOL || LA636_32 == REGEXP_SYMBOL || LA636_32 == RENAME_SYMBOL || LA636_32 == RIGHT_SYMBOL || LA636_32 == SECOND_MICROSECOND_SYMBOL || LA636_32 == SEMICOLON_SYMBOL || LA636_32 == SEPARATOR_SYMBOL || LA636_32 == SET_SYMBOL || ((LA636_32 >= SHIFT_LEFT_OPERATOR) && (LA636_32 <= SHIFT_RIGHT_OPERATOR)) || LA636_32 == SINGLE_QUOTED_TEXT || LA636_32 == STRAIGHT_JOIN_SYMBOL || LA636_32 == THEN_SYMBOL || LA636_32 == UNION_SYMBOL || LA636_32 == USING_SYMBOL || ((LA636_32 >= WHEN_SYMBOL) && (LA636_32 <= WHERE_SYMBOL)) || LA636_32 == WITH_SYMBOL || ((LA636_32 >= XOR_SYMBOL) && (LA636_32 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 32;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (((LA636_0 >= TIMESTAMP_ADD_SYMBOL) && (LA636_0 <= TIMESTAMP_DIFF_SYMBOL))))
                    {
                        {
                            int LA636_37 = LA(2);
                            if ( (LA636_37 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1221 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1221;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_37 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1222 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1222;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_37 == EOF || ((LA636_37 >= ACCOUNT_SYMBOL) && (LA636_37 <= YEAR_SYMBOL)) || ((LA636_37 >= AND_SYMBOL) && (LA636_37 <= ASC_SYMBOL)) || ((LA636_37 >= AS_SYMBOL) && (LA636_37 <= AT_TEXT_SUFFIX)) || LA636_37 == BACK_TICK_QUOTED_ID || LA636_37 == BETWEEN_SYMBOL || LA636_37 == BIN_NUMBER || LA636_37 == BITWISE_AND_OPERATOR || ((LA636_37 >= BITWISE_OR_OPERATOR) && (LA636_37 <= BITWISE_XOR_OPERATOR)) || ((LA636_37 >= CLOSE_CURLY_SYMBOL) && (LA636_37 <= COLLATE_SYMBOL)) || LA636_37 == COMMA_SYMBOL || LA636_37 == CONCAT_PIPES_SYMBOL || LA636_37 == CROSS_SYMBOL || ((LA636_37 >= DAY_HOUR_SYMBOL) && (LA636_37 <= DAY_SECOND_SYMBOL)) || LA636_37 == DESC_SYMBOL || ((LA636_37 >= DIV_OPERATOR) && (LA636_37 <= DIV_SYMBOL)) || LA636_37 == DOUBLE_QUOTED_TEXT || LA636_37 == ELSE_SYMBOL || LA636_37 == EQUAL_OPERATOR || ((LA636_37 >= FOR_SYMBOL) && (LA636_37 <= FROM_SYMBOL)) || ((LA636_37 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_37 <= GREATER_THAN_OPERATOR)) || ((LA636_37 >= GROUP_SYMBOL) && (LA636_37 <= HAVING_SYMBOL)) || LA636_37 == HEX_NUMBER || ((LA636_37 >= HOUR_MICROSECOND_SYMBOL) && (LA636_37 <= IDENTIFIER)) || LA636_37 == INNER_SYMBOL || LA636_37 == INTO_SYMBOL || LA636_37 == IN_SYMBOL || LA636_37 == IS_SYMBOL || ((LA636_37 >= JOIN_SYMBOL) && (LA636_37 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_37 >= LEFT_SYMBOL) && (LA636_37 <= LESS_THAN_OPERATOR)) || ((LA636_37 >= LIKE_SYMBOL) && (LA636_37 <= LIMIT_SYMBOL)) || LA636_37 == LOCK_SYMBOL || LA636_37 == LOGICAL_AND_OPERATOR || LA636_37 == LOGICAL_OR_OPERATOR || ((LA636_37 >= MINUS_OPERATOR) && (LA636_37 <= MINUTE_SECOND_SYMBOL)) || ((LA636_37 >= MOD_OPERATOR) && (LA636_37 <= MOD_SYMBOL)) || ((LA636_37 >= MULT_OPERATOR) && (LA636_37 <= NATURAL_SYMBOL)) || ((LA636_37 >= NOT_EQUAL2_OPERATOR) && (LA636_37 <= NOT_SYMBOL)) || LA636_37 == NULL_SAFE_EQUAL_OPERATOR || LA636_37 == ON_SYMBOL || ((LA636_37 >= ORDER_SYMBOL) && (LA636_37 <= OR_SYMBOL)) || LA636_37 == PLUS_OPERATOR || LA636_37 == PROCEDURE_SYMBOL || LA636_37 == REGEXP_SYMBOL || LA636_37 == RENAME_SYMBOL || LA636_37 == RIGHT_SYMBOL || LA636_37 == SECOND_MICROSECOND_SYMBOL || LA636_37 == SEMICOLON_SYMBOL || LA636_37 == SEPARATOR_SYMBOL || LA636_37 == SET_SYMBOL || ((LA636_37 >= SHIFT_LEFT_OPERATOR) && (LA636_37 <= SHIFT_RIGHT_OPERATOR)) || LA636_37 == SINGLE_QUOTED_TEXT || LA636_37 == STRAIGHT_JOIN_SYMBOL || LA636_37 == THEN_SYMBOL || LA636_37 == UNION_SYMBOL || LA636_37 == USING_SYMBOL || ((LA636_37 >= WHEN_SYMBOL) && (LA636_37 <= WHERE_SYMBOL)) || LA636_37 == WITH_SYMBOL || ((LA636_37 >= XOR_SYMBOL) && (LA636_37 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 37;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == ASCII_SYMBOL))
                    {
                        {
                            int LA636_41 = LA(2);
                            if ( (LA636_41 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1307 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1307;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_41 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1308 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1308;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_41 == EOF || ((LA636_41 >= ACCOUNT_SYMBOL) && (LA636_41 <= YEAR_SYMBOL)) || ((LA636_41 >= AND_SYMBOL) && (LA636_41 <= ASC_SYMBOL)) || ((LA636_41 >= AS_SYMBOL) && (LA636_41 <= AT_TEXT_SUFFIX)) || LA636_41 == BACK_TICK_QUOTED_ID || LA636_41 == BETWEEN_SYMBOL || LA636_41 == BIN_NUMBER || LA636_41 == BITWISE_AND_OPERATOR || ((LA636_41 >= BITWISE_OR_OPERATOR) && (LA636_41 <= BITWISE_XOR_OPERATOR)) || ((LA636_41 >= CLOSE_CURLY_SYMBOL) && (LA636_41 <= COLLATE_SYMBOL)) || LA636_41 == COMMA_SYMBOL || LA636_41 == CONCAT_PIPES_SYMBOL || LA636_41 == CROSS_SYMBOL || ((LA636_41 >= DAY_HOUR_SYMBOL) && (LA636_41 <= DAY_SECOND_SYMBOL)) || LA636_41 == DESC_SYMBOL || ((LA636_41 >= DIV_OPERATOR) && (LA636_41 <= DIV_SYMBOL)) || LA636_41 == DOUBLE_QUOTED_TEXT || LA636_41 == ELSE_SYMBOL || LA636_41 == EQUAL_OPERATOR || ((LA636_41 >= FOR_SYMBOL) && (LA636_41 <= FROM_SYMBOL)) || ((LA636_41 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_41 <= GREATER_THAN_OPERATOR)) || ((LA636_41 >= GROUP_SYMBOL) && (LA636_41 <= HAVING_SYMBOL)) || LA636_41 == HEX_NUMBER || ((LA636_41 >= HOUR_MICROSECOND_SYMBOL) && (LA636_41 <= IDENTIFIER)) || LA636_41 == INNER_SYMBOL || LA636_41 == INTO_SYMBOL || LA636_41 == IN_SYMBOL || LA636_41 == IS_SYMBOL || ((LA636_41 >= JOIN_SYMBOL) && (LA636_41 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_41 >= LEFT_SYMBOL) && (LA636_41 <= LESS_THAN_OPERATOR)) || ((LA636_41 >= LIKE_SYMBOL) && (LA636_41 <= LIMIT_SYMBOL)) || LA636_41 == LOCK_SYMBOL || LA636_41 == LOGICAL_AND_OPERATOR || LA636_41 == LOGICAL_OR_OPERATOR || ((LA636_41 >= MINUS_OPERATOR) && (LA636_41 <= MINUTE_SECOND_SYMBOL)) || ((LA636_41 >= MOD_OPERATOR) && (LA636_41 <= MOD_SYMBOL)) || ((LA636_41 >= MULT_OPERATOR) && (LA636_41 <= NATURAL_SYMBOL)) || ((LA636_41 >= NOT_EQUAL2_OPERATOR) && (LA636_41 <= NOT_SYMBOL)) || LA636_41 == NULL_SAFE_EQUAL_OPERATOR || LA636_41 == ON_SYMBOL || ((LA636_41 >= ORDER_SYMBOL) && (LA636_41 <= OR_SYMBOL)) || LA636_41 == PLUS_OPERATOR || LA636_41 == PROCEDURE_SYMBOL || LA636_41 == REGEXP_SYMBOL || LA636_41 == RENAME_SYMBOL || LA636_41 == RIGHT_SYMBOL || LA636_41 == SECOND_MICROSECOND_SYMBOL || LA636_41 == SEMICOLON_SYMBOL || LA636_41 == SEPARATOR_SYMBOL || LA636_41 == SET_SYMBOL || ((LA636_41 >= SHIFT_LEFT_OPERATOR) && (LA636_41 <= SHIFT_RIGHT_OPERATOR)) || LA636_41 == SINGLE_QUOTED_TEXT || LA636_41 == STRAIGHT_JOIN_SYMBOL || LA636_41 == THEN_SYMBOL || LA636_41 == UNION_SYMBOL || LA636_41 == USING_SYMBOL || ((LA636_41 >= WHEN_SYMBOL) && (LA636_41 <= WHERE_SYMBOL)) || LA636_41 == WITH_SYMBOL || ((LA636_41 >= XOR_SYMBOL) && (LA636_41 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 41;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == CHARSET_SYMBOL))
                    {
                        {
                            int LA636_42 = LA(2);
                            if ( (LA636_42 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1393 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1393;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_42 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1394 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1394;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_42 == EOF || ((LA636_42 >= ACCOUNT_SYMBOL) && (LA636_42 <= YEAR_SYMBOL)) || ((LA636_42 >= AND_SYMBOL) && (LA636_42 <= ASC_SYMBOL)) || ((LA636_42 >= AS_SYMBOL) && (LA636_42 <= AT_TEXT_SUFFIX)) || LA636_42 == BACK_TICK_QUOTED_ID || LA636_42 == BETWEEN_SYMBOL || LA636_42 == BIN_NUMBER || LA636_42 == BITWISE_AND_OPERATOR || ((LA636_42 >= BITWISE_OR_OPERATOR) && (LA636_42 <= BITWISE_XOR_OPERATOR)) || ((LA636_42 >= CLOSE_CURLY_SYMBOL) && (LA636_42 <= COLLATE_SYMBOL)) || LA636_42 == COMMA_SYMBOL || LA636_42 == CONCAT_PIPES_SYMBOL || LA636_42 == CROSS_SYMBOL || ((LA636_42 >= DAY_HOUR_SYMBOL) && (LA636_42 <= DAY_SECOND_SYMBOL)) || LA636_42 == DESC_SYMBOL || ((LA636_42 >= DIV_OPERATOR) && (LA636_42 <= DIV_SYMBOL)) || LA636_42 == DOUBLE_QUOTED_TEXT || LA636_42 == ELSE_SYMBOL || LA636_42 == EQUAL_OPERATOR || ((LA636_42 >= FOR_SYMBOL) && (LA636_42 <= FROM_SYMBOL)) || ((LA636_42 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_42 <= GREATER_THAN_OPERATOR)) || ((LA636_42 >= GROUP_SYMBOL) && (LA636_42 <= HAVING_SYMBOL)) || LA636_42 == HEX_NUMBER || ((LA636_42 >= HOUR_MICROSECOND_SYMBOL) && (LA636_42 <= IDENTIFIER)) || LA636_42 == INNER_SYMBOL || LA636_42 == INTO_SYMBOL || LA636_42 == IN_SYMBOL || LA636_42 == IS_SYMBOL || ((LA636_42 >= JOIN_SYMBOL) && (LA636_42 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_42 >= LEFT_SYMBOL) && (LA636_42 <= LESS_THAN_OPERATOR)) || ((LA636_42 >= LIKE_SYMBOL) && (LA636_42 <= LIMIT_SYMBOL)) || LA636_42 == LOCK_SYMBOL || LA636_42 == LOGICAL_AND_OPERATOR || LA636_42 == LOGICAL_OR_OPERATOR || ((LA636_42 >= MINUS_OPERATOR) && (LA636_42 <= MINUTE_SECOND_SYMBOL)) || ((LA636_42 >= MOD_OPERATOR) && (LA636_42 <= MOD_SYMBOL)) || ((LA636_42 >= MULT_OPERATOR) && (LA636_42 <= NATURAL_SYMBOL)) || ((LA636_42 >= NOT_EQUAL2_OPERATOR) && (LA636_42 <= NOT_SYMBOL)) || LA636_42 == NULL_SAFE_EQUAL_OPERATOR || LA636_42 == ON_SYMBOL || ((LA636_42 >= ORDER_SYMBOL) && (LA636_42 <= OR_SYMBOL)) || LA636_42 == PLUS_OPERATOR || LA636_42 == PROCEDURE_SYMBOL || LA636_42 == REGEXP_SYMBOL || LA636_42 == RENAME_SYMBOL || LA636_42 == RIGHT_SYMBOL || LA636_42 == SECOND_MICROSECOND_SYMBOL || LA636_42 == SEMICOLON_SYMBOL || LA636_42 == SEPARATOR_SYMBOL || LA636_42 == SET_SYMBOL || ((LA636_42 >= SHIFT_LEFT_OPERATOR) && (LA636_42 <= SHIFT_RIGHT_OPERATOR)) || LA636_42 == SINGLE_QUOTED_TEXT || LA636_42 == STRAIGHT_JOIN_SYMBOL || LA636_42 == THEN_SYMBOL || LA636_42 == UNION_SYMBOL || LA636_42 == USING_SYMBOL || ((LA636_42 >= WHEN_SYMBOL) && (LA636_42 <= WHERE_SYMBOL)) || LA636_42 == WITH_SYMBOL || ((LA636_42 >= XOR_SYMBOL) && (LA636_42 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 42;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == COALESCE_SYMBOL))
                    {
                        {
                            int LA636_43 = LA(2);
                            if ( (LA636_43 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1479 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1479;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_43 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1480 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1480;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_43 == EOF || ((LA636_43 >= ACCOUNT_SYMBOL) && (LA636_43 <= YEAR_SYMBOL)) || ((LA636_43 >= AND_SYMBOL) && (LA636_43 <= ASC_SYMBOL)) || ((LA636_43 >= AS_SYMBOL) && (LA636_43 <= AT_TEXT_SUFFIX)) || LA636_43 == BACK_TICK_QUOTED_ID || LA636_43 == BETWEEN_SYMBOL || LA636_43 == BIN_NUMBER || LA636_43 == BITWISE_AND_OPERATOR || ((LA636_43 >= BITWISE_OR_OPERATOR) && (LA636_43 <= BITWISE_XOR_OPERATOR)) || ((LA636_43 >= CLOSE_CURLY_SYMBOL) && (LA636_43 <= COLLATE_SYMBOL)) || LA636_43 == COMMA_SYMBOL || LA636_43 == CONCAT_PIPES_SYMBOL || LA636_43 == CROSS_SYMBOL || ((LA636_43 >= DAY_HOUR_SYMBOL) && (LA636_43 <= DAY_SECOND_SYMBOL)) || LA636_43 == DESC_SYMBOL || ((LA636_43 >= DIV_OPERATOR) && (LA636_43 <= DIV_SYMBOL)) || LA636_43 == DOUBLE_QUOTED_TEXT || LA636_43 == ELSE_SYMBOL || LA636_43 == EQUAL_OPERATOR || ((LA636_43 >= FOR_SYMBOL) && (LA636_43 <= FROM_SYMBOL)) || ((LA636_43 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_43 <= GREATER_THAN_OPERATOR)) || ((LA636_43 >= GROUP_SYMBOL) && (LA636_43 <= HAVING_SYMBOL)) || LA636_43 == HEX_NUMBER || ((LA636_43 >= HOUR_MICROSECOND_SYMBOL) && (LA636_43 <= IDENTIFIER)) || LA636_43 == INNER_SYMBOL || LA636_43 == INTO_SYMBOL || LA636_43 == IN_SYMBOL || LA636_43 == IS_SYMBOL || ((LA636_43 >= JOIN_SYMBOL) && (LA636_43 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_43 >= LEFT_SYMBOL) && (LA636_43 <= LESS_THAN_OPERATOR)) || ((LA636_43 >= LIKE_SYMBOL) && (LA636_43 <= LIMIT_SYMBOL)) || LA636_43 == LOCK_SYMBOL || LA636_43 == LOGICAL_AND_OPERATOR || LA636_43 == LOGICAL_OR_OPERATOR || ((LA636_43 >= MINUS_OPERATOR) && (LA636_43 <= MINUTE_SECOND_SYMBOL)) || ((LA636_43 >= MOD_OPERATOR) && (LA636_43 <= MOD_SYMBOL)) || ((LA636_43 >= MULT_OPERATOR) && (LA636_43 <= NATURAL_SYMBOL)) || ((LA636_43 >= NOT_EQUAL2_OPERATOR) && (LA636_43 <= NOT_SYMBOL)) || LA636_43 == NULL_SAFE_EQUAL_OPERATOR || LA636_43 == ON_SYMBOL || ((LA636_43 >= ORDER_SYMBOL) && (LA636_43 <= OR_SYMBOL)) || LA636_43 == PLUS_OPERATOR || LA636_43 == PROCEDURE_SYMBOL || LA636_43 == REGEXP_SYMBOL || LA636_43 == RENAME_SYMBOL || LA636_43 == RIGHT_SYMBOL || LA636_43 == SECOND_MICROSECOND_SYMBOL || LA636_43 == SEMICOLON_SYMBOL || LA636_43 == SEPARATOR_SYMBOL || LA636_43 == SET_SYMBOL || ((LA636_43 >= SHIFT_LEFT_OPERATOR) && (LA636_43 <= SHIFT_RIGHT_OPERATOR)) || LA636_43 == SINGLE_QUOTED_TEXT || LA636_43 == STRAIGHT_JOIN_SYMBOL || LA636_43 == THEN_SYMBOL || LA636_43 == UNION_SYMBOL || LA636_43 == USING_SYMBOL || ((LA636_43 >= WHEN_SYMBOL) && (LA636_43 <= WHERE_SYMBOL)) || LA636_43 == WITH_SYMBOL || ((LA636_43 >= XOR_SYMBOL) && (LA636_43 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 43;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == COLLATION_SYMBOL))
                    {
                        {
                            int LA636_44 = LA(2);
                            if ( (LA636_44 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1565 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1565;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_44 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1566 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1566;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_44 == EOF || ((LA636_44 >= ACCOUNT_SYMBOL) && (LA636_44 <= YEAR_SYMBOL)) || ((LA636_44 >= AND_SYMBOL) && (LA636_44 <= ASC_SYMBOL)) || ((LA636_44 >= AS_SYMBOL) && (LA636_44 <= AT_TEXT_SUFFIX)) || LA636_44 == BACK_TICK_QUOTED_ID || LA636_44 == BETWEEN_SYMBOL || LA636_44 == BIN_NUMBER || LA636_44 == BITWISE_AND_OPERATOR || ((LA636_44 >= BITWISE_OR_OPERATOR) && (LA636_44 <= BITWISE_XOR_OPERATOR)) || ((LA636_44 >= CLOSE_CURLY_SYMBOL) && (LA636_44 <= COLLATE_SYMBOL)) || LA636_44 == COMMA_SYMBOL || LA636_44 == CONCAT_PIPES_SYMBOL || LA636_44 == CROSS_SYMBOL || ((LA636_44 >= DAY_HOUR_SYMBOL) && (LA636_44 <= DAY_SECOND_SYMBOL)) || LA636_44 == DESC_SYMBOL || ((LA636_44 >= DIV_OPERATOR) && (LA636_44 <= DIV_SYMBOL)) || LA636_44 == DOUBLE_QUOTED_TEXT || LA636_44 == ELSE_SYMBOL || LA636_44 == EQUAL_OPERATOR || ((LA636_44 >= FOR_SYMBOL) && (LA636_44 <= FROM_SYMBOL)) || ((LA636_44 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_44 <= GREATER_THAN_OPERATOR)) || ((LA636_44 >= GROUP_SYMBOL) && (LA636_44 <= HAVING_SYMBOL)) || LA636_44 == HEX_NUMBER || ((LA636_44 >= HOUR_MICROSECOND_SYMBOL) && (LA636_44 <= IDENTIFIER)) || LA636_44 == INNER_SYMBOL || LA636_44 == INTO_SYMBOL || LA636_44 == IN_SYMBOL || LA636_44 == IS_SYMBOL || ((LA636_44 >= JOIN_SYMBOL) && (LA636_44 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_44 >= LEFT_SYMBOL) && (LA636_44 <= LESS_THAN_OPERATOR)) || ((LA636_44 >= LIKE_SYMBOL) && (LA636_44 <= LIMIT_SYMBOL)) || LA636_44 == LOCK_SYMBOL || LA636_44 == LOGICAL_AND_OPERATOR || LA636_44 == LOGICAL_OR_OPERATOR || ((LA636_44 >= MINUS_OPERATOR) && (LA636_44 <= MINUTE_SECOND_SYMBOL)) || ((LA636_44 >= MOD_OPERATOR) && (LA636_44 <= MOD_SYMBOL)) || ((LA636_44 >= MULT_OPERATOR) && (LA636_44 <= NATURAL_SYMBOL)) || ((LA636_44 >= NOT_EQUAL2_OPERATOR) && (LA636_44 <= NOT_SYMBOL)) || LA636_44 == NULL_SAFE_EQUAL_OPERATOR || LA636_44 == ON_SYMBOL || ((LA636_44 >= ORDER_SYMBOL) && (LA636_44 <= OR_SYMBOL)) || LA636_44 == PLUS_OPERATOR || LA636_44 == PROCEDURE_SYMBOL || LA636_44 == REGEXP_SYMBOL || LA636_44 == RENAME_SYMBOL || LA636_44 == RIGHT_SYMBOL || LA636_44 == SECOND_MICROSECOND_SYMBOL || LA636_44 == SEMICOLON_SYMBOL || LA636_44 == SEPARATOR_SYMBOL || LA636_44 == SET_SYMBOL || ((LA636_44 >= SHIFT_LEFT_OPERATOR) && (LA636_44 <= SHIFT_RIGHT_OPERATOR)) || LA636_44 == SINGLE_QUOTED_TEXT || LA636_44 == STRAIGHT_JOIN_SYMBOL || LA636_44 == THEN_SYMBOL || LA636_44 == UNION_SYMBOL || LA636_44 == USING_SYMBOL || ((LA636_44 >= WHEN_SYMBOL) && (LA636_44 <= WHERE_SYMBOL)) || LA636_44 == WITH_SYMBOL || ((LA636_44 >= XOR_SYMBOL) && (LA636_44 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 44;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == FORMAT_SYMBOL))
                    {
                        {
                            int LA636_47 = LA(2);
                            if ( (LA636_47 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1651 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1651;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_47 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1652 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1652;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_47 == EOF || ((LA636_47 >= ACCOUNT_SYMBOL) && (LA636_47 <= YEAR_SYMBOL)) || ((LA636_47 >= AND_SYMBOL) && (LA636_47 <= ASC_SYMBOL)) || ((LA636_47 >= AS_SYMBOL) && (LA636_47 <= AT_TEXT_SUFFIX)) || LA636_47 == BACK_TICK_QUOTED_ID || LA636_47 == BETWEEN_SYMBOL || LA636_47 == BIN_NUMBER || LA636_47 == BITWISE_AND_OPERATOR || ((LA636_47 >= BITWISE_OR_OPERATOR) && (LA636_47 <= BITWISE_XOR_OPERATOR)) || ((LA636_47 >= CLOSE_CURLY_SYMBOL) && (LA636_47 <= COLLATE_SYMBOL)) || LA636_47 == COMMA_SYMBOL || LA636_47 == CONCAT_PIPES_SYMBOL || LA636_47 == CROSS_SYMBOL || ((LA636_47 >= DAY_HOUR_SYMBOL) && (LA636_47 <= DAY_SECOND_SYMBOL)) || LA636_47 == DESC_SYMBOL || ((LA636_47 >= DIV_OPERATOR) && (LA636_47 <= DIV_SYMBOL)) || LA636_47 == DOUBLE_QUOTED_TEXT || LA636_47 == ELSE_SYMBOL || LA636_47 == EQUAL_OPERATOR || ((LA636_47 >= FOR_SYMBOL) && (LA636_47 <= FROM_SYMBOL)) || ((LA636_47 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_47 <= GREATER_THAN_OPERATOR)) || ((LA636_47 >= GROUP_SYMBOL) && (LA636_47 <= HAVING_SYMBOL)) || LA636_47 == HEX_NUMBER || ((LA636_47 >= HOUR_MICROSECOND_SYMBOL) && (LA636_47 <= IDENTIFIER)) || LA636_47 == INNER_SYMBOL || LA636_47 == INTO_SYMBOL || LA636_47 == IN_SYMBOL || LA636_47 == IS_SYMBOL || ((LA636_47 >= JOIN_SYMBOL) && (LA636_47 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_47 >= LEFT_SYMBOL) && (LA636_47 <= LESS_THAN_OPERATOR)) || ((LA636_47 >= LIKE_SYMBOL) && (LA636_47 <= LIMIT_SYMBOL)) || LA636_47 == LOCK_SYMBOL || LA636_47 == LOGICAL_AND_OPERATOR || LA636_47 == LOGICAL_OR_OPERATOR || ((LA636_47 >= MINUS_OPERATOR) && (LA636_47 <= MINUTE_SECOND_SYMBOL)) || ((LA636_47 >= MOD_OPERATOR) && (LA636_47 <= MOD_SYMBOL)) || ((LA636_47 >= MULT_OPERATOR) && (LA636_47 <= NATURAL_SYMBOL)) || ((LA636_47 >= NOT_EQUAL2_OPERATOR) && (LA636_47 <= NOT_SYMBOL)) || LA636_47 == NULL_SAFE_EQUAL_OPERATOR || LA636_47 == ON_SYMBOL || ((LA636_47 >= ORDER_SYMBOL) && (LA636_47 <= OR_SYMBOL)) || LA636_47 == PLUS_OPERATOR || LA636_47 == PROCEDURE_SYMBOL || LA636_47 == REGEXP_SYMBOL || LA636_47 == RENAME_SYMBOL || LA636_47 == RIGHT_SYMBOL || LA636_47 == SECOND_MICROSECOND_SYMBOL || LA636_47 == SEMICOLON_SYMBOL || LA636_47 == SEPARATOR_SYMBOL || LA636_47 == SET_SYMBOL || ((LA636_47 >= SHIFT_LEFT_OPERATOR) && (LA636_47 <= SHIFT_RIGHT_OPERATOR)) || LA636_47 == SINGLE_QUOTED_TEXT || LA636_47 == STRAIGHT_JOIN_SYMBOL || LA636_47 == THEN_SYMBOL || LA636_47 == UNION_SYMBOL || LA636_47 == USING_SYMBOL || ((LA636_47 >= WHEN_SYMBOL) && (LA636_47 <= WHERE_SYMBOL)) || LA636_47 == WITH_SYMBOL || ((LA636_47 >= XOR_SYMBOL) && (LA636_47 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 47;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MICROSECOND_SYMBOL))
                    {
                        {
                            int LA636_48 = LA(2);
                            if ( (LA636_48 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1737 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1737;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_48 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1738 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1738;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_48 == EOF || ((LA636_48 >= ACCOUNT_SYMBOL) && (LA636_48 <= YEAR_SYMBOL)) || ((LA636_48 >= AND_SYMBOL) && (LA636_48 <= ASC_SYMBOL)) || ((LA636_48 >= AS_SYMBOL) && (LA636_48 <= AT_TEXT_SUFFIX)) || LA636_48 == BACK_TICK_QUOTED_ID || LA636_48 == BETWEEN_SYMBOL || LA636_48 == BIN_NUMBER || LA636_48 == BITWISE_AND_OPERATOR || ((LA636_48 >= BITWISE_OR_OPERATOR) && (LA636_48 <= BITWISE_XOR_OPERATOR)) || ((LA636_48 >= CLOSE_CURLY_SYMBOL) && (LA636_48 <= COLLATE_SYMBOL)) || LA636_48 == COMMA_SYMBOL || LA636_48 == CONCAT_PIPES_SYMBOL || LA636_48 == CROSS_SYMBOL || ((LA636_48 >= DAY_HOUR_SYMBOL) && (LA636_48 <= DAY_SECOND_SYMBOL)) || LA636_48 == DESC_SYMBOL || ((LA636_48 >= DIV_OPERATOR) && (LA636_48 <= DIV_SYMBOL)) || LA636_48 == DOUBLE_QUOTED_TEXT || LA636_48 == ELSE_SYMBOL || LA636_48 == EQUAL_OPERATOR || ((LA636_48 >= FOR_SYMBOL) && (LA636_48 <= FROM_SYMBOL)) || ((LA636_48 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_48 <= GREATER_THAN_OPERATOR)) || ((LA636_48 >= GROUP_SYMBOL) && (LA636_48 <= HAVING_SYMBOL)) || LA636_48 == HEX_NUMBER || ((LA636_48 >= HOUR_MICROSECOND_SYMBOL) && (LA636_48 <= IDENTIFIER)) || LA636_48 == INNER_SYMBOL || LA636_48 == INTO_SYMBOL || LA636_48 == IN_SYMBOL || LA636_48 == IS_SYMBOL || ((LA636_48 >= JOIN_SYMBOL) && (LA636_48 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_48 >= LEFT_SYMBOL) && (LA636_48 <= LESS_THAN_OPERATOR)) || ((LA636_48 >= LIKE_SYMBOL) && (LA636_48 <= LIMIT_SYMBOL)) || LA636_48 == LOCK_SYMBOL || LA636_48 == LOGICAL_AND_OPERATOR || LA636_48 == LOGICAL_OR_OPERATOR || ((LA636_48 >= MINUS_OPERATOR) && (LA636_48 <= MINUTE_SECOND_SYMBOL)) || ((LA636_48 >= MOD_OPERATOR) && (LA636_48 <= MOD_SYMBOL)) || ((LA636_48 >= MULT_OPERATOR) && (LA636_48 <= NATURAL_SYMBOL)) || ((LA636_48 >= NOT_EQUAL2_OPERATOR) && (LA636_48 <= NOT_SYMBOL)) || LA636_48 == NULL_SAFE_EQUAL_OPERATOR || LA636_48 == ON_SYMBOL || ((LA636_48 >= ORDER_SYMBOL) && (LA636_48 <= OR_SYMBOL)) || LA636_48 == PLUS_OPERATOR || LA636_48 == PROCEDURE_SYMBOL || LA636_48 == REGEXP_SYMBOL || LA636_48 == RENAME_SYMBOL || LA636_48 == RIGHT_SYMBOL || LA636_48 == SECOND_MICROSECOND_SYMBOL || LA636_48 == SEMICOLON_SYMBOL || LA636_48 == SEPARATOR_SYMBOL || LA636_48 == SET_SYMBOL || ((LA636_48 >= SHIFT_LEFT_OPERATOR) && (LA636_48 <= SHIFT_RIGHT_OPERATOR)) || LA636_48 == SINGLE_QUOTED_TEXT || LA636_48 == STRAIGHT_JOIN_SYMBOL || LA636_48 == THEN_SYMBOL || LA636_48 == UNION_SYMBOL || LA636_48 == USING_SYMBOL || ((LA636_48 >= WHEN_SYMBOL) && (LA636_48 <= WHERE_SYMBOL)) || LA636_48 == WITH_SYMBOL || ((LA636_48 >= XOR_SYMBOL) && (LA636_48 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 48;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == OLD_PASSWORD_SYMBOL))
                    {
                        {
                            int LA636_50 = LA(2);
                            if ( (LA636_50 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1823 = LA(3);
                                    if ( ((SERVER_VERSION < 50607)))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1823;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_50 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1824 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1824;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_50 == EOF || ((LA636_50 >= ACCOUNT_SYMBOL) && (LA636_50 <= YEAR_SYMBOL)) || ((LA636_50 >= AND_SYMBOL) && (LA636_50 <= ASC_SYMBOL)) || ((LA636_50 >= AS_SYMBOL) && (LA636_50 <= AT_TEXT_SUFFIX)) || LA636_50 == BACK_TICK_QUOTED_ID || LA636_50 == BETWEEN_SYMBOL || LA636_50 == BIN_NUMBER || LA636_50 == BITWISE_AND_OPERATOR || ((LA636_50 >= BITWISE_OR_OPERATOR) && (LA636_50 <= BITWISE_XOR_OPERATOR)) || ((LA636_50 >= CLOSE_CURLY_SYMBOL) && (LA636_50 <= COLLATE_SYMBOL)) || LA636_50 == COMMA_SYMBOL || LA636_50 == CONCAT_PIPES_SYMBOL || LA636_50 == CROSS_SYMBOL || ((LA636_50 >= DAY_HOUR_SYMBOL) && (LA636_50 <= DAY_SECOND_SYMBOL)) || LA636_50 == DESC_SYMBOL || ((LA636_50 >= DIV_OPERATOR) && (LA636_50 <= DIV_SYMBOL)) || LA636_50 == DOUBLE_QUOTED_TEXT || LA636_50 == ELSE_SYMBOL || LA636_50 == EQUAL_OPERATOR || ((LA636_50 >= FOR_SYMBOL) && (LA636_50 <= FROM_SYMBOL)) || ((LA636_50 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_50 <= GREATER_THAN_OPERATOR)) || ((LA636_50 >= GROUP_SYMBOL) && (LA636_50 <= HAVING_SYMBOL)) || LA636_50 == HEX_NUMBER || ((LA636_50 >= HOUR_MICROSECOND_SYMBOL) && (LA636_50 <= IDENTIFIER)) || LA636_50 == INNER_SYMBOL || LA636_50 == INTO_SYMBOL || LA636_50 == IN_SYMBOL || LA636_50 == IS_SYMBOL || ((LA636_50 >= JOIN_SYMBOL) && (LA636_50 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_50 >= LEFT_SYMBOL) && (LA636_50 <= LESS_THAN_OPERATOR)) || ((LA636_50 >= LIKE_SYMBOL) && (LA636_50 <= LIMIT_SYMBOL)) || LA636_50 == LOCK_SYMBOL || LA636_50 == LOGICAL_AND_OPERATOR || LA636_50 == LOGICAL_OR_OPERATOR || ((LA636_50 >= MINUS_OPERATOR) && (LA636_50 <= MINUTE_SECOND_SYMBOL)) || ((LA636_50 >= MOD_OPERATOR) && (LA636_50 <= MOD_SYMBOL)) || ((LA636_50 >= MULT_OPERATOR) && (LA636_50 <= NATURAL_SYMBOL)) || ((LA636_50 >= NOT_EQUAL2_OPERATOR) && (LA636_50 <= NOT_SYMBOL)) || LA636_50 == NULL_SAFE_EQUAL_OPERATOR || LA636_50 == ON_SYMBOL || ((LA636_50 >= ORDER_SYMBOL) && (LA636_50 <= OR_SYMBOL)) || LA636_50 == PLUS_OPERATOR || LA636_50 == PROCEDURE_SYMBOL || LA636_50 == REGEXP_SYMBOL || LA636_50 == RENAME_SYMBOL || LA636_50 == RIGHT_SYMBOL || LA636_50 == SECOND_MICROSECOND_SYMBOL || LA636_50 == SEMICOLON_SYMBOL || LA636_50 == SEPARATOR_SYMBOL || LA636_50 == SET_SYMBOL || ((LA636_50 >= SHIFT_LEFT_OPERATOR) && (LA636_50 <= SHIFT_RIGHT_OPERATOR)) || LA636_50 == SINGLE_QUOTED_TEXT || LA636_50 == STRAIGHT_JOIN_SYMBOL || LA636_50 == THEN_SYMBOL || LA636_50 == UNION_SYMBOL || LA636_50 == USING_SYMBOL || ((LA636_50 >= WHEN_SYMBOL) && (LA636_50 <= WHERE_SYMBOL)) || LA636_50 == WITH_SYMBOL || ((LA636_50 >= XOR_SYMBOL) && (LA636_50 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 50;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == PASSWORD_SYMBOL))
                    {
                        {
                            int LA636_51 = LA(2);
                            if ( (LA636_51 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1909 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1909;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_51 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1910 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1910;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_51 == EOF || ((LA636_51 >= ACCOUNT_SYMBOL) && (LA636_51 <= YEAR_SYMBOL)) || ((LA636_51 >= AND_SYMBOL) && (LA636_51 <= ASC_SYMBOL)) || ((LA636_51 >= AS_SYMBOL) && (LA636_51 <= AT_TEXT_SUFFIX)) || LA636_51 == BACK_TICK_QUOTED_ID || LA636_51 == BETWEEN_SYMBOL || LA636_51 == BIN_NUMBER || LA636_51 == BITWISE_AND_OPERATOR || ((LA636_51 >= BITWISE_OR_OPERATOR) && (LA636_51 <= BITWISE_XOR_OPERATOR)) || ((LA636_51 >= CLOSE_CURLY_SYMBOL) && (LA636_51 <= COLLATE_SYMBOL)) || LA636_51 == COMMA_SYMBOL || LA636_51 == CONCAT_PIPES_SYMBOL || LA636_51 == CROSS_SYMBOL || ((LA636_51 >= DAY_HOUR_SYMBOL) && (LA636_51 <= DAY_SECOND_SYMBOL)) || LA636_51 == DESC_SYMBOL || ((LA636_51 >= DIV_OPERATOR) && (LA636_51 <= DIV_SYMBOL)) || LA636_51 == DOUBLE_QUOTED_TEXT || LA636_51 == ELSE_SYMBOL || LA636_51 == EQUAL_OPERATOR || ((LA636_51 >= FOR_SYMBOL) && (LA636_51 <= FROM_SYMBOL)) || ((LA636_51 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_51 <= GREATER_THAN_OPERATOR)) || ((LA636_51 >= GROUP_SYMBOL) && (LA636_51 <= HAVING_SYMBOL)) || LA636_51 == HEX_NUMBER || ((LA636_51 >= HOUR_MICROSECOND_SYMBOL) && (LA636_51 <= IDENTIFIER)) || LA636_51 == INNER_SYMBOL || LA636_51 == INTO_SYMBOL || LA636_51 == IN_SYMBOL || LA636_51 == IS_SYMBOL || ((LA636_51 >= JOIN_SYMBOL) && (LA636_51 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_51 >= LEFT_SYMBOL) && (LA636_51 <= LESS_THAN_OPERATOR)) || ((LA636_51 >= LIKE_SYMBOL) && (LA636_51 <= LIMIT_SYMBOL)) || LA636_51 == LOCK_SYMBOL || LA636_51 == LOGICAL_AND_OPERATOR || LA636_51 == LOGICAL_OR_OPERATOR || ((LA636_51 >= MINUS_OPERATOR) && (LA636_51 <= MINUTE_SECOND_SYMBOL)) || ((LA636_51 >= MOD_OPERATOR) && (LA636_51 <= MOD_SYMBOL)) || ((LA636_51 >= MULT_OPERATOR) && (LA636_51 <= NATURAL_SYMBOL)) || ((LA636_51 >= NOT_EQUAL2_OPERATOR) && (LA636_51 <= NOT_SYMBOL)) || LA636_51 == NULL_SAFE_EQUAL_OPERATOR || LA636_51 == ON_SYMBOL || ((LA636_51 >= ORDER_SYMBOL) && (LA636_51 <= OR_SYMBOL)) || LA636_51 == PLUS_OPERATOR || LA636_51 == PROCEDURE_SYMBOL || LA636_51 == REGEXP_SYMBOL || LA636_51 == RENAME_SYMBOL || LA636_51 == RIGHT_SYMBOL || LA636_51 == SECOND_MICROSECOND_SYMBOL || LA636_51 == SEMICOLON_SYMBOL || LA636_51 == SEPARATOR_SYMBOL || LA636_51 == SET_SYMBOL || ((LA636_51 >= SHIFT_LEFT_OPERATOR) && (LA636_51 <= SHIFT_RIGHT_OPERATOR)) || LA636_51 == SINGLE_QUOTED_TEXT || LA636_51 == STRAIGHT_JOIN_SYMBOL || LA636_51 == THEN_SYMBOL || LA636_51 == UNION_SYMBOL || LA636_51 == USING_SYMBOL || ((LA636_51 >= WHEN_SYMBOL) && (LA636_51 <= WHERE_SYMBOL)) || LA636_51 == WITH_SYMBOL || ((LA636_51 >= XOR_SYMBOL) && (LA636_51 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 51;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == QUARTER_SYMBOL))
                    {
                        {
                            int LA636_52 = LA(2);
                            if ( (LA636_52 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_1995 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 1995;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_52 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_1996 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 1996;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_52 == EOF || ((LA636_52 >= ACCOUNT_SYMBOL) && (LA636_52 <= YEAR_SYMBOL)) || ((LA636_52 >= AND_SYMBOL) && (LA636_52 <= ASC_SYMBOL)) || ((LA636_52 >= AS_SYMBOL) && (LA636_52 <= AT_TEXT_SUFFIX)) || LA636_52 == BACK_TICK_QUOTED_ID || LA636_52 == BETWEEN_SYMBOL || LA636_52 == BIN_NUMBER || LA636_52 == BITWISE_AND_OPERATOR || ((LA636_52 >= BITWISE_OR_OPERATOR) && (LA636_52 <= BITWISE_XOR_OPERATOR)) || ((LA636_52 >= CLOSE_CURLY_SYMBOL) && (LA636_52 <= COLLATE_SYMBOL)) || LA636_52 == COMMA_SYMBOL || LA636_52 == CONCAT_PIPES_SYMBOL || LA636_52 == CROSS_SYMBOL || ((LA636_52 >= DAY_HOUR_SYMBOL) && (LA636_52 <= DAY_SECOND_SYMBOL)) || LA636_52 == DESC_SYMBOL || ((LA636_52 >= DIV_OPERATOR) && (LA636_52 <= DIV_SYMBOL)) || LA636_52 == DOUBLE_QUOTED_TEXT || LA636_52 == ELSE_SYMBOL || LA636_52 == EQUAL_OPERATOR || ((LA636_52 >= FOR_SYMBOL) && (LA636_52 <= FROM_SYMBOL)) || ((LA636_52 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_52 <= GREATER_THAN_OPERATOR)) || ((LA636_52 >= GROUP_SYMBOL) && (LA636_52 <= HAVING_SYMBOL)) || LA636_52 == HEX_NUMBER || ((LA636_52 >= HOUR_MICROSECOND_SYMBOL) && (LA636_52 <= IDENTIFIER)) || LA636_52 == INNER_SYMBOL || LA636_52 == INTO_SYMBOL || LA636_52 == IN_SYMBOL || LA636_52 == IS_SYMBOL || ((LA636_52 >= JOIN_SYMBOL) && (LA636_52 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_52 >= LEFT_SYMBOL) && (LA636_52 <= LESS_THAN_OPERATOR)) || ((LA636_52 >= LIKE_SYMBOL) && (LA636_52 <= LIMIT_SYMBOL)) || LA636_52 == LOCK_SYMBOL || LA636_52 == LOGICAL_AND_OPERATOR || LA636_52 == LOGICAL_OR_OPERATOR || ((LA636_52 >= MINUS_OPERATOR) && (LA636_52 <= MINUTE_SECOND_SYMBOL)) || ((LA636_52 >= MOD_OPERATOR) && (LA636_52 <= MOD_SYMBOL)) || ((LA636_52 >= MULT_OPERATOR) && (LA636_52 <= NATURAL_SYMBOL)) || ((LA636_52 >= NOT_EQUAL2_OPERATOR) && (LA636_52 <= NOT_SYMBOL)) || LA636_52 == NULL_SAFE_EQUAL_OPERATOR || LA636_52 == ON_SYMBOL || ((LA636_52 >= ORDER_SYMBOL) && (LA636_52 <= OR_SYMBOL)) || LA636_52 == PLUS_OPERATOR || LA636_52 == PROCEDURE_SYMBOL || LA636_52 == REGEXP_SYMBOL || LA636_52 == RENAME_SYMBOL || LA636_52 == RIGHT_SYMBOL || LA636_52 == SECOND_MICROSECOND_SYMBOL || LA636_52 == SEMICOLON_SYMBOL || LA636_52 == SEPARATOR_SYMBOL || LA636_52 == SET_SYMBOL || ((LA636_52 >= SHIFT_LEFT_OPERATOR) && (LA636_52 <= SHIFT_RIGHT_OPERATOR)) || LA636_52 == SINGLE_QUOTED_TEXT || LA636_52 == STRAIGHT_JOIN_SYMBOL || LA636_52 == THEN_SYMBOL || LA636_52 == UNION_SYMBOL || LA636_52 == USING_SYMBOL || ((LA636_52 >= WHEN_SYMBOL) && (LA636_52 <= WHERE_SYMBOL)) || LA636_52 == WITH_SYMBOL || ((LA636_52 >= XOR_SYMBOL) && (LA636_52 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 52;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == REVERSE_SYMBOL))
                    {
                        {
                            int LA636_55 = LA(2);
                            if ( (LA636_55 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2081 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2081;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_55 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2082 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2082;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_55 == EOF || ((LA636_55 >= ACCOUNT_SYMBOL) && (LA636_55 <= YEAR_SYMBOL)) || ((LA636_55 >= AND_SYMBOL) && (LA636_55 <= ASC_SYMBOL)) || ((LA636_55 >= AS_SYMBOL) && (LA636_55 <= AT_TEXT_SUFFIX)) || LA636_55 == BACK_TICK_QUOTED_ID || LA636_55 == BETWEEN_SYMBOL || LA636_55 == BIN_NUMBER || LA636_55 == BITWISE_AND_OPERATOR || ((LA636_55 >= BITWISE_OR_OPERATOR) && (LA636_55 <= BITWISE_XOR_OPERATOR)) || ((LA636_55 >= CLOSE_CURLY_SYMBOL) && (LA636_55 <= COLLATE_SYMBOL)) || LA636_55 == COMMA_SYMBOL || LA636_55 == CONCAT_PIPES_SYMBOL || LA636_55 == CROSS_SYMBOL || ((LA636_55 >= DAY_HOUR_SYMBOL) && (LA636_55 <= DAY_SECOND_SYMBOL)) || LA636_55 == DESC_SYMBOL || ((LA636_55 >= DIV_OPERATOR) && (LA636_55 <= DIV_SYMBOL)) || LA636_55 == DOUBLE_QUOTED_TEXT || LA636_55 == ELSE_SYMBOL || LA636_55 == EQUAL_OPERATOR || ((LA636_55 >= FOR_SYMBOL) && (LA636_55 <= FROM_SYMBOL)) || ((LA636_55 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_55 <= GREATER_THAN_OPERATOR)) || ((LA636_55 >= GROUP_SYMBOL) && (LA636_55 <= HAVING_SYMBOL)) || LA636_55 == HEX_NUMBER || ((LA636_55 >= HOUR_MICROSECOND_SYMBOL) && (LA636_55 <= IDENTIFIER)) || LA636_55 == INNER_SYMBOL || LA636_55 == INTO_SYMBOL || LA636_55 == IN_SYMBOL || LA636_55 == IS_SYMBOL || ((LA636_55 >= JOIN_SYMBOL) && (LA636_55 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_55 >= LEFT_SYMBOL) && (LA636_55 <= LESS_THAN_OPERATOR)) || ((LA636_55 >= LIKE_SYMBOL) && (LA636_55 <= LIMIT_SYMBOL)) || LA636_55 == LOCK_SYMBOL || LA636_55 == LOGICAL_AND_OPERATOR || LA636_55 == LOGICAL_OR_OPERATOR || ((LA636_55 >= MINUS_OPERATOR) && (LA636_55 <= MINUTE_SECOND_SYMBOL)) || ((LA636_55 >= MOD_OPERATOR) && (LA636_55 <= MOD_SYMBOL)) || ((LA636_55 >= MULT_OPERATOR) && (LA636_55 <= NATURAL_SYMBOL)) || ((LA636_55 >= NOT_EQUAL2_OPERATOR) && (LA636_55 <= NOT_SYMBOL)) || LA636_55 == NULL_SAFE_EQUAL_OPERATOR || LA636_55 == ON_SYMBOL || ((LA636_55 >= ORDER_SYMBOL) && (LA636_55 <= OR_SYMBOL)) || LA636_55 == PLUS_OPERATOR || LA636_55 == PROCEDURE_SYMBOL || LA636_55 == REGEXP_SYMBOL || LA636_55 == RENAME_SYMBOL || LA636_55 == RIGHT_SYMBOL || LA636_55 == SECOND_MICROSECOND_SYMBOL || LA636_55 == SEMICOLON_SYMBOL || LA636_55 == SEPARATOR_SYMBOL || LA636_55 == SET_SYMBOL || ((LA636_55 >= SHIFT_LEFT_OPERATOR) && (LA636_55 <= SHIFT_RIGHT_OPERATOR)) || LA636_55 == SINGLE_QUOTED_TEXT || LA636_55 == STRAIGHT_JOIN_SYMBOL || LA636_55 == THEN_SYMBOL || LA636_55 == UNION_SYMBOL || LA636_55 == USING_SYMBOL || ((LA636_55 >= WHEN_SYMBOL) && (LA636_55 <= WHERE_SYMBOL)) || LA636_55 == WITH_SYMBOL || ((LA636_55 >= XOR_SYMBOL) && (LA636_55 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 55;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == ROW_COUNT_SYMBOL))
                    {
                        {
                            int LA636_56 = LA(2);
                            if ( (LA636_56 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2167 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2167;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_56 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2168 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2168;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_56 == EOF || ((LA636_56 >= ACCOUNT_SYMBOL) && (LA636_56 <= YEAR_SYMBOL)) || ((LA636_56 >= AND_SYMBOL) && (LA636_56 <= ASC_SYMBOL)) || ((LA636_56 >= AS_SYMBOL) && (LA636_56 <= AT_TEXT_SUFFIX)) || LA636_56 == BACK_TICK_QUOTED_ID || LA636_56 == BETWEEN_SYMBOL || LA636_56 == BIN_NUMBER || LA636_56 == BITWISE_AND_OPERATOR || ((LA636_56 >= BITWISE_OR_OPERATOR) && (LA636_56 <= BITWISE_XOR_OPERATOR)) || ((LA636_56 >= CLOSE_CURLY_SYMBOL) && (LA636_56 <= COLLATE_SYMBOL)) || LA636_56 == COMMA_SYMBOL || LA636_56 == CONCAT_PIPES_SYMBOL || LA636_56 == CROSS_SYMBOL || ((LA636_56 >= DAY_HOUR_SYMBOL) && (LA636_56 <= DAY_SECOND_SYMBOL)) || LA636_56 == DESC_SYMBOL || ((LA636_56 >= DIV_OPERATOR) && (LA636_56 <= DIV_SYMBOL)) || LA636_56 == DOUBLE_QUOTED_TEXT || LA636_56 == ELSE_SYMBOL || LA636_56 == EQUAL_OPERATOR || ((LA636_56 >= FOR_SYMBOL) && (LA636_56 <= FROM_SYMBOL)) || ((LA636_56 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_56 <= GREATER_THAN_OPERATOR)) || ((LA636_56 >= GROUP_SYMBOL) && (LA636_56 <= HAVING_SYMBOL)) || LA636_56 == HEX_NUMBER || ((LA636_56 >= HOUR_MICROSECOND_SYMBOL) && (LA636_56 <= IDENTIFIER)) || LA636_56 == INNER_SYMBOL || LA636_56 == INTO_SYMBOL || LA636_56 == IN_SYMBOL || LA636_56 == IS_SYMBOL || ((LA636_56 >= JOIN_SYMBOL) && (LA636_56 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_56 >= LEFT_SYMBOL) && (LA636_56 <= LESS_THAN_OPERATOR)) || ((LA636_56 >= LIKE_SYMBOL) && (LA636_56 <= LIMIT_SYMBOL)) || LA636_56 == LOCK_SYMBOL || LA636_56 == LOGICAL_AND_OPERATOR || LA636_56 == LOGICAL_OR_OPERATOR || ((LA636_56 >= MINUS_OPERATOR) && (LA636_56 <= MINUTE_SECOND_SYMBOL)) || ((LA636_56 >= MOD_OPERATOR) && (LA636_56 <= MOD_SYMBOL)) || ((LA636_56 >= MULT_OPERATOR) && (LA636_56 <= NATURAL_SYMBOL)) || ((LA636_56 >= NOT_EQUAL2_OPERATOR) && (LA636_56 <= NOT_SYMBOL)) || LA636_56 == NULL_SAFE_EQUAL_OPERATOR || LA636_56 == ON_SYMBOL || ((LA636_56 >= ORDER_SYMBOL) && (LA636_56 <= OR_SYMBOL)) || LA636_56 == PLUS_OPERATOR || LA636_56 == PROCEDURE_SYMBOL || LA636_56 == REGEXP_SYMBOL || LA636_56 == RENAME_SYMBOL || LA636_56 == RIGHT_SYMBOL || LA636_56 == SECOND_MICROSECOND_SYMBOL || LA636_56 == SEMICOLON_SYMBOL || LA636_56 == SEPARATOR_SYMBOL || LA636_56 == SET_SYMBOL || ((LA636_56 >= SHIFT_LEFT_OPERATOR) && (LA636_56 <= SHIFT_RIGHT_OPERATOR)) || LA636_56 == SINGLE_QUOTED_TEXT || LA636_56 == STRAIGHT_JOIN_SYMBOL || LA636_56 == THEN_SYMBOL || LA636_56 == UNION_SYMBOL || LA636_56 == USING_SYMBOL || ((LA636_56 >= WHEN_SYMBOL) && (LA636_56 <= WHERE_SYMBOL)) || LA636_56 == WITH_SYMBOL || ((LA636_56 >= XOR_SYMBOL) && (LA636_56 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 56;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == TRUNCATE_SYMBOL))
                    {
                        {
                            int LA636_57 = LA(2);
                            if ( (LA636_57 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2253 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2253;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_57 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2254 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2254;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_57 == EOF || ((LA636_57 >= ACCOUNT_SYMBOL) && (LA636_57 <= YEAR_SYMBOL)) || ((LA636_57 >= AND_SYMBOL) && (LA636_57 <= ASC_SYMBOL)) || ((LA636_57 >= AS_SYMBOL) && (LA636_57 <= AT_TEXT_SUFFIX)) || LA636_57 == BACK_TICK_QUOTED_ID || LA636_57 == BETWEEN_SYMBOL || LA636_57 == BIN_NUMBER || LA636_57 == BITWISE_AND_OPERATOR || ((LA636_57 >= BITWISE_OR_OPERATOR) && (LA636_57 <= BITWISE_XOR_OPERATOR)) || ((LA636_57 >= CLOSE_CURLY_SYMBOL) && (LA636_57 <= COLLATE_SYMBOL)) || LA636_57 == COMMA_SYMBOL || LA636_57 == CONCAT_PIPES_SYMBOL || LA636_57 == CROSS_SYMBOL || ((LA636_57 >= DAY_HOUR_SYMBOL) && (LA636_57 <= DAY_SECOND_SYMBOL)) || LA636_57 == DESC_SYMBOL || ((LA636_57 >= DIV_OPERATOR) && (LA636_57 <= DIV_SYMBOL)) || LA636_57 == DOUBLE_QUOTED_TEXT || LA636_57 == ELSE_SYMBOL || LA636_57 == EQUAL_OPERATOR || ((LA636_57 >= FOR_SYMBOL) && (LA636_57 <= FROM_SYMBOL)) || ((LA636_57 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_57 <= GREATER_THAN_OPERATOR)) || ((LA636_57 >= GROUP_SYMBOL) && (LA636_57 <= HAVING_SYMBOL)) || LA636_57 == HEX_NUMBER || ((LA636_57 >= HOUR_MICROSECOND_SYMBOL) && (LA636_57 <= IDENTIFIER)) || LA636_57 == INNER_SYMBOL || LA636_57 == INTO_SYMBOL || LA636_57 == IN_SYMBOL || LA636_57 == IS_SYMBOL || ((LA636_57 >= JOIN_SYMBOL) && (LA636_57 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_57 >= LEFT_SYMBOL) && (LA636_57 <= LESS_THAN_OPERATOR)) || ((LA636_57 >= LIKE_SYMBOL) && (LA636_57 <= LIMIT_SYMBOL)) || LA636_57 == LOCK_SYMBOL || LA636_57 == LOGICAL_AND_OPERATOR || LA636_57 == LOGICAL_OR_OPERATOR || ((LA636_57 >= MINUS_OPERATOR) && (LA636_57 <= MINUTE_SECOND_SYMBOL)) || ((LA636_57 >= MOD_OPERATOR) && (LA636_57 <= MOD_SYMBOL)) || ((LA636_57 >= MULT_OPERATOR) && (LA636_57 <= NATURAL_SYMBOL)) || ((LA636_57 >= NOT_EQUAL2_OPERATOR) && (LA636_57 <= NOT_SYMBOL)) || LA636_57 == NULL_SAFE_EQUAL_OPERATOR || LA636_57 == ON_SYMBOL || ((LA636_57 >= ORDER_SYMBOL) && (LA636_57 <= OR_SYMBOL)) || LA636_57 == PLUS_OPERATOR || LA636_57 == PROCEDURE_SYMBOL || LA636_57 == REGEXP_SYMBOL || LA636_57 == RENAME_SYMBOL || LA636_57 == RIGHT_SYMBOL || LA636_57 == SECOND_MICROSECOND_SYMBOL || LA636_57 == SEMICOLON_SYMBOL || LA636_57 == SEPARATOR_SYMBOL || LA636_57 == SET_SYMBOL || ((LA636_57 >= SHIFT_LEFT_OPERATOR) && (LA636_57 <= SHIFT_RIGHT_OPERATOR)) || LA636_57 == SINGLE_QUOTED_TEXT || LA636_57 == STRAIGHT_JOIN_SYMBOL || LA636_57 == THEN_SYMBOL || LA636_57 == UNION_SYMBOL || LA636_57 == USING_SYMBOL || ((LA636_57 >= WHEN_SYMBOL) && (LA636_57 <= WHERE_SYMBOL)) || LA636_57 == WITH_SYMBOL || ((LA636_57 >= XOR_SYMBOL) && (LA636_57 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 57;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == WEEK_SYMBOL))
                    {
                        {
                            int LA636_58 = LA(2);
                            if ( (LA636_58 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2339 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2339;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_58 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2340 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2340;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_58 == EOF || ((LA636_58 >= ACCOUNT_SYMBOL) && (LA636_58 <= YEAR_SYMBOL)) || ((LA636_58 >= AND_SYMBOL) && (LA636_58 <= ASC_SYMBOL)) || ((LA636_58 >= AS_SYMBOL) && (LA636_58 <= AT_TEXT_SUFFIX)) || LA636_58 == BACK_TICK_QUOTED_ID || LA636_58 == BETWEEN_SYMBOL || LA636_58 == BIN_NUMBER || LA636_58 == BITWISE_AND_OPERATOR || ((LA636_58 >= BITWISE_OR_OPERATOR) && (LA636_58 <= BITWISE_XOR_OPERATOR)) || ((LA636_58 >= CLOSE_CURLY_SYMBOL) && (LA636_58 <= COLLATE_SYMBOL)) || LA636_58 == COMMA_SYMBOL || LA636_58 == CONCAT_PIPES_SYMBOL || LA636_58 == CROSS_SYMBOL || ((LA636_58 >= DAY_HOUR_SYMBOL) && (LA636_58 <= DAY_SECOND_SYMBOL)) || LA636_58 == DESC_SYMBOL || ((LA636_58 >= DIV_OPERATOR) && (LA636_58 <= DIV_SYMBOL)) || LA636_58 == DOUBLE_QUOTED_TEXT || LA636_58 == ELSE_SYMBOL || LA636_58 == EQUAL_OPERATOR || ((LA636_58 >= FOR_SYMBOL) && (LA636_58 <= FROM_SYMBOL)) || ((LA636_58 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_58 <= GREATER_THAN_OPERATOR)) || ((LA636_58 >= GROUP_SYMBOL) && (LA636_58 <= HAVING_SYMBOL)) || LA636_58 == HEX_NUMBER || ((LA636_58 >= HOUR_MICROSECOND_SYMBOL) && (LA636_58 <= IDENTIFIER)) || LA636_58 == INNER_SYMBOL || LA636_58 == INTO_SYMBOL || LA636_58 == IN_SYMBOL || LA636_58 == IS_SYMBOL || ((LA636_58 >= JOIN_SYMBOL) && (LA636_58 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_58 >= LEFT_SYMBOL) && (LA636_58 <= LESS_THAN_OPERATOR)) || ((LA636_58 >= LIKE_SYMBOL) && (LA636_58 <= LIMIT_SYMBOL)) || LA636_58 == LOCK_SYMBOL || LA636_58 == LOGICAL_AND_OPERATOR || LA636_58 == LOGICAL_OR_OPERATOR || ((LA636_58 >= MINUS_OPERATOR) && (LA636_58 <= MINUTE_SECOND_SYMBOL)) || ((LA636_58 >= MOD_OPERATOR) && (LA636_58 <= MOD_SYMBOL)) || ((LA636_58 >= MULT_OPERATOR) && (LA636_58 <= NATURAL_SYMBOL)) || ((LA636_58 >= NOT_EQUAL2_OPERATOR) && (LA636_58 <= NOT_SYMBOL)) || LA636_58 == NULL_SAFE_EQUAL_OPERATOR || LA636_58 == ON_SYMBOL || ((LA636_58 >= ORDER_SYMBOL) && (LA636_58 <= OR_SYMBOL)) || LA636_58 == PLUS_OPERATOR || LA636_58 == PROCEDURE_SYMBOL || LA636_58 == REGEXP_SYMBOL || LA636_58 == RENAME_SYMBOL || LA636_58 == RIGHT_SYMBOL || LA636_58 == SECOND_MICROSECOND_SYMBOL || LA636_58 == SEMICOLON_SYMBOL || LA636_58 == SEPARATOR_SYMBOL || LA636_58 == SET_SYMBOL || ((LA636_58 >= SHIFT_LEFT_OPERATOR) && (LA636_58 <= SHIFT_RIGHT_OPERATOR)) || LA636_58 == SINGLE_QUOTED_TEXT || LA636_58 == STRAIGHT_JOIN_SYMBOL || LA636_58 == THEN_SYMBOL || LA636_58 == UNION_SYMBOL || LA636_58 == USING_SYMBOL || ((LA636_58 >= WHEN_SYMBOL) && (LA636_58 <= WHERE_SYMBOL)) || LA636_58 == WITH_SYMBOL || ((LA636_58 >= XOR_SYMBOL) && (LA636_58 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 58;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == WEIGHT_STRING_SYMBOL))
                    {
                        {
                            int LA636_59 = LA(2);
                            if ( (LA636_59 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2425 = LA(3);
                                    if ( ((SERVER_VERSION >= 50600)))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2425;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_59 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2426 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2426;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_59 == EOF || ((LA636_59 >= ACCOUNT_SYMBOL) && (LA636_59 <= YEAR_SYMBOL)) || ((LA636_59 >= AND_SYMBOL) && (LA636_59 <= ASC_SYMBOL)) || ((LA636_59 >= AS_SYMBOL) && (LA636_59 <= AT_TEXT_SUFFIX)) || LA636_59 == BACK_TICK_QUOTED_ID || LA636_59 == BETWEEN_SYMBOL || LA636_59 == BIN_NUMBER || LA636_59 == BITWISE_AND_OPERATOR || ((LA636_59 >= BITWISE_OR_OPERATOR) && (LA636_59 <= BITWISE_XOR_OPERATOR)) || ((LA636_59 >= CLOSE_CURLY_SYMBOL) && (LA636_59 <= COLLATE_SYMBOL)) || LA636_59 == COMMA_SYMBOL || LA636_59 == CONCAT_PIPES_SYMBOL || LA636_59 == CROSS_SYMBOL || ((LA636_59 >= DAY_HOUR_SYMBOL) && (LA636_59 <= DAY_SECOND_SYMBOL)) || LA636_59 == DESC_SYMBOL || ((LA636_59 >= DIV_OPERATOR) && (LA636_59 <= DIV_SYMBOL)) || LA636_59 == DOUBLE_QUOTED_TEXT || LA636_59 == ELSE_SYMBOL || LA636_59 == EQUAL_OPERATOR || ((LA636_59 >= FOR_SYMBOL) && (LA636_59 <= FROM_SYMBOL)) || ((LA636_59 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_59 <= GREATER_THAN_OPERATOR)) || ((LA636_59 >= GROUP_SYMBOL) && (LA636_59 <= HAVING_SYMBOL)) || LA636_59 == HEX_NUMBER || ((LA636_59 >= HOUR_MICROSECOND_SYMBOL) && (LA636_59 <= IDENTIFIER)) || LA636_59 == INNER_SYMBOL || LA636_59 == INTO_SYMBOL || LA636_59 == IN_SYMBOL || LA636_59 == IS_SYMBOL || ((LA636_59 >= JOIN_SYMBOL) && (LA636_59 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_59 >= LEFT_SYMBOL) && (LA636_59 <= LESS_THAN_OPERATOR)) || ((LA636_59 >= LIKE_SYMBOL) && (LA636_59 <= LIMIT_SYMBOL)) || LA636_59 == LOCK_SYMBOL || LA636_59 == LOGICAL_AND_OPERATOR || LA636_59 == LOGICAL_OR_OPERATOR || ((LA636_59 >= MINUS_OPERATOR) && (LA636_59 <= MINUTE_SECOND_SYMBOL)) || ((LA636_59 >= MOD_OPERATOR) && (LA636_59 <= MOD_SYMBOL)) || ((LA636_59 >= MULT_OPERATOR) && (LA636_59 <= NATURAL_SYMBOL)) || ((LA636_59 >= NOT_EQUAL2_OPERATOR) && (LA636_59 <= NOT_SYMBOL)) || LA636_59 == NULL_SAFE_EQUAL_OPERATOR || LA636_59 == ON_SYMBOL || ((LA636_59 >= ORDER_SYMBOL) && (LA636_59 <= OR_SYMBOL)) || LA636_59 == PLUS_OPERATOR || LA636_59 == PROCEDURE_SYMBOL || LA636_59 == REGEXP_SYMBOL || LA636_59 == RENAME_SYMBOL || LA636_59 == RIGHT_SYMBOL || LA636_59 == SECOND_MICROSECOND_SYMBOL || LA636_59 == SEMICOLON_SYMBOL || LA636_59 == SEPARATOR_SYMBOL || LA636_59 == SET_SYMBOL || ((LA636_59 >= SHIFT_LEFT_OPERATOR) && (LA636_59 <= SHIFT_RIGHT_OPERATOR)) || LA636_59 == SINGLE_QUOTED_TEXT || LA636_59 == STRAIGHT_JOIN_SYMBOL || LA636_59 == THEN_SYMBOL || LA636_59 == UNION_SYMBOL || LA636_59 == USING_SYMBOL || ((LA636_59 >= WHEN_SYMBOL) && (LA636_59 <= WHERE_SYMBOL)) || LA636_59 == WITH_SYMBOL || ((LA636_59 >= XOR_SYMBOL) && (LA636_59 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 59;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == GEOMETRYCOLLECTION_SYMBOL))
                    {
                        {
                            int LA636_60 = LA(2);
                            if ( (LA636_60 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2511 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2511;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_60 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2512 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2512;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_60 == EOF || ((LA636_60 >= ACCOUNT_SYMBOL) && (LA636_60 <= YEAR_SYMBOL)) || ((LA636_60 >= AND_SYMBOL) && (LA636_60 <= ASC_SYMBOL)) || ((LA636_60 >= AS_SYMBOL) && (LA636_60 <= AT_TEXT_SUFFIX)) || LA636_60 == BACK_TICK_QUOTED_ID || LA636_60 == BETWEEN_SYMBOL || LA636_60 == BIN_NUMBER || LA636_60 == BITWISE_AND_OPERATOR || ((LA636_60 >= BITWISE_OR_OPERATOR) && (LA636_60 <= BITWISE_XOR_OPERATOR)) || ((LA636_60 >= CLOSE_CURLY_SYMBOL) && (LA636_60 <= COLLATE_SYMBOL)) || LA636_60 == COMMA_SYMBOL || LA636_60 == CONCAT_PIPES_SYMBOL || LA636_60 == CROSS_SYMBOL || ((LA636_60 >= DAY_HOUR_SYMBOL) && (LA636_60 <= DAY_SECOND_SYMBOL)) || LA636_60 == DESC_SYMBOL || ((LA636_60 >= DIV_OPERATOR) && (LA636_60 <= DIV_SYMBOL)) || LA636_60 == DOUBLE_QUOTED_TEXT || LA636_60 == ELSE_SYMBOL || LA636_60 == EQUAL_OPERATOR || ((LA636_60 >= FOR_SYMBOL) && (LA636_60 <= FROM_SYMBOL)) || ((LA636_60 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_60 <= GREATER_THAN_OPERATOR)) || ((LA636_60 >= GROUP_SYMBOL) && (LA636_60 <= HAVING_SYMBOL)) || LA636_60 == HEX_NUMBER || ((LA636_60 >= HOUR_MICROSECOND_SYMBOL) && (LA636_60 <= IDENTIFIER)) || LA636_60 == INNER_SYMBOL || LA636_60 == INTO_SYMBOL || LA636_60 == IN_SYMBOL || LA636_60 == IS_SYMBOL || ((LA636_60 >= JOIN_SYMBOL) && (LA636_60 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_60 >= LEFT_SYMBOL) && (LA636_60 <= LESS_THAN_OPERATOR)) || ((LA636_60 >= LIKE_SYMBOL) && (LA636_60 <= LIMIT_SYMBOL)) || LA636_60 == LOCK_SYMBOL || LA636_60 == LOGICAL_AND_OPERATOR || LA636_60 == LOGICAL_OR_OPERATOR || ((LA636_60 >= MINUS_OPERATOR) && (LA636_60 <= MINUTE_SECOND_SYMBOL)) || ((LA636_60 >= MOD_OPERATOR) && (LA636_60 <= MOD_SYMBOL)) || ((LA636_60 >= MULT_OPERATOR) && (LA636_60 <= NATURAL_SYMBOL)) || ((LA636_60 >= NOT_EQUAL2_OPERATOR) && (LA636_60 <= NOT_SYMBOL)) || LA636_60 == NULL_SAFE_EQUAL_OPERATOR || LA636_60 == ON_SYMBOL || ((LA636_60 >= ORDER_SYMBOL) && (LA636_60 <= OR_SYMBOL)) || LA636_60 == PLUS_OPERATOR || LA636_60 == PROCEDURE_SYMBOL || LA636_60 == REGEXP_SYMBOL || LA636_60 == RENAME_SYMBOL || LA636_60 == RIGHT_SYMBOL || LA636_60 == SECOND_MICROSECOND_SYMBOL || LA636_60 == SEMICOLON_SYMBOL || LA636_60 == SEPARATOR_SYMBOL || LA636_60 == SET_SYMBOL || ((LA636_60 >= SHIFT_LEFT_OPERATOR) && (LA636_60 <= SHIFT_RIGHT_OPERATOR)) || LA636_60 == SINGLE_QUOTED_TEXT || LA636_60 == STRAIGHT_JOIN_SYMBOL || LA636_60 == THEN_SYMBOL || LA636_60 == UNION_SYMBOL || LA636_60 == USING_SYMBOL || ((LA636_60 >= WHEN_SYMBOL) && (LA636_60 <= WHERE_SYMBOL)) || LA636_60 == WITH_SYMBOL || ((LA636_60 >= XOR_SYMBOL) && (LA636_60 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 60;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == LINESTRING_SYMBOL))
                    {
                        {
                            int LA636_61 = LA(2);
                            if ( (LA636_61 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2597 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2597;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_61 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2598 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2598;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_61 == EOF || ((LA636_61 >= ACCOUNT_SYMBOL) && (LA636_61 <= YEAR_SYMBOL)) || ((LA636_61 >= AND_SYMBOL) && (LA636_61 <= ASC_SYMBOL)) || ((LA636_61 >= AS_SYMBOL) && (LA636_61 <= AT_TEXT_SUFFIX)) || LA636_61 == BACK_TICK_QUOTED_ID || LA636_61 == BETWEEN_SYMBOL || LA636_61 == BIN_NUMBER || LA636_61 == BITWISE_AND_OPERATOR || ((LA636_61 >= BITWISE_OR_OPERATOR) && (LA636_61 <= BITWISE_XOR_OPERATOR)) || ((LA636_61 >= CLOSE_CURLY_SYMBOL) && (LA636_61 <= COLLATE_SYMBOL)) || LA636_61 == COMMA_SYMBOL || LA636_61 == CONCAT_PIPES_SYMBOL || LA636_61 == CROSS_SYMBOL || ((LA636_61 >= DAY_HOUR_SYMBOL) && (LA636_61 <= DAY_SECOND_SYMBOL)) || LA636_61 == DESC_SYMBOL || ((LA636_61 >= DIV_OPERATOR) && (LA636_61 <= DIV_SYMBOL)) || LA636_61 == DOUBLE_QUOTED_TEXT || LA636_61 == ELSE_SYMBOL || LA636_61 == EQUAL_OPERATOR || ((LA636_61 >= FOR_SYMBOL) && (LA636_61 <= FROM_SYMBOL)) || ((LA636_61 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_61 <= GREATER_THAN_OPERATOR)) || ((LA636_61 >= GROUP_SYMBOL) && (LA636_61 <= HAVING_SYMBOL)) || LA636_61 == HEX_NUMBER || ((LA636_61 >= HOUR_MICROSECOND_SYMBOL) && (LA636_61 <= IDENTIFIER)) || LA636_61 == INNER_SYMBOL || LA636_61 == INTO_SYMBOL || LA636_61 == IN_SYMBOL || LA636_61 == IS_SYMBOL || ((LA636_61 >= JOIN_SYMBOL) && (LA636_61 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_61 >= LEFT_SYMBOL) && (LA636_61 <= LESS_THAN_OPERATOR)) || ((LA636_61 >= LIKE_SYMBOL) && (LA636_61 <= LIMIT_SYMBOL)) || LA636_61 == LOCK_SYMBOL || LA636_61 == LOGICAL_AND_OPERATOR || LA636_61 == LOGICAL_OR_OPERATOR || ((LA636_61 >= MINUS_OPERATOR) && (LA636_61 <= MINUTE_SECOND_SYMBOL)) || ((LA636_61 >= MOD_OPERATOR) && (LA636_61 <= MOD_SYMBOL)) || ((LA636_61 >= MULT_OPERATOR) && (LA636_61 <= NATURAL_SYMBOL)) || ((LA636_61 >= NOT_EQUAL2_OPERATOR) && (LA636_61 <= NOT_SYMBOL)) || LA636_61 == NULL_SAFE_EQUAL_OPERATOR || LA636_61 == ON_SYMBOL || ((LA636_61 >= ORDER_SYMBOL) && (LA636_61 <= OR_SYMBOL)) || LA636_61 == PLUS_OPERATOR || LA636_61 == PROCEDURE_SYMBOL || LA636_61 == REGEXP_SYMBOL || LA636_61 == RENAME_SYMBOL || LA636_61 == RIGHT_SYMBOL || LA636_61 == SECOND_MICROSECOND_SYMBOL || LA636_61 == SEMICOLON_SYMBOL || LA636_61 == SEPARATOR_SYMBOL || LA636_61 == SET_SYMBOL || ((LA636_61 >= SHIFT_LEFT_OPERATOR) && (LA636_61 <= SHIFT_RIGHT_OPERATOR)) || LA636_61 == SINGLE_QUOTED_TEXT || LA636_61 == STRAIGHT_JOIN_SYMBOL || LA636_61 == THEN_SYMBOL || LA636_61 == UNION_SYMBOL || LA636_61 == USING_SYMBOL || ((LA636_61 >= WHEN_SYMBOL) && (LA636_61 <= WHERE_SYMBOL)) || LA636_61 == WITH_SYMBOL || ((LA636_61 >= XOR_SYMBOL) && (LA636_61 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 61;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MULTILINESTRING_SYMBOL))
                    {
                        {
                            int LA636_62 = LA(2);
                            if ( (LA636_62 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2683 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2683;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_62 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2684 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2684;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_62 == EOF || ((LA636_62 >= ACCOUNT_SYMBOL) && (LA636_62 <= YEAR_SYMBOL)) || ((LA636_62 >= AND_SYMBOL) && (LA636_62 <= ASC_SYMBOL)) || ((LA636_62 >= AS_SYMBOL) && (LA636_62 <= AT_TEXT_SUFFIX)) || LA636_62 == BACK_TICK_QUOTED_ID || LA636_62 == BETWEEN_SYMBOL || LA636_62 == BIN_NUMBER || LA636_62 == BITWISE_AND_OPERATOR || ((LA636_62 >= BITWISE_OR_OPERATOR) && (LA636_62 <= BITWISE_XOR_OPERATOR)) || ((LA636_62 >= CLOSE_CURLY_SYMBOL) && (LA636_62 <= COLLATE_SYMBOL)) || LA636_62 == COMMA_SYMBOL || LA636_62 == CONCAT_PIPES_SYMBOL || LA636_62 == CROSS_SYMBOL || ((LA636_62 >= DAY_HOUR_SYMBOL) && (LA636_62 <= DAY_SECOND_SYMBOL)) || LA636_62 == DESC_SYMBOL || ((LA636_62 >= DIV_OPERATOR) && (LA636_62 <= DIV_SYMBOL)) || LA636_62 == DOUBLE_QUOTED_TEXT || LA636_62 == ELSE_SYMBOL || LA636_62 == EQUAL_OPERATOR || ((LA636_62 >= FOR_SYMBOL) && (LA636_62 <= FROM_SYMBOL)) || ((LA636_62 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_62 <= GREATER_THAN_OPERATOR)) || ((LA636_62 >= GROUP_SYMBOL) && (LA636_62 <= HAVING_SYMBOL)) || LA636_62 == HEX_NUMBER || ((LA636_62 >= HOUR_MICROSECOND_SYMBOL) && (LA636_62 <= IDENTIFIER)) || LA636_62 == INNER_SYMBOL || LA636_62 == INTO_SYMBOL || LA636_62 == IN_SYMBOL || LA636_62 == IS_SYMBOL || ((LA636_62 >= JOIN_SYMBOL) && (LA636_62 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_62 >= LEFT_SYMBOL) && (LA636_62 <= LESS_THAN_OPERATOR)) || ((LA636_62 >= LIKE_SYMBOL) && (LA636_62 <= LIMIT_SYMBOL)) || LA636_62 == LOCK_SYMBOL || LA636_62 == LOGICAL_AND_OPERATOR || LA636_62 == LOGICAL_OR_OPERATOR || ((LA636_62 >= MINUS_OPERATOR) && (LA636_62 <= MINUTE_SECOND_SYMBOL)) || ((LA636_62 >= MOD_OPERATOR) && (LA636_62 <= MOD_SYMBOL)) || ((LA636_62 >= MULT_OPERATOR) && (LA636_62 <= NATURAL_SYMBOL)) || ((LA636_62 >= NOT_EQUAL2_OPERATOR) && (LA636_62 <= NOT_SYMBOL)) || LA636_62 == NULL_SAFE_EQUAL_OPERATOR || LA636_62 == ON_SYMBOL || ((LA636_62 >= ORDER_SYMBOL) && (LA636_62 <= OR_SYMBOL)) || LA636_62 == PLUS_OPERATOR || LA636_62 == PROCEDURE_SYMBOL || LA636_62 == REGEXP_SYMBOL || LA636_62 == RENAME_SYMBOL || LA636_62 == RIGHT_SYMBOL || LA636_62 == SECOND_MICROSECOND_SYMBOL || LA636_62 == SEMICOLON_SYMBOL || LA636_62 == SEPARATOR_SYMBOL || LA636_62 == SET_SYMBOL || ((LA636_62 >= SHIFT_LEFT_OPERATOR) && (LA636_62 <= SHIFT_RIGHT_OPERATOR)) || LA636_62 == SINGLE_QUOTED_TEXT || LA636_62 == STRAIGHT_JOIN_SYMBOL || LA636_62 == THEN_SYMBOL || LA636_62 == UNION_SYMBOL || LA636_62 == USING_SYMBOL || ((LA636_62 >= WHEN_SYMBOL) && (LA636_62 <= WHERE_SYMBOL)) || LA636_62 == WITH_SYMBOL || ((LA636_62 >= XOR_SYMBOL) && (LA636_62 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 62;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MULTIPOINT_SYMBOL))
                    {
                        {
                            int LA636_63 = LA(2);
                            if ( (LA636_63 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2769 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2769;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_63 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2770 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2770;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_63 == EOF || ((LA636_63 >= ACCOUNT_SYMBOL) && (LA636_63 <= YEAR_SYMBOL)) || ((LA636_63 >= AND_SYMBOL) && (LA636_63 <= ASC_SYMBOL)) || ((LA636_63 >= AS_SYMBOL) && (LA636_63 <= AT_TEXT_SUFFIX)) || LA636_63 == BACK_TICK_QUOTED_ID || LA636_63 == BETWEEN_SYMBOL || LA636_63 == BIN_NUMBER || LA636_63 == BITWISE_AND_OPERATOR || ((LA636_63 >= BITWISE_OR_OPERATOR) && (LA636_63 <= BITWISE_XOR_OPERATOR)) || ((LA636_63 >= CLOSE_CURLY_SYMBOL) && (LA636_63 <= COLLATE_SYMBOL)) || LA636_63 == COMMA_SYMBOL || LA636_63 == CONCAT_PIPES_SYMBOL || LA636_63 == CROSS_SYMBOL || ((LA636_63 >= DAY_HOUR_SYMBOL) && (LA636_63 <= DAY_SECOND_SYMBOL)) || LA636_63 == DESC_SYMBOL || ((LA636_63 >= DIV_OPERATOR) && (LA636_63 <= DIV_SYMBOL)) || LA636_63 == DOUBLE_QUOTED_TEXT || LA636_63 == ELSE_SYMBOL || LA636_63 == EQUAL_OPERATOR || ((LA636_63 >= FOR_SYMBOL) && (LA636_63 <= FROM_SYMBOL)) || ((LA636_63 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_63 <= GREATER_THAN_OPERATOR)) || ((LA636_63 >= GROUP_SYMBOL) && (LA636_63 <= HAVING_SYMBOL)) || LA636_63 == HEX_NUMBER || ((LA636_63 >= HOUR_MICROSECOND_SYMBOL) && (LA636_63 <= IDENTIFIER)) || LA636_63 == INNER_SYMBOL || LA636_63 == INTO_SYMBOL || LA636_63 == IN_SYMBOL || LA636_63 == IS_SYMBOL || ((LA636_63 >= JOIN_SYMBOL) && (LA636_63 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_63 >= LEFT_SYMBOL) && (LA636_63 <= LESS_THAN_OPERATOR)) || ((LA636_63 >= LIKE_SYMBOL) && (LA636_63 <= LIMIT_SYMBOL)) || LA636_63 == LOCK_SYMBOL || LA636_63 == LOGICAL_AND_OPERATOR || LA636_63 == LOGICAL_OR_OPERATOR || ((LA636_63 >= MINUS_OPERATOR) && (LA636_63 <= MINUTE_SECOND_SYMBOL)) || ((LA636_63 >= MOD_OPERATOR) && (LA636_63 <= MOD_SYMBOL)) || ((LA636_63 >= MULT_OPERATOR) && (LA636_63 <= NATURAL_SYMBOL)) || ((LA636_63 >= NOT_EQUAL2_OPERATOR) && (LA636_63 <= NOT_SYMBOL)) || LA636_63 == NULL_SAFE_EQUAL_OPERATOR || LA636_63 == ON_SYMBOL || ((LA636_63 >= ORDER_SYMBOL) && (LA636_63 <= OR_SYMBOL)) || LA636_63 == PLUS_OPERATOR || LA636_63 == PROCEDURE_SYMBOL || LA636_63 == REGEXP_SYMBOL || LA636_63 == RENAME_SYMBOL || LA636_63 == RIGHT_SYMBOL || LA636_63 == SECOND_MICROSECOND_SYMBOL || LA636_63 == SEMICOLON_SYMBOL || LA636_63 == SEPARATOR_SYMBOL || LA636_63 == SET_SYMBOL || ((LA636_63 >= SHIFT_LEFT_OPERATOR) && (LA636_63 <= SHIFT_RIGHT_OPERATOR)) || LA636_63 == SINGLE_QUOTED_TEXT || LA636_63 == STRAIGHT_JOIN_SYMBOL || LA636_63 == THEN_SYMBOL || LA636_63 == UNION_SYMBOL || LA636_63 == USING_SYMBOL || ((LA636_63 >= WHEN_SYMBOL) && (LA636_63 <= WHERE_SYMBOL)) || LA636_63 == WITH_SYMBOL || ((LA636_63 >= XOR_SYMBOL) && (LA636_63 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 63;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == MULTIPOLYGON_SYMBOL))
                    {
                        {
                            int LA636_64 = LA(2);
                            if ( (LA636_64 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2855 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2855;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_64 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2856 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2856;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_64 == EOF || ((LA636_64 >= ACCOUNT_SYMBOL) && (LA636_64 <= YEAR_SYMBOL)) || ((LA636_64 >= AND_SYMBOL) && (LA636_64 <= ASC_SYMBOL)) || ((LA636_64 >= AS_SYMBOL) && (LA636_64 <= AT_TEXT_SUFFIX)) || LA636_64 == BACK_TICK_QUOTED_ID || LA636_64 == BETWEEN_SYMBOL || LA636_64 == BIN_NUMBER || LA636_64 == BITWISE_AND_OPERATOR || ((LA636_64 >= BITWISE_OR_OPERATOR) && (LA636_64 <= BITWISE_XOR_OPERATOR)) || ((LA636_64 >= CLOSE_CURLY_SYMBOL) && (LA636_64 <= COLLATE_SYMBOL)) || LA636_64 == COMMA_SYMBOL || LA636_64 == CONCAT_PIPES_SYMBOL || LA636_64 == CROSS_SYMBOL || ((LA636_64 >= DAY_HOUR_SYMBOL) && (LA636_64 <= DAY_SECOND_SYMBOL)) || LA636_64 == DESC_SYMBOL || ((LA636_64 >= DIV_OPERATOR) && (LA636_64 <= DIV_SYMBOL)) || LA636_64 == DOUBLE_QUOTED_TEXT || LA636_64 == ELSE_SYMBOL || LA636_64 == EQUAL_OPERATOR || ((LA636_64 >= FOR_SYMBOL) && (LA636_64 <= FROM_SYMBOL)) || ((LA636_64 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_64 <= GREATER_THAN_OPERATOR)) || ((LA636_64 >= GROUP_SYMBOL) && (LA636_64 <= HAVING_SYMBOL)) || LA636_64 == HEX_NUMBER || ((LA636_64 >= HOUR_MICROSECOND_SYMBOL) && (LA636_64 <= IDENTIFIER)) || LA636_64 == INNER_SYMBOL || LA636_64 == INTO_SYMBOL || LA636_64 == IN_SYMBOL || LA636_64 == IS_SYMBOL || ((LA636_64 >= JOIN_SYMBOL) && (LA636_64 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_64 >= LEFT_SYMBOL) && (LA636_64 <= LESS_THAN_OPERATOR)) || ((LA636_64 >= LIKE_SYMBOL) && (LA636_64 <= LIMIT_SYMBOL)) || LA636_64 == LOCK_SYMBOL || LA636_64 == LOGICAL_AND_OPERATOR || LA636_64 == LOGICAL_OR_OPERATOR || ((LA636_64 >= MINUS_OPERATOR) && (LA636_64 <= MINUTE_SECOND_SYMBOL)) || ((LA636_64 >= MOD_OPERATOR) && (LA636_64 <= MOD_SYMBOL)) || ((LA636_64 >= MULT_OPERATOR) && (LA636_64 <= NATURAL_SYMBOL)) || ((LA636_64 >= NOT_EQUAL2_OPERATOR) && (LA636_64 <= NOT_SYMBOL)) || LA636_64 == NULL_SAFE_EQUAL_OPERATOR || LA636_64 == ON_SYMBOL || ((LA636_64 >= ORDER_SYMBOL) && (LA636_64 <= OR_SYMBOL)) || LA636_64 == PLUS_OPERATOR || LA636_64 == PROCEDURE_SYMBOL || LA636_64 == REGEXP_SYMBOL || LA636_64 == RENAME_SYMBOL || LA636_64 == RIGHT_SYMBOL || LA636_64 == SECOND_MICROSECOND_SYMBOL || LA636_64 == SEMICOLON_SYMBOL || LA636_64 == SEPARATOR_SYMBOL || LA636_64 == SET_SYMBOL || ((LA636_64 >= SHIFT_LEFT_OPERATOR) && (LA636_64 <= SHIFT_RIGHT_OPERATOR)) || LA636_64 == SINGLE_QUOTED_TEXT || LA636_64 == STRAIGHT_JOIN_SYMBOL || LA636_64 == THEN_SYMBOL || LA636_64 == UNION_SYMBOL || LA636_64 == USING_SYMBOL || ((LA636_64 >= WHEN_SYMBOL) && (LA636_64 <= WHERE_SYMBOL)) || LA636_64 == WITH_SYMBOL || ((LA636_64 >= XOR_SYMBOL) && (LA636_64 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 64;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == POINT_SYMBOL))
                    {
                        {
                            int LA636_65 = LA(2);
                            if ( (LA636_65 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_2941 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 2941;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_65 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_2942 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 2942;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_65 == EOF || ((LA636_65 >= ACCOUNT_SYMBOL) && (LA636_65 <= YEAR_SYMBOL)) || ((LA636_65 >= AND_SYMBOL) && (LA636_65 <= ASC_SYMBOL)) || ((LA636_65 >= AS_SYMBOL) && (LA636_65 <= AT_TEXT_SUFFIX)) || LA636_65 == BACK_TICK_QUOTED_ID || LA636_65 == BETWEEN_SYMBOL || LA636_65 == BIN_NUMBER || LA636_65 == BITWISE_AND_OPERATOR || ((LA636_65 >= BITWISE_OR_OPERATOR) && (LA636_65 <= BITWISE_XOR_OPERATOR)) || ((LA636_65 >= CLOSE_CURLY_SYMBOL) && (LA636_65 <= COLLATE_SYMBOL)) || LA636_65 == COMMA_SYMBOL || LA636_65 == CONCAT_PIPES_SYMBOL || LA636_65 == CROSS_SYMBOL || ((LA636_65 >= DAY_HOUR_SYMBOL) && (LA636_65 <= DAY_SECOND_SYMBOL)) || LA636_65 == DESC_SYMBOL || ((LA636_65 >= DIV_OPERATOR) && (LA636_65 <= DIV_SYMBOL)) || LA636_65 == DOUBLE_QUOTED_TEXT || LA636_65 == ELSE_SYMBOL || LA636_65 == EQUAL_OPERATOR || ((LA636_65 >= FOR_SYMBOL) && (LA636_65 <= FROM_SYMBOL)) || ((LA636_65 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_65 <= GREATER_THAN_OPERATOR)) || ((LA636_65 >= GROUP_SYMBOL) && (LA636_65 <= HAVING_SYMBOL)) || LA636_65 == HEX_NUMBER || ((LA636_65 >= HOUR_MICROSECOND_SYMBOL) && (LA636_65 <= IDENTIFIER)) || LA636_65 == INNER_SYMBOL || LA636_65 == INTO_SYMBOL || LA636_65 == IN_SYMBOL || LA636_65 == IS_SYMBOL || ((LA636_65 >= JOIN_SYMBOL) && (LA636_65 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_65 >= LEFT_SYMBOL) && (LA636_65 <= LESS_THAN_OPERATOR)) || ((LA636_65 >= LIKE_SYMBOL) && (LA636_65 <= LIMIT_SYMBOL)) || LA636_65 == LOCK_SYMBOL || LA636_65 == LOGICAL_AND_OPERATOR || LA636_65 == LOGICAL_OR_OPERATOR || ((LA636_65 >= MINUS_OPERATOR) && (LA636_65 <= MINUTE_SECOND_SYMBOL)) || ((LA636_65 >= MOD_OPERATOR) && (LA636_65 <= MOD_SYMBOL)) || ((LA636_65 >= MULT_OPERATOR) && (LA636_65 <= NATURAL_SYMBOL)) || ((LA636_65 >= NOT_EQUAL2_OPERATOR) && (LA636_65 <= NOT_SYMBOL)) || LA636_65 == NULL_SAFE_EQUAL_OPERATOR || LA636_65 == ON_SYMBOL || ((LA636_65 >= ORDER_SYMBOL) && (LA636_65 <= OR_SYMBOL)) || LA636_65 == PLUS_OPERATOR || LA636_65 == PROCEDURE_SYMBOL || LA636_65 == REGEXP_SYMBOL || LA636_65 == RENAME_SYMBOL || LA636_65 == RIGHT_SYMBOL || LA636_65 == SECOND_MICROSECOND_SYMBOL || LA636_65 == SEMICOLON_SYMBOL || LA636_65 == SEPARATOR_SYMBOL || LA636_65 == SET_SYMBOL || ((LA636_65 >= SHIFT_LEFT_OPERATOR) && (LA636_65 <= SHIFT_RIGHT_OPERATOR)) || LA636_65 == SINGLE_QUOTED_TEXT || LA636_65 == STRAIGHT_JOIN_SYMBOL || LA636_65 == THEN_SYMBOL || LA636_65 == UNION_SYMBOL || LA636_65 == USING_SYMBOL || ((LA636_65 >= WHEN_SYMBOL) && (LA636_65 <= WHERE_SYMBOL)) || LA636_65 == WITH_SYMBOL || ((LA636_65 >= XOR_SYMBOL) && (LA636_65 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 65;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == POLYGON_SYMBOL))
                    {
                        {
                            int LA636_66 = LA(2);
                            if ( (LA636_66 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_3027 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 3027;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_66 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_3028 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 3028;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_66 == EOF || ((LA636_66 >= ACCOUNT_SYMBOL) && (LA636_66 <= YEAR_SYMBOL)) || ((LA636_66 >= AND_SYMBOL) && (LA636_66 <= ASC_SYMBOL)) || ((LA636_66 >= AS_SYMBOL) && (LA636_66 <= AT_TEXT_SUFFIX)) || LA636_66 == BACK_TICK_QUOTED_ID || LA636_66 == BETWEEN_SYMBOL || LA636_66 == BIN_NUMBER || LA636_66 == BITWISE_AND_OPERATOR || ((LA636_66 >= BITWISE_OR_OPERATOR) && (LA636_66 <= BITWISE_XOR_OPERATOR)) || ((LA636_66 >= CLOSE_CURLY_SYMBOL) && (LA636_66 <= COLLATE_SYMBOL)) || LA636_66 == COMMA_SYMBOL || LA636_66 == CONCAT_PIPES_SYMBOL || LA636_66 == CROSS_SYMBOL || ((LA636_66 >= DAY_HOUR_SYMBOL) && (LA636_66 <= DAY_SECOND_SYMBOL)) || LA636_66 == DESC_SYMBOL || ((LA636_66 >= DIV_OPERATOR) && (LA636_66 <= DIV_SYMBOL)) || LA636_66 == DOUBLE_QUOTED_TEXT || LA636_66 == ELSE_SYMBOL || LA636_66 == EQUAL_OPERATOR || ((LA636_66 >= FOR_SYMBOL) && (LA636_66 <= FROM_SYMBOL)) || ((LA636_66 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_66 <= GREATER_THAN_OPERATOR)) || ((LA636_66 >= GROUP_SYMBOL) && (LA636_66 <= HAVING_SYMBOL)) || LA636_66 == HEX_NUMBER || ((LA636_66 >= HOUR_MICROSECOND_SYMBOL) && (LA636_66 <= IDENTIFIER)) || LA636_66 == INNER_SYMBOL || LA636_66 == INTO_SYMBOL || LA636_66 == IN_SYMBOL || LA636_66 == IS_SYMBOL || ((LA636_66 >= JOIN_SYMBOL) && (LA636_66 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_66 >= LEFT_SYMBOL) && (LA636_66 <= LESS_THAN_OPERATOR)) || ((LA636_66 >= LIKE_SYMBOL) && (LA636_66 <= LIMIT_SYMBOL)) || LA636_66 == LOCK_SYMBOL || LA636_66 == LOGICAL_AND_OPERATOR || LA636_66 == LOGICAL_OR_OPERATOR || ((LA636_66 >= MINUS_OPERATOR) && (LA636_66 <= MINUTE_SECOND_SYMBOL)) || ((LA636_66 >= MOD_OPERATOR) && (LA636_66 <= MOD_SYMBOL)) || ((LA636_66 >= MULT_OPERATOR) && (LA636_66 <= NATURAL_SYMBOL)) || ((LA636_66 >= NOT_EQUAL2_OPERATOR) && (LA636_66 <= NOT_SYMBOL)) || LA636_66 == NULL_SAFE_EQUAL_OPERATOR || LA636_66 == ON_SYMBOL || ((LA636_66 >= ORDER_SYMBOL) && (LA636_66 <= OR_SYMBOL)) || LA636_66 == PLUS_OPERATOR || LA636_66 == PROCEDURE_SYMBOL || LA636_66 == REGEXP_SYMBOL || LA636_66 == RENAME_SYMBOL || LA636_66 == RIGHT_SYMBOL || LA636_66 == SECOND_MICROSECOND_SYMBOL || LA636_66 == SEMICOLON_SYMBOL || LA636_66 == SEPARATOR_SYMBOL || LA636_66 == SET_SYMBOL || ((LA636_66 >= SHIFT_LEFT_OPERATOR) && (LA636_66 <= SHIFT_RIGHT_OPERATOR)) || LA636_66 == SINGLE_QUOTED_TEXT || LA636_66 == STRAIGHT_JOIN_SYMBOL || LA636_66 == THEN_SYMBOL || LA636_66 == UNION_SYMBOL || LA636_66 == USING_SYMBOL || ((LA636_66 >= WHEN_SYMBOL) && (LA636_66 <= WHERE_SYMBOL)) || LA636_66 == WITH_SYMBOL || ((LA636_66 >= XOR_SYMBOL) && (LA636_66 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 66;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == CONTAINS_SYMBOL))
                    {
                        {
                            int LA636_67 = LA(2);
                            if ( (LA636_67 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_3113 = LA(3);
                                    if ( ((SERVER_VERSION < 50706)))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 3113;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_67 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_3114 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 3114;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_67 == EOF || ((LA636_67 >= ACCOUNT_SYMBOL) && (LA636_67 <= YEAR_SYMBOL)) || ((LA636_67 >= AND_SYMBOL) && (LA636_67 <= ASC_SYMBOL)) || ((LA636_67 >= AS_SYMBOL) && (LA636_67 <= AT_TEXT_SUFFIX)) || LA636_67 == BACK_TICK_QUOTED_ID || LA636_67 == BETWEEN_SYMBOL || LA636_67 == BIN_NUMBER || LA636_67 == BITWISE_AND_OPERATOR || ((LA636_67 >= BITWISE_OR_OPERATOR) && (LA636_67 <= BITWISE_XOR_OPERATOR)) || ((LA636_67 >= CLOSE_CURLY_SYMBOL) && (LA636_67 <= COLLATE_SYMBOL)) || LA636_67 == COMMA_SYMBOL || LA636_67 == CONCAT_PIPES_SYMBOL || LA636_67 == CROSS_SYMBOL || ((LA636_67 >= DAY_HOUR_SYMBOL) && (LA636_67 <= DAY_SECOND_SYMBOL)) || LA636_67 == DESC_SYMBOL || ((LA636_67 >= DIV_OPERATOR) && (LA636_67 <= DIV_SYMBOL)) || LA636_67 == DOUBLE_QUOTED_TEXT || LA636_67 == ELSE_SYMBOL || LA636_67 == EQUAL_OPERATOR || ((LA636_67 >= FOR_SYMBOL) && (LA636_67 <= FROM_SYMBOL)) || ((LA636_67 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_67 <= GREATER_THAN_OPERATOR)) || ((LA636_67 >= GROUP_SYMBOL) && (LA636_67 <= HAVING_SYMBOL)) || LA636_67 == HEX_NUMBER || ((LA636_67 >= HOUR_MICROSECOND_SYMBOL) && (LA636_67 <= IDENTIFIER)) || LA636_67 == INNER_SYMBOL || LA636_67 == INTO_SYMBOL || LA636_67 == IN_SYMBOL || LA636_67 == IS_SYMBOL || ((LA636_67 >= JOIN_SYMBOL) && (LA636_67 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_67 >= LEFT_SYMBOL) && (LA636_67 <= LESS_THAN_OPERATOR)) || ((LA636_67 >= LIKE_SYMBOL) && (LA636_67 <= LIMIT_SYMBOL)) || LA636_67 == LOCK_SYMBOL || LA636_67 == LOGICAL_AND_OPERATOR || LA636_67 == LOGICAL_OR_OPERATOR || ((LA636_67 >= MINUS_OPERATOR) && (LA636_67 <= MINUTE_SECOND_SYMBOL)) || ((LA636_67 >= MOD_OPERATOR) && (LA636_67 <= MOD_SYMBOL)) || ((LA636_67 >= MULT_OPERATOR) && (LA636_67 <= NATURAL_SYMBOL)) || ((LA636_67 >= NOT_EQUAL2_OPERATOR) && (LA636_67 <= NOT_SYMBOL)) || LA636_67 == NULL_SAFE_EQUAL_OPERATOR || LA636_67 == ON_SYMBOL || ((LA636_67 >= ORDER_SYMBOL) && (LA636_67 <= OR_SYMBOL)) || LA636_67 == PLUS_OPERATOR || LA636_67 == PROCEDURE_SYMBOL || LA636_67 == REGEXP_SYMBOL || LA636_67 == RENAME_SYMBOL || LA636_67 == RIGHT_SYMBOL || LA636_67 == SECOND_MICROSECOND_SYMBOL || LA636_67 == SEMICOLON_SYMBOL || LA636_67 == SEPARATOR_SYMBOL || LA636_67 == SET_SYMBOL || ((LA636_67 >= SHIFT_LEFT_OPERATOR) && (LA636_67 <= SHIFT_RIGHT_OPERATOR)) || LA636_67 == SINGLE_QUOTED_TEXT || LA636_67 == STRAIGHT_JOIN_SYMBOL || LA636_67 == THEN_SYMBOL || LA636_67 == UNION_SYMBOL || LA636_67 == USING_SYMBOL || ((LA636_67 >= WHEN_SYMBOL) && (LA636_67 <= WHERE_SYMBOL)) || LA636_67 == WITH_SYMBOL || ((LA636_67 >= XOR_SYMBOL) && (LA636_67 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 67;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == AVG_SYMBOL))
                    {
                        {
                            int LA636_68 = LA(2);
                            if ( (LA636_68 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_3199 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=2;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 3199;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_68 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_3200 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 3200;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_68 == EOF || ((LA636_68 >= ACCOUNT_SYMBOL) && (LA636_68 <= YEAR_SYMBOL)) || ((LA636_68 >= AND_SYMBOL) && (LA636_68 <= ASC_SYMBOL)) || ((LA636_68 >= AS_SYMBOL) && (LA636_68 <= AT_TEXT_SUFFIX)) || LA636_68 == BACK_TICK_QUOTED_ID || LA636_68 == BETWEEN_SYMBOL || LA636_68 == BIN_NUMBER || LA636_68 == BITWISE_AND_OPERATOR || ((LA636_68 >= BITWISE_OR_OPERATOR) && (LA636_68 <= BITWISE_XOR_OPERATOR)) || ((LA636_68 >= CLOSE_CURLY_SYMBOL) && (LA636_68 <= COLLATE_SYMBOL)) || LA636_68 == COMMA_SYMBOL || LA636_68 == CONCAT_PIPES_SYMBOL || LA636_68 == CROSS_SYMBOL || ((LA636_68 >= DAY_HOUR_SYMBOL) && (LA636_68 <= DAY_SECOND_SYMBOL)) || LA636_68 == DESC_SYMBOL || ((LA636_68 >= DIV_OPERATOR) && (LA636_68 <= DIV_SYMBOL)) || LA636_68 == DOUBLE_QUOTED_TEXT || LA636_68 == ELSE_SYMBOL || LA636_68 == EQUAL_OPERATOR || ((LA636_68 >= FOR_SYMBOL) && (LA636_68 <= FROM_SYMBOL)) || ((LA636_68 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_68 <= GREATER_THAN_OPERATOR)) || ((LA636_68 >= GROUP_SYMBOL) && (LA636_68 <= HAVING_SYMBOL)) || LA636_68 == HEX_NUMBER || ((LA636_68 >= HOUR_MICROSECOND_SYMBOL) && (LA636_68 <= IDENTIFIER)) || LA636_68 == INNER_SYMBOL || LA636_68 == INTO_SYMBOL || LA636_68 == IN_SYMBOL || LA636_68 == IS_SYMBOL || ((LA636_68 >= JOIN_SYMBOL) && (LA636_68 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_68 >= LEFT_SYMBOL) && (LA636_68 <= LESS_THAN_OPERATOR)) || ((LA636_68 >= LIKE_SYMBOL) && (LA636_68 <= LIMIT_SYMBOL)) || LA636_68 == LOCK_SYMBOL || LA636_68 == LOGICAL_AND_OPERATOR || LA636_68 == LOGICAL_OR_OPERATOR || ((LA636_68 >= MINUS_OPERATOR) && (LA636_68 <= MINUTE_SECOND_SYMBOL)) || ((LA636_68 >= MOD_OPERATOR) && (LA636_68 <= MOD_SYMBOL)) || ((LA636_68 >= MULT_OPERATOR) && (LA636_68 <= NATURAL_SYMBOL)) || ((LA636_68 >= NOT_EQUAL2_OPERATOR) && (LA636_68 <= NOT_SYMBOL)) || LA636_68 == NULL_SAFE_EQUAL_OPERATOR || LA636_68 == ON_SYMBOL || ((LA636_68 >= ORDER_SYMBOL) && (LA636_68 <= OR_SYMBOL)) || LA636_68 == PLUS_OPERATOR || LA636_68 == PROCEDURE_SYMBOL || LA636_68 == REGEXP_SYMBOL || LA636_68 == RENAME_SYMBOL || LA636_68 == RIGHT_SYMBOL || LA636_68 == SECOND_MICROSECOND_SYMBOL || LA636_68 == SEMICOLON_SYMBOL || LA636_68 == SEPARATOR_SYMBOL || LA636_68 == SET_SYMBOL || ((LA636_68 >= SHIFT_LEFT_OPERATOR) && (LA636_68 <= SHIFT_RIGHT_OPERATOR)) || LA636_68 == SINGLE_QUOTED_TEXT || LA636_68 == STRAIGHT_JOIN_SYMBOL || LA636_68 == THEN_SYMBOL || LA636_68 == UNION_SYMBOL || LA636_68 == USING_SYMBOL || ((LA636_68 >= WHEN_SYMBOL) && (LA636_68 <= WHERE_SYMBOL)) || LA636_68 == WITH_SYMBOL || ((LA636_68 >= XOR_SYMBOL) && (LA636_68 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 68;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == IDENTIFIER))
                    {
                        {
                            int LA636_81 = LA(2);
                            if ( (LA636_81 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_3285 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=3;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 3285;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_81 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_3286 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 3286;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_81 == EOF || ((LA636_81 >= ACCOUNT_SYMBOL) && (LA636_81 <= YEAR_SYMBOL)) || ((LA636_81 >= AND_SYMBOL) && (LA636_81 <= ASC_SYMBOL)) || ((LA636_81 >= AS_SYMBOL) && (LA636_81 <= AT_TEXT_SUFFIX)) || LA636_81 == BACK_TICK_QUOTED_ID || LA636_81 == BETWEEN_SYMBOL || LA636_81 == BIN_NUMBER || LA636_81 == BITWISE_AND_OPERATOR || ((LA636_81 >= BITWISE_OR_OPERATOR) && (LA636_81 <= BITWISE_XOR_OPERATOR)) || ((LA636_81 >= CLOSE_CURLY_SYMBOL) && (LA636_81 <= COLLATE_SYMBOL)) || LA636_81 == COMMA_SYMBOL || LA636_81 == CONCAT_PIPES_SYMBOL || LA636_81 == CROSS_SYMBOL || ((LA636_81 >= DAY_HOUR_SYMBOL) && (LA636_81 <= DAY_SECOND_SYMBOL)) || LA636_81 == DESC_SYMBOL || ((LA636_81 >= DIV_OPERATOR) && (LA636_81 <= DIV_SYMBOL)) || LA636_81 == DOUBLE_QUOTED_TEXT || LA636_81 == ELSE_SYMBOL || LA636_81 == EQUAL_OPERATOR || ((LA636_81 >= FOR_SYMBOL) && (LA636_81 <= FROM_SYMBOL)) || ((LA636_81 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_81 <= GREATER_THAN_OPERATOR)) || ((LA636_81 >= GROUP_SYMBOL) && (LA636_81 <= HAVING_SYMBOL)) || LA636_81 == HEX_NUMBER || ((LA636_81 >= HOUR_MICROSECOND_SYMBOL) && (LA636_81 <= IDENTIFIER)) || LA636_81 == INNER_SYMBOL || LA636_81 == INTO_SYMBOL || LA636_81 == IN_SYMBOL || LA636_81 == IS_SYMBOL || ((LA636_81 >= JOIN_SYMBOL) && (LA636_81 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_81 >= LEFT_SYMBOL) && (LA636_81 <= LESS_THAN_OPERATOR)) || ((LA636_81 >= LIKE_SYMBOL) && (LA636_81 <= LIMIT_SYMBOL)) || LA636_81 == LOCK_SYMBOL || LA636_81 == LOGICAL_AND_OPERATOR || LA636_81 == LOGICAL_OR_OPERATOR || ((LA636_81 >= MINUS_OPERATOR) && (LA636_81 <= MINUTE_SECOND_SYMBOL)) || ((LA636_81 >= MOD_OPERATOR) && (LA636_81 <= MOD_SYMBOL)) || ((LA636_81 >= MULT_OPERATOR) && (LA636_81 <= NATURAL_SYMBOL)) || ((LA636_81 >= NOT_EQUAL2_OPERATOR) && (LA636_81 <= NOT_SYMBOL)) || LA636_81 == NULL_SAFE_EQUAL_OPERATOR || LA636_81 == ON_SYMBOL || ((LA636_81 >= ORDER_SYMBOL) && (LA636_81 <= OR_SYMBOL)) || LA636_81 == PLUS_OPERATOR || LA636_81 == PROCEDURE_SYMBOL || LA636_81 == REGEXP_SYMBOL || LA636_81 == RENAME_SYMBOL || LA636_81 == RIGHT_SYMBOL || LA636_81 == SECOND_MICROSECOND_SYMBOL || LA636_81 == SEMICOLON_SYMBOL || LA636_81 == SEPARATOR_SYMBOL || LA636_81 == SET_SYMBOL || ((LA636_81 >= SHIFT_LEFT_OPERATOR) && (LA636_81 <= SHIFT_RIGHT_OPERATOR)) || LA636_81 == SINGLE_QUOTED_TEXT || LA636_81 == STRAIGHT_JOIN_SYMBOL || LA636_81 == THEN_SYMBOL || LA636_81 == UNION_SYMBOL || LA636_81 == USING_SYMBOL || ((LA636_81 >= WHEN_SYMBOL) && (LA636_81 <= WHERE_SYMBOL)) || LA636_81 == WITH_SYMBOL || ((LA636_81 >= XOR_SYMBOL) && (LA636_81 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 81;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == BACK_TICK_QUOTED_ID))
                    {
                        {
                            int LA636_82 = LA(2);
                            if ( (LA636_82 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_3371 = LA(3);
                                    if ( (ANTLR3_TRUE))
                                    {
                                        alt636=3;
                                    }
                                    else if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    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        = 3371;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_82 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_3372 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 3372;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_82 == EOF || ((LA636_82 >= ACCOUNT_SYMBOL) && (LA636_82 <= YEAR_SYMBOL)) || ((LA636_82 >= AND_SYMBOL) && (LA636_82 <= ASC_SYMBOL)) || ((LA636_82 >= AS_SYMBOL) && (LA636_82 <= AT_TEXT_SUFFIX)) || LA636_82 == BACK_TICK_QUOTED_ID || LA636_82 == BETWEEN_SYMBOL || LA636_82 == BIN_NUMBER || LA636_82 == BITWISE_AND_OPERATOR || ((LA636_82 >= BITWISE_OR_OPERATOR) && (LA636_82 <= BITWISE_XOR_OPERATOR)) || ((LA636_82 >= CLOSE_CURLY_SYMBOL) && (LA636_82 <= COLLATE_SYMBOL)) || LA636_82 == COMMA_SYMBOL || LA636_82 == CONCAT_PIPES_SYMBOL || LA636_82 == CROSS_SYMBOL || ((LA636_82 >= DAY_HOUR_SYMBOL) && (LA636_82 <= DAY_SECOND_SYMBOL)) || LA636_82 == DESC_SYMBOL || ((LA636_82 >= DIV_OPERATOR) && (LA636_82 <= DIV_SYMBOL)) || LA636_82 == DOUBLE_QUOTED_TEXT || LA636_82 == ELSE_SYMBOL || LA636_82 == EQUAL_OPERATOR || ((LA636_82 >= FOR_SYMBOL) && (LA636_82 <= FROM_SYMBOL)) || ((LA636_82 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_82 <= GREATER_THAN_OPERATOR)) || ((LA636_82 >= GROUP_SYMBOL) && (LA636_82 <= HAVING_SYMBOL)) || LA636_82 == HEX_NUMBER || ((LA636_82 >= HOUR_MICROSECOND_SYMBOL) && (LA636_82 <= IDENTIFIER)) || LA636_82 == INNER_SYMBOL || LA636_82 == INTO_SYMBOL || LA636_82 == IN_SYMBOL || LA636_82 == IS_SYMBOL || ((LA636_82 >= JOIN_SYMBOL) && (LA636_82 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_82 >= LEFT_SYMBOL) && (LA636_82 <= LESS_THAN_OPERATOR)) || ((LA636_82 >= LIKE_SYMBOL) && (LA636_82 <= LIMIT_SYMBOL)) || LA636_82 == LOCK_SYMBOL || LA636_82 == LOGICAL_AND_OPERATOR || LA636_82 == LOGICAL_OR_OPERATOR || ((LA636_82 >= MINUS_OPERATOR) && (LA636_82 <= MINUTE_SECOND_SYMBOL)) || ((LA636_82 >= MOD_OPERATOR) && (LA636_82 <= MOD_SYMBOL)) || ((LA636_82 >= MULT_OPERATOR) && (LA636_82 <= NATURAL_SYMBOL)) || ((LA636_82 >= NOT_EQUAL2_OPERATOR) && (LA636_82 <= NOT_SYMBOL)) || LA636_82 == NULL_SAFE_EQUAL_OPERATOR || LA636_82 == ON_SYMBOL || ((LA636_82 >= ORDER_SYMBOL) && (LA636_82 <= OR_SYMBOL)) || LA636_82 == PLUS_OPERATOR || LA636_82 == PROCEDURE_SYMBOL || LA636_82 == REGEXP_SYMBOL || LA636_82 == RENAME_SYMBOL || LA636_82 == RIGHT_SYMBOL || LA636_82 == SECOND_MICROSECOND_SYMBOL || LA636_82 == SEMICOLON_SYMBOL || LA636_82 == SEPARATOR_SYMBOL || LA636_82 == SET_SYMBOL || ((LA636_82 >= SHIFT_LEFT_OPERATOR) && (LA636_82 <= SHIFT_RIGHT_OPERATOR)) || LA636_82 == SINGLE_QUOTED_TEXT || LA636_82 == STRAIGHT_JOIN_SYMBOL || LA636_82 == THEN_SYMBOL || LA636_82 == UNION_SYMBOL || LA636_82 == USING_SYMBOL || ((LA636_82 >= WHEN_SYMBOL) && (LA636_82 <= WHERE_SYMBOL)) || LA636_82 == WITH_SYMBOL || ((LA636_82 >= XOR_SYMBOL) && (LA636_82 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 82;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == ROW_SYMBOL))
                    {
                        {
                            int LA636_83 = LA(2);
                            if ( (LA636_83 == OPEN_PAR_SYMBOL))
                            {
                                {
                                    int LA636_3457 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=9;
                                    }
                                    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        = 3457;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_83 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_3458 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 3458;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (LA636_83 == EOF || ((LA636_83 >= ACCOUNT_SYMBOL) && (LA636_83 <= YEAR_SYMBOL)) || ((LA636_83 >= AND_SYMBOL) && (LA636_83 <= ASC_SYMBOL)) || ((LA636_83 >= AS_SYMBOL) && (LA636_83 <= AT_TEXT_SUFFIX)) || LA636_83 == BACK_TICK_QUOTED_ID || LA636_83 == BETWEEN_SYMBOL || LA636_83 == BIN_NUMBER || LA636_83 == BITWISE_AND_OPERATOR || ((LA636_83 >= BITWISE_OR_OPERATOR) && (LA636_83 <= BITWISE_XOR_OPERATOR)) || ((LA636_83 >= CLOSE_CURLY_SYMBOL) && (LA636_83 <= COLLATE_SYMBOL)) || LA636_83 == COMMA_SYMBOL || LA636_83 == CONCAT_PIPES_SYMBOL || LA636_83 == CROSS_SYMBOL || ((LA636_83 >= DAY_HOUR_SYMBOL) && (LA636_83 <= DAY_SECOND_SYMBOL)) || LA636_83 == DESC_SYMBOL || ((LA636_83 >= DIV_OPERATOR) && (LA636_83 <= DIV_SYMBOL)) || LA636_83 == DOUBLE_QUOTED_TEXT || LA636_83 == ELSE_SYMBOL || LA636_83 == EQUAL_OPERATOR || ((LA636_83 >= FOR_SYMBOL) && (LA636_83 <= FROM_SYMBOL)) || ((LA636_83 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_83 <= GREATER_THAN_OPERATOR)) || ((LA636_83 >= GROUP_SYMBOL) && (LA636_83 <= HAVING_SYMBOL)) || LA636_83 == HEX_NUMBER || ((LA636_83 >= HOUR_MICROSECOND_SYMBOL) && (LA636_83 <= IDENTIFIER)) || LA636_83 == INNER_SYMBOL || LA636_83 == INTO_SYMBOL || LA636_83 == IN_SYMBOL || LA636_83 == IS_SYMBOL || ((LA636_83 >= JOIN_SYMBOL) && (LA636_83 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_83 >= LEFT_SYMBOL) && (LA636_83 <= LESS_THAN_OPERATOR)) || ((LA636_83 >= LIKE_SYMBOL) && (LA636_83 <= LIMIT_SYMBOL)) || LA636_83 == LOCK_SYMBOL || LA636_83 == LOGICAL_AND_OPERATOR || LA636_83 == LOGICAL_OR_OPERATOR || ((LA636_83 >= MINUS_OPERATOR) && (LA636_83 <= MINUTE_SECOND_SYMBOL)) || ((LA636_83 >= MOD_OPERATOR) && (LA636_83 <= MOD_SYMBOL)) || ((LA636_83 >= MULT_OPERATOR) && (LA636_83 <= NATURAL_SYMBOL)) || ((LA636_83 >= NOT_EQUAL2_OPERATOR) && (LA636_83 <= NOT_SYMBOL)) || LA636_83 == NULL_SAFE_EQUAL_OPERATOR || LA636_83 == ON_SYMBOL || ((LA636_83 >= ORDER_SYMBOL) && (LA636_83 <= OR_SYMBOL)) || LA636_83 == PLUS_OPERATOR || LA636_83 == PROCEDURE_SYMBOL || LA636_83 == REGEXP_SYMBOL || LA636_83 == RENAME_SYMBOL || LA636_83 == RIGHT_SYMBOL || LA636_83 == SECOND_MICROSECOND_SYMBOL || LA636_83 == SEMICOLON_SYMBOL || LA636_83 == SEPARATOR_SYMBOL || LA636_83 == SET_SYMBOL || ((LA636_83 >= SHIFT_LEFT_OPERATOR) && (LA636_83 <= SHIFT_RIGHT_OPERATOR)) || LA636_83 == SINGLE_QUOTED_TEXT || LA636_83 == STRAIGHT_JOIN_SYMBOL || LA636_83 == THEN_SYMBOL || LA636_83 == UNION_SYMBOL || LA636_83 == USING_SYMBOL || ((LA636_83 >= WHEN_SYMBOL) && (LA636_83 <= WHERE_SYMBOL)) || LA636_83 == WITH_SYMBOL || ((LA636_83 >= XOR_SYMBOL) && (LA636_83 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 83;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == ACCOUNT_SYMBOL || ((LA636_0 >= ALWAYS_SYMBOL) && (LA636_0 <= CACHE_SYMBOL)) || ((LA636_0 >= CHECKSUM_SYMBOL) && (LA636_0 <= COMMIT_SYMBOL)) || ((LA636_0 >= DEALLOCATE_SYMBOL) && (LA636_0 <= FOLLOWS_SYMBOL)) || ((LA636_0 >= GROUP_REPLICATION_SYMBOL) && (LA636_0 <= STOP_SYMBOL)) || ((LA636_0 >= UNICODE_SYMBOL) && (LA636_0 <= XA_SYMBOL)) || LA636_0 == SHUTDOWN_SYMBOL))
                    {
                        {
                            int LA636_84 = LA(2);
                            if ( (LA636_84 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_3543 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 3543;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (synpred2_MySQL(ctx)) && (LA636_84 == OPEN_PAR_SYMBOL))
                            {
                                alt636=4;
                            }
                            else if ( (LA636_84 == EOF || ((LA636_84 >= ACCOUNT_SYMBOL) && (LA636_84 <= YEAR_SYMBOL)) || ((LA636_84 >= AND_SYMBOL) && (LA636_84 <= ASC_SYMBOL)) || ((LA636_84 >= AS_SYMBOL) && (LA636_84 <= AT_TEXT_SUFFIX)) || LA636_84 == BACK_TICK_QUOTED_ID || LA636_84 == BETWEEN_SYMBOL || LA636_84 == BIN_NUMBER || LA636_84 == BITWISE_AND_OPERATOR || ((LA636_84 >= BITWISE_OR_OPERATOR) && (LA636_84 <= BITWISE_XOR_OPERATOR)) || ((LA636_84 >= CLOSE_CURLY_SYMBOL) && (LA636_84 <= COLLATE_SYMBOL)) || LA636_84 == COMMA_SYMBOL || LA636_84 == CONCAT_PIPES_SYMBOL || LA636_84 == CROSS_SYMBOL || ((LA636_84 >= DAY_HOUR_SYMBOL) && (LA636_84 <= DAY_SECOND_SYMBOL)) || LA636_84 == DESC_SYMBOL || ((LA636_84 >= DIV_OPERATOR) && (LA636_84 <= DIV_SYMBOL)) || LA636_84 == DOUBLE_QUOTED_TEXT || LA636_84 == ELSE_SYMBOL || LA636_84 == EQUAL_OPERATOR || ((LA636_84 >= FOR_SYMBOL) && (LA636_84 <= FROM_SYMBOL)) || ((LA636_84 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_84 <= GREATER_THAN_OPERATOR)) || ((LA636_84 >= GROUP_SYMBOL) && (LA636_84 <= HAVING_SYMBOL)) || LA636_84 == HEX_NUMBER || ((LA636_84 >= HOUR_MICROSECOND_SYMBOL) && (LA636_84 <= IDENTIFIER)) || LA636_84 == INNER_SYMBOL || LA636_84 == INTO_SYMBOL || LA636_84 == IN_SYMBOL || LA636_84 == IS_SYMBOL || ((LA636_84 >= JOIN_SYMBOL) && (LA636_84 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_84 >= LEFT_SYMBOL) && (LA636_84 <= LESS_THAN_OPERATOR)) || ((LA636_84 >= LIKE_SYMBOL) && (LA636_84 <= LIMIT_SYMBOL)) || LA636_84 == LOCK_SYMBOL || LA636_84 == LOGICAL_AND_OPERATOR || LA636_84 == LOGICAL_OR_OPERATOR || ((LA636_84 >= MINUS_OPERATOR) && (LA636_84 <= MINUTE_SECOND_SYMBOL)) || ((LA636_84 >= MOD_OPERATOR) && (LA636_84 <= MOD_SYMBOL)) || ((LA636_84 >= MULT_OPERATOR) && (LA636_84 <= NATURAL_SYMBOL)) || ((LA636_84 >= NOT_EQUAL2_OPERATOR) && (LA636_84 <= NOT_SYMBOL)) || LA636_84 == NULL_SAFE_EQUAL_OPERATOR || LA636_84 == ON_SYMBOL || ((LA636_84 >= ORDER_SYMBOL) && (LA636_84 <= OR_SYMBOL)) || LA636_84 == PLUS_OPERATOR || LA636_84 == PROCEDURE_SYMBOL || LA636_84 == REGEXP_SYMBOL || LA636_84 == RENAME_SYMBOL || LA636_84 == RIGHT_SYMBOL || LA636_84 == SECOND_MICROSECOND_SYMBOL || LA636_84 == SEMICOLON_SYMBOL || LA636_84 == SEPARATOR_SYMBOL || LA636_84 == SET_SYMBOL || ((LA636_84 >= SHIFT_LEFT_OPERATOR) && (LA636_84 <= SHIFT_RIGHT_OPERATOR)) || LA636_84 == SINGLE_QUOTED_TEXT || LA636_84 == STRAIGHT_JOIN_SYMBOL || LA636_84 == THEN_SYMBOL || LA636_84 == UNION_SYMBOL || LA636_84 == USING_SYMBOL || ((LA636_84 >= WHEN_SYMBOL) && (LA636_84 <= WHERE_SYMBOL)) || LA636_84 == WITH_SYMBOL || ((LA636_84 >= XOR_SYMBOL) && (LA636_84 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 84;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == DOT_SYMBOL))
                    {
                        alt636=5;
                    }
                    else if ( (LA636_0 == PARAM_MARKER))
                    {
                        alt636=6;
                    }
                    else if ( (((LA636_0 >= AT_AT_SIGN_SYMBOL) && (LA636_0 <= AT_TEXT_SUFFIX))))
                    {
                        alt636=7;
                    }
                    else if ( (LA636_0 == EXISTS_SYMBOL))
                    {
                        alt636=8;
                    }
                    else if ( (LA636_0 == OPEN_PAR_SYMBOL))
                    {
                        alt636=9;
                    }
                    else if ( (LA636_0 == ACTION_SYMBOL || ((LA636_0 >= AFTER_SYMBOL) && (LA636_0 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA636_0 >= BINLOG_SYMBOL) && (LA636_0 <= CLASS_ORIGIN_SYMBOL)) || LA636_0 == CODE_SYMBOL || ((LA636_0 >= COLUMN_NAME_SYMBOL) && (LA636_0 <= DATETIME_SYMBOL)) || ((LA636_0 >= DEFAULT_AUTH_SYMBOL) && (LA636_0 <= GEOMETRY_SYMBOL)) || ((LA636_0 >= GRANTS_SYMBOL) && (LA636_0 <= HOSTS_SYMBOL)) || ((LA636_0 >= IDENTIFIED_SYMBOL) && (LA636_0 <= LEVEL_SYMBOL)) || ((LA636_0 >= LIST_SYMBOL) && (LA636_0 <= MESSAGE_TEXT_SYMBOL)) || LA636_0 == MIGRATE_SYMBOL || ((LA636_0 >= MIN_ROWS_SYMBOL) && (LA636_0 <= MODE_SYMBOL)) || ((LA636_0 >= MUTEX_SYMBOL) && (LA636_0 <= OFFSET_SYMBOL)) || ((LA636_0 >= ONE_SHOT_SYMBOL) && (LA636_0 <= PARTITIONS_SYMBOL)) || ((LA636_0 >= PHASE_SYMBOL) && (LA636_0 <= PLUGINS_SYMBOL)) || ((LA636_0 >= PRESERVE_SYMBOL) && (LA636_0 <= PROXY_SYMBOL)) || ((LA636_0 >= QUERY_SYMBOL) && (LA636_0 <= RETURNS_SYMBOL)) || ((LA636_0 >= ROLLUP_SYMBOL) && (LA636_0 <= ROWS_SYMBOL)) || LA636_0 == ROW_FORMAT_SYMBOL || ((LA636_0 >= RTREE_SYMBOL) && (LA636_0 <= SCHEMA_NAME_SYMBOL)) || ((LA636_0 >= SERIAL_SYMBOL) && (LA636_0 <= SHARE_SYMBOL)) || ((LA636_0 >= SLOW_SYMBOL) && (LA636_0 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA636_0 >= SUBJECT_SYMBOL) && (LA636_0 <= TRIGGERS_SYMBOL)) || ((LA636_0 >= TYPES_SYMBOL) && (LA636_0 <= USER_RESOURCES_SYMBOL)) || ((LA636_0 >= USE_FRM_SYMBOL) && (LA636_0 <= WAIT_SYMBOL)) || LA636_0 == WORK_SYMBOL || ((LA636_0 >= X509_SYMBOL) && (LA636_0 <= XML_SYMBOL))))
                    {
                        {
                            int LA636_92 = LA(2);
                            if ( (LA636_92 == DOT_SYMBOL))
                            {
                                {
                                    int LA636_3629 = LA(3);
                                    if ( (synpred2_MySQL(ctx)))
                                    {
                                        alt636=4;
                                    }
                                    else if ( (ANTLR3_TRUE))
                                    {
                                        alt636=5;
                                    }
                                    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        = 3629;


                                        goto ruleprimaryEx;

                                    }
                                }
                            }
                            else if ( (synpred2_MySQL(ctx)) && (LA636_92 == OPEN_PAR_SYMBOL))
                            {
                                alt636=4;
                            }
                            else if ( (LA636_92 == EOF || ((LA636_92 >= ACCOUNT_SYMBOL) && (LA636_92 <= YEAR_SYMBOL)) || ((LA636_92 >= AND_SYMBOL) && (LA636_92 <= ASC_SYMBOL)) || ((LA636_92 >= AS_SYMBOL) && (LA636_92 <= AT_TEXT_SUFFIX)) || LA636_92 == BACK_TICK_QUOTED_ID || LA636_92 == BETWEEN_SYMBOL || LA636_92 == BIN_NUMBER || LA636_92 == BITWISE_AND_OPERATOR || ((LA636_92 >= BITWISE_OR_OPERATOR) && (LA636_92 <= BITWISE_XOR_OPERATOR)) || ((LA636_92 >= CLOSE_CURLY_SYMBOL) && (LA636_92 <= COLLATE_SYMBOL)) || LA636_92 == COMMA_SYMBOL || LA636_92 == CONCAT_PIPES_SYMBOL || LA636_92 == CROSS_SYMBOL || ((LA636_92 >= DAY_HOUR_SYMBOL) && (LA636_92 <= DAY_SECOND_SYMBOL)) || LA636_92 == DESC_SYMBOL || ((LA636_92 >= DIV_OPERATOR) && (LA636_92 <= DIV_SYMBOL)) || LA636_92 == DOUBLE_QUOTED_TEXT || LA636_92 == ELSE_SYMBOL || LA636_92 == EQUAL_OPERATOR || ((LA636_92 >= FOR_SYMBOL) && (LA636_92 <= FROM_SYMBOL)) || ((LA636_92 >= GREATER_OR_EQUAL_OPERATOR) && (LA636_92 <= GREATER_THAN_OPERATOR)) || ((LA636_92 >= GROUP_SYMBOL) && (LA636_92 <= HAVING_SYMBOL)) || LA636_92 == HEX_NUMBER || ((LA636_92 >= HOUR_MICROSECOND_SYMBOL) && (LA636_92 <= IDENTIFIER)) || LA636_92 == INNER_SYMBOL || LA636_92 == INTO_SYMBOL || LA636_92 == IN_SYMBOL || LA636_92 == IS_SYMBOL || ((LA636_92 >= JOIN_SYMBOL) && (LA636_92 <= JSON_SEPARATOR_SYMBOL)) || ((LA636_92 >= LEFT_SYMBOL) && (LA636_92 <= LESS_THAN_OPERATOR)) || ((LA636_92 >= LIKE_SYMBOL) && (LA636_92 <= LIMIT_SYMBOL)) || LA636_92 == LOCK_SYMBOL || LA636_92 == LOGICAL_AND_OPERATOR || LA636_92 == LOGICAL_OR_OPERATOR || ((LA636_92 >= MINUS_OPERATOR) && (LA636_92 <= MINUTE_SECOND_SYMBOL)) || ((LA636_92 >= MOD_OPERATOR) && (LA636_92 <= MOD_SYMBOL)) || ((LA636_92 >= MULT_OPERATOR) && (LA636_92 <= NATURAL_SYMBOL)) || ((LA636_92 >= NOT_EQUAL2_OPERATOR) && (LA636_92 <= NOT_SYMBOL)) || LA636_92 == NULL_SAFE_EQUAL_OPERATOR || LA636_92 == ON_SYMBOL || ((LA636_92 >= ORDER_SYMBOL) && (LA636_92 <= OR_SYMBOL)) || LA636_92 == PLUS_OPERATOR || LA636_92 == PROCEDURE_SYMBOL || LA636_92 == REGEXP_SYMBOL || LA636_92 == RENAME_SYMBOL || LA636_92 == RIGHT_SYMBOL || LA636_92 == SECOND_MICROSECOND_SYMBOL || LA636_92 == SEMICOLON_SYMBOL || LA636_92 == SEPARATOR_SYMBOL || LA636_92 == SET_SYMBOL || ((LA636_92 >= SHIFT_LEFT_OPERATOR) && (LA636_92 <= SHIFT_RIGHT_OPERATOR)) || LA636_92 == SINGLE_QUOTED_TEXT || LA636_92 == STRAIGHT_JOIN_SYMBOL || LA636_92 == THEN_SYMBOL || LA636_92 == UNION_SYMBOL || LA636_92 == USING_SYMBOL || ((LA636_92 >= WHEN_SYMBOL) && (LA636_92 <= WHERE_SYMBOL)) || LA636_92 == WITH_SYMBOL || ((LA636_92 >= XOR_SYMBOL) && (LA636_92 <= YEAR_MONTH_SYMBOL))))
                            {
                                alt636=5;
                            }
                            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        = 92;


                                goto ruleprimaryEx;

                            }
                        }
                    }
                    else if ( (LA636_0 == OPEN_CURLY_SYMBOL))
                    {
                        alt636=10;
                    }
                    else if ( (LA636_0 == MATCH_SYMBOL))
                    {
                        alt636=11;
                    }
                    else if ( (LA636_0 == CASE_SYMBOL))
                    {
                        alt636=12;
                    }
                    else if ( (LA636_0 == BINARY_SYMBOL || LA636_0 == CAST_SYMBOL || LA636_0 == CONVERT_SYMBOL))
                    {
                        alt636=13;
                    }
                    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 ruleprimaryEx;

                    }
                }
                switch (alt636)
                {
            	case 1:
            	    // MySQL.g:2191:3: literal
            	    {
            	        FOLLOWPUSH(FOLLOW_literal_in_primary11204);
            	        literal2025=literal(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal2025.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2192:5: runtime_function_call
            	    {
            	        FOLLOWPUSH(FOLLOW_runtime_function_call_in_primary11210);
            	        runtime_function_call2026=runtime_function_call(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, runtime_function_call2026.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2193:5: udf_call
            	    {
            	        FOLLOWPUSH(FOLLOW_udf_call_in_primary11217);
            	        udf_call2027=udf_call(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, udf_call2027.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:2194:5: ( stored_function_call )=> stored_function_call
            	    {
            	        FOLLOWPUSH(FOLLOW_stored_function_call_in_primary11229);
            	        stored_function_call2028=stored_function_call(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, stored_function_call2028.tree);

            	    }
            	    break;
            	case 5:
            	    // MySQL.g:2195:5: column_ref ({...}? ( JSON_SEPARATOR_SYMBOL text_string )? |)
            	    {
            	        FOLLOWPUSH(FOLLOW_column_ref_in_primary11235);
            	        column_ref2029=column_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref2029.tree);

            	        // MySQL.g:2195:16: ({...}? ( JSON_SEPARATOR_SYMBOL text_string )? |)
            	        {
            	            int alt635=2;
            	            {
            	                int LA635_0 = LA(1);
            	                if ( (LA635_0 == JSON_SEPARATOR_SYMBOL))
            	                {
            	                    alt635=1;
            	                }
            	                else if ( (LA635_0 == COLLATE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_2 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 2;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == EQUAL_OPERATOR))
            	                {
            	                    {
            	                        int LA635_3 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 3;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == IS_SYMBOL))
            	                {
            	                    {
            	                        int LA635_4 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 4;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == AND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_5 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 5;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == XOR_SYMBOL))
            	                {
            	                    {
            	                        int LA635_6 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 6;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == LOGICAL_OR_OPERATOR || LA635_0 == OR_SYMBOL))
            	                {
            	                    {
            	                        int LA635_7 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 7;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == CLOSE_PAR_SYMBOL))
            	                {
            	                    {
            	                        int LA635_8 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 8;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == COMMA_SYMBOL))
            	                {
            	                    {
            	                        int LA635_9 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 9;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == AS_SYMBOL))
            	                {
            	                    {
            	                        int LA635_10 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 10;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == IDENTIFIER))
            	                {
            	                    {
            	                        int LA635_11 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 11;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == BACK_TICK_QUOTED_ID))
            	                {
            	                    {
            	                        int LA635_12 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 12;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == DOUBLE_QUOTED_TEXT))
            	                {
            	                    {
            	                        int LA635_13 = LA(2);
            	                        if ( (( (( ((SERVER_VERSION >= 50708)) && ((SERVER_VERSION >= 50708)) )) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
            	                        {
            	                            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        = 13;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == LEVEL_SYMBOL))
            	                {
            	                    {
            	                        int LA635_14 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 14;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == END_SYMBOL))
            	                {
            	                    {
            	                        int LA635_15 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 15;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == BIN_NUMBER || LA635_0 == HEX_NUMBER || LA635_0 == SINGLE_QUOTED_TEXT))
            	                {
            	                    {
            	                        int LA635_16 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 16;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == FROM_SYMBOL))
            	                {
            	                    {
            	                        int LA635_17 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 17;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == WHERE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_18 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 18;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == GROUP_SYMBOL))
            	                {
            	                    {
            	                        int LA635_19 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 19;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == HAVING_SYMBOL))
            	                {
            	                    {
            	                        int LA635_20 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 20;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == ORDER_SYMBOL))
            	                {
            	                    {
            	                        int LA635_21 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 21;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == LIMIT_SYMBOL))
            	                {
            	                    {
            	                        int LA635_22 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 22;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == PROCEDURE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_23 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 23;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == FOR_SYMBOL))
            	                {
            	                    {
            	                        int LA635_24 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 24;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == LOCK_SYMBOL))
            	                {
            	                    {
            	                        int LA635_25 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 25;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == UNION_SYMBOL))
            	                {
            	                    {
            	                        int LA635_26 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 26;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == SEMICOLON_SYMBOL))
            	                {
            	                    {
            	                        int LA635_27 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 27;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == EOF))
            	                {
            	                    {
            	                        int LA635_28 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 28;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == ON_SYMBOL))
            	                {
            	                    {
            	                        int LA635_29 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 29;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == WITH_SYMBOL))
            	                {
            	                    {
            	                        int LA635_30 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 30;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == INTO_SYMBOL))
            	                {
            	                    {
            	                        int LA635_31 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 31;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == CROSS_SYMBOL || LA635_0 == INNER_SYMBOL))
            	                {
            	                    {
            	                        int LA635_32 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 32;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == JOIN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_33 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 33;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == STRAIGHT_JOIN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_34 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 34;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == LEFT_SYMBOL || LA635_0 == RIGHT_SYMBOL))
            	                {
            	                    {
            	                        int LA635_35 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 35;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == NATURAL_SYMBOL))
            	                {
            	                    {
            	                        int LA635_36 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 36;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == SET_SYMBOL))
            	                {
            	                    {
            	                        int LA635_37 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 37;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == CLOSE_CURLY_SYMBOL))
            	                {
            	                    {
            	                        int LA635_38 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 38;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == USING_SYMBOL))
            	                {
            	                    {
            	                        int LA635_39 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 39;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == DAY_SYMBOL || LA635_0 == HOUR_SYMBOL || LA635_0 == MICROSECOND_SYMBOL || LA635_0 == MINUTE_SYMBOL || LA635_0 == MONTH_SYMBOL || LA635_0 == QUARTER_SYMBOL || LA635_0 == SECOND_SYMBOL || LA635_0 == WEEK_SYMBOL || LA635_0 == YEAR_SYMBOL))
            	                {
            	                    {
            	                        int LA635_40 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 40;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == AT_SIGN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_41 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 41;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == AT_TEXT_SUFFIX))
            	                {
            	                    {
            	                        int LA635_42 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 42;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == AT_AT_SIGN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_43 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 43;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (((LA635_0 >= GREATER_OR_EQUAL_OPERATOR) && (LA635_0 <= GREATER_THAN_OPERATOR)) || ((LA635_0 >= LESS_OR_EQUAL_OPERATOR) && (LA635_0 <= LESS_THAN_OPERATOR)) || ((LA635_0 >= NOT_EQUAL2_OPERATOR) && (LA635_0 <= NOT_EQUAL_OPERATOR)) || LA635_0 == NULL_SAFE_EQUAL_OPERATOR))
            	                {
            	                    {
            	                        int LA635_44 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 44;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == WHEN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_45 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 45;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == THEN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_46 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 46;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == ELSE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_47 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 47;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == DO_SYMBOL))
            	                {
            	                    {
            	                        int LA635_48 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 48;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == ENABLE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_49 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 49;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == FRAC_SECOND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_50 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 50;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == SECOND_MICROSECOND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_51 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 51;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == MINUTE_MICROSECOND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_52 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 52;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == MINUTE_SECOND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_53 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 53;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == HOUR_MICROSECOND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_54 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 54;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == HOUR_SECOND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_55 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 55;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == HOUR_MINUTE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_56 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 56;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == DAY_MICROSECOND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_57 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 57;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == DAY_SECOND_SYMBOL))
            	                {
            	                    {
            	                        int LA635_58 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 58;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == DAY_MINUTE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_59 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 59;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == DAY_HOUR_SYMBOL))
            	                {
            	                    {
            	                        int LA635_60 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 60;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == YEAR_MONTH_SYMBOL))
            	                {
            	                    {
            	                        int LA635_61 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 61;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == SEPARATOR_SYMBOL))
            	                {
            	                    {
            	                        int LA635_62 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 62;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == ASC_SYMBOL || LA635_0 == DESC_SYMBOL))
            	                {
            	                    {
            	                        int LA635_63 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 63;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == COMMENT_SYMBOL))
            	                {
            	                    {
            	                        int LA635_64 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 64;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == RENAME_SYMBOL))
            	                {
            	                    {
            	                        int LA635_65 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 65;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == DISABLE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_66 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 66;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == ENDS_SYMBOL))
            	                {
            	                    {
            	                        int LA635_67 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 67;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (((LA635_0 >= ACCOUNT_SYMBOL) && (LA635_0 <= CLOSE_SYMBOL)) || ((LA635_0 >= COMMIT_SYMBOL) && (LA635_0 <= DEALLOCATE_SYMBOL)) || ((LA635_0 >= EXECUTE_SYMBOL) && (LA635_0 <= XA_SYMBOL)) || LA635_0 == SHUTDOWN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_68 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 68;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == ESCAPE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_69 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 69;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == SOUNDS_SYMBOL))
            	                {
            	                    {
            	                        int LA635_70 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 70;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == CONCAT_PIPES_SYMBOL))
            	                {
            	                    {
            	                        int LA635_71 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 71;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == BITWISE_XOR_OPERATOR))
            	                {
            	                    {
            	                        int LA635_72 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 72;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (((LA635_0 >= DIV_OPERATOR) && (LA635_0 <= DIV_SYMBOL)) || ((LA635_0 >= MOD_OPERATOR) && (LA635_0 <= MOD_SYMBOL)) || LA635_0 == MULT_OPERATOR))
            	                {
            	                    {
            	                        int LA635_73 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 73;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == MINUS_OPERATOR || LA635_0 == PLUS_OPERATOR))
            	                {
            	                    {
            	                        int LA635_74 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 74;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (((LA635_0 >= SHIFT_LEFT_OPERATOR) && (LA635_0 <= SHIFT_RIGHT_OPERATOR))))
            	                {
            	                    {
            	                        int LA635_75 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 75;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == BITWISE_AND_OPERATOR))
            	                {
            	                    {
            	                        int LA635_76 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 76;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == BITWISE_OR_OPERATOR))
            	                {
            	                    {
            	                        int LA635_77 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 77;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == NOT_SYMBOL))
            	                {
            	                    {
            	                        int LA635_78 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 78;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == BETWEEN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_79 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 79;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == LIKE_SYMBOL))
            	                {
            	                    {
            	                        int LA635_80 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 80;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == REGEXP_SYMBOL))
            	                {
            	                    {
            	                        int LA635_81 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 81;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == IN_SYMBOL))
            	                {
            	                    {
            	                        int LA635_82 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 82;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (((LA635_0 >= ACTION_SYMBOL) && (LA635_0 <= DATE_SYMBOL)) || ((LA635_0 >= DEFAULT_AUTH_SYMBOL) && (LA635_0 <= DIRECTORY_SYMBOL)) || ((LA635_0 >= DISCARD_SYMBOL) && (LA635_0 <= DYNAMIC_SYMBOL)) || ((LA635_0 >= ENUM_SYMBOL) && (LA635_0 <= ERRORS_SYMBOL)) || ((LA635_0 >= EVENT_SYMBOL) && (LA635_0 <= FOUND_SYMBOL)) || ((LA635_0 >= FULL_SYMBOL) && (LA635_0 <= HOSTS_SYMBOL)) || ((LA635_0 >= IDENTIFIED_SYMBOL) && (LA635_0 <= LESS_SYMBOL)) || ((LA635_0 >= LINESTRING_SYMBOL) && (LA635_0 <= MESSAGE_TEXT_SYMBOL)) || LA635_0 == MIGRATE_SYMBOL || ((LA635_0 >= MIN_ROWS_SYMBOL) && (LA635_0 <= MODE_SYMBOL)) || ((LA635_0 >= MULTILINESTRING_SYMBOL) && (LA635_0 <= PROXY_SYMBOL)) || ((LA635_0 >= QUERY_SYMBOL) && (LA635_0 <= SCHEMA_NAME_SYMBOL)) || ((LA635_0 >= SERIAL_SYMBOL) && (LA635_0 <= SHARE_SYMBOL)) || ((LA635_0 >= SLOW_SYMBOL) && (LA635_0 <= SNAPSHOT_SYMBOL)) || ((LA635_0 >= SOURCE_SYMBOL) && (LA635_0 <= WAIT_SYMBOL)) || ((LA635_0 >= WORK_SYMBOL) && (LA635_0 <= XML_SYMBOL))))
            	                {
            	                    {
            	                        int LA635_83 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 83;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                else if ( (LA635_0 == LOGICAL_AND_OPERATOR))
            	                {
            	                    {
            	                        int LA635_84 = LA(2);
            	                        if ( ((SERVER_VERSION >= 50708)))
            	                        {
            	                            alt635=1;
            	                        }
            	                        else if ( (ANTLR3_TRUE))
            	                        {
            	                            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        = 84;


            	                            goto ruleprimaryEx;

            	                        }
            	                    }
            	                }
            	                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 ruleprimaryEx;

            	                }
            	            }
            	            switch (alt635)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2195:18: {...}? ( JSON_SEPARATOR_SYMBOL text_string )?
            	        	    {
            	        	        if ( !((SERVER_VERSION >= 50708)) )
            	        	        {
            	        	            if (BACKTRACKING>0)
            	        	            {
            	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	                return retval;
            	        	            }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50708";
            	        	                EXCEPTION->ruleName	 = (void *)"primary";


            	        	        }

            	        	        // MySQL.g:2195:45: ( JSON_SEPARATOR_SYMBOL text_string )?
            	        	        {
            	        	            int alt634=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case JSON_SEPARATOR_SYMBOL:
            	        	                	{
            	        	                		alt634=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt634)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:2195:46: JSON_SEPARATOR_SYMBOL text_string
            	        	        	    {
            	        	        	        JSON_SEPARATOR_SYMBOL2030 = (pANTLR3_COMMON_TOKEN) MATCHT(JSON_SEPARATOR_SYMBOL, &FOLLOW_JSON_SEPARATOR_SYMBOL_in_primary11242);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleprimaryEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        JSON_SEPARATOR_SYMBOL2030_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JSON_SEPARATOR_SYMBOL2030));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, JSON_SEPARATOR_SYMBOL2030_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_text_string_in_primary11244);
            	        	        	        text_string2031=text_string(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto ruleprimaryEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2031.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2195:95: 
            	        	    {
            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 6:
            	    // MySQL.g:2196:5: PARAM_MARKER
            	    {
            	        PARAM_MARKER2032 = (pANTLR3_COMMON_TOKEN) MATCHT(PARAM_MARKER, &FOLLOW_PARAM_MARKER_in_primary11258);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PARAM_MARKER2032_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARAM_MARKER2032));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PARAM_MARKER2032_tree);
            	        }

            	    }
            	    break;
            	case 7:
            	    // MySQL.g:2197:5: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_primary11264);
            	        variable2033=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2033.tree);

            	    }
            	    break;
            	case 8:
            	    // MySQL.g:2198:5: EXISTS_SYMBOL subquery
            	    {
            	        EXISTS_SYMBOL2034 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_primary11270);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        EXISTS_SYMBOL2034_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL2034));
            	        ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL2034_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_subquery_in_primary11272);
            	        subquery2035=subquery(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery2035.tree);

            	    }
            	    break;
            	case 9:
            	    // MySQL.g:2199:5: expression_with_nested_parentheses
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_with_nested_parentheses_in_primary11278);
            	        expression_with_nested_parentheses2036=expression_with_nested_parentheses(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_with_nested_parentheses2036.tree);

            	    }
            	    break;
            	case 10:
            	    // MySQL.g:2200:5: OPEN_CURLY_SYMBOL identifier expression CLOSE_CURLY_SYMBOL
            	    {
            	        OPEN_CURLY_SYMBOL2037 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_CURLY_SYMBOL, &FOLLOW_OPEN_CURLY_SYMBOL_in_primary11284);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_CURLY_SYMBOL2037_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_CURLY_SYMBOL2037));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_CURLY_SYMBOL2037_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_primary11286);
            	        identifier2038=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2038.tree);

            	        FOLLOWPUSH(FOLLOW_expression_in_primary11288);
            	        expression2039=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2039.tree);

            	        CLOSE_CURLY_SYMBOL2040 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_CURLY_SYMBOL, &FOLLOW_CLOSE_CURLY_SYMBOL_in_primary11290);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_CURLY_SYMBOL2040_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_CURLY_SYMBOL2040));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_CURLY_SYMBOL2040_tree);
            	        }

            	    }
            	    break;
            	case 11:
            	    // MySQL.g:2201:5: match_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_match_expression_in_primary11296);
            	        match_expression2041=match_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, match_expression2041.tree);

            	    }
            	    break;
            	case 12:
            	    // MySQL.g:2202:5: case_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_case_expression_in_primary11302);
            	        case_expression2042=case_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, case_expression2042.tree);

            	    }
            	    break;
            	case 13:
            	    // MySQL.g:2203:5: cast_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_cast_expression_in_primary11308);
            	        cast_expression2043=cast_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cast_expression2043.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2206:2: ( options {greedy=true; } : COLLATE_SYMBOL collation_name )*

            for (;;)
            {
                int alt637=2;
                switch ( LA(1) )
                {
                case COLLATE_SYMBOL:
                	{
                		alt637=1;
                	}
                    break;

                }

                switch (alt637)
                {
            	case 1:
            	    // MySQL.g:2206:32: COLLATE_SYMBOL collation_name
            	    {
            	        COLLATE_SYMBOL2044 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_primary11330);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATE_SYMBOL2044_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2044));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2044_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_collation_name_in_primary11332);
            	        collation_name2045=collation_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleprimaryEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name2045.tree);

            	    }
            	    break;

            	default:
            	    goto loop637;	/* break out of the loop */
            	    break;
                }
            }
            loop637: ; /* 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 expression_with_nested_parentheses
 * MySQL.g:2211:1: expression_with_nested_parentheses : ({...}? subquery | expression_list_with_parentheses | ROW_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL );
 */
static MySQLParser_expression_with_nested_parentheses_return
expression_with_nested_parentheses(pMySQLParser ctx)
{
    MySQLParser_expression_with_nested_parentheses_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ROW_SYMBOL2048;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2049;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2051;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2053;
    MySQLParser_subquery_return subquery2046;
    #undef	RETURN_TYPE_subquery2046
    #define	RETURN_TYPE_subquery2046 MySQLParser_subquery_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2047;
    #undef	RETURN_TYPE_expression_list_with_parentheses2047
    #define	RETURN_TYPE_expression_list_with_parentheses2047 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression2050;
    #undef	RETURN_TYPE_expression2050
    #define	RETURN_TYPE_expression2050 MySQLParser_expression_return

    MySQLParser_expression_return expression2052;
    #undef	RETURN_TYPE_expression2052
    #define	RETURN_TYPE_expression2052 MySQLParser_expression_return

    pANTLR3_BASE_TREE ROW_SYMBOL2048_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2049_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2051_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2053_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ROW_SYMBOL2048       = NULL;
    OPEN_PAR_SYMBOL2049       = NULL;
    COMMA_SYMBOL2051       = NULL;
    CLOSE_PAR_SYMBOL2053       = NULL;
    subquery2046.tree = NULL;

    expression_list_with_parentheses2047.tree = NULL;

    expression2050.tree = NULL;

    expression2052.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ROW_SYMBOL2048_tree   = NULL;
    OPEN_PAR_SYMBOL2049_tree   = NULL;
    COMMA_SYMBOL2051_tree   = NULL;
    CLOSE_PAR_SYMBOL2053_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2211:35: ({...}? subquery | expression_list_with_parentheses | ROW_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt639;

            alt639=3;

            switch ( LA(1) )
            {
            case OPEN_PAR_SYMBOL:
            	{
            		{
            		    int LA639_1 = LA(2);
            		    if ( (LA639_1 == SELECT_SYMBOL))
            		    {
            		        alt639=1;
            		    }
            		    else if ( (LA639_1 == OPEN_PAR_SYMBOL))
            		    {
            		        {
            		            int LA639_4 = LA(3);
            		            if ( ((LA(1) == OPEN_PAR_SYMBOL && LA(2) == SELECT_SYMBOL)))
            		            {
            		                alt639=1;
            		            }
            		            else if ( (ANTLR3_TRUE))
            		            {
            		                alt639=2;
            		            }
            		            else
            		            {
            		                if (BACKTRACKING>0)
            		                {
            		                    FAILEDFLAG = ANTLR3_TRUE;
            		                    return retval;
            		                }


            		                CONSTRUCTEX();
            		                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		                EXCEPTION->message      = (void *)"";
            		                EXCEPTION->decisionNum  = 639;
            		                EXCEPTION->state        = 4;


            		                goto ruleexpression_with_nested_parenthesesEx;

            		            }
            		        }
            		    }
            		    else if ( (((LA639_1 >= ACCOUNT_SYMBOL) && (LA639_1 <= YEAR_SYMBOL)) || ((LA639_1 >= AT_AT_SIGN_SYMBOL) && (LA639_1 <= AT_TEXT_SUFFIX)) || LA639_1 == BACK_TICK_QUOTED_ID || ((LA639_1 >= BINARY_SYMBOL) && (LA639_1 <= BIN_NUMBER)) || LA639_1 == BITWISE_NOT_OPERATOR || ((LA639_1 >= BIT_AND_SYMBOL) && (LA639_1 <= BIT_XOR_SYMBOL)) || ((LA639_1 >= CASE_SYMBOL) && (LA639_1 <= CAST_SYMBOL)) || LA639_1 == CHAR_SYMBOL || ((LA639_1 >= CONVERT_SYMBOL) && (LA639_1 <= COUNT_SYMBOL)) || LA639_1 == CURDATE_SYMBOL || LA639_1 == CURRENT_USER_SYMBOL || LA639_1 == CURTIME_SYMBOL || LA639_1 == DATABASE_SYMBOL || LA639_1 == DATE_ADD_SYMBOL || LA639_1 == DATE_SUB_SYMBOL || LA639_1 == DECIMAL_NUMBER || LA639_1 == DOT_SYMBOL || LA639_1 == DOUBLE_QUOTED_TEXT || LA639_1 == EXISTS_SYMBOL || ((LA639_1 >= EXTRACT_SYMBOL) && (LA639_1 <= FALSE_SYMBOL)) || LA639_1 == FLOAT_NUMBER || LA639_1 == GROUP_CONCAT_SYMBOL || LA639_1 == HEX_NUMBER || ((LA639_1 >= IDENTIFIER) && (LA639_1 <= IF_SYMBOL)) || LA639_1 == INSERT_SYMBOL || LA639_1 == INTERVAL_SYMBOL || LA639_1 == INT_NUMBER || LA639_1 == LEFT_SYMBOL || LA639_1 == LOGICAL_NOT_OPERATOR || LA639_1 == LONG_NUMBER || LA639_1 == MATCH_SYMBOL || LA639_1 == MAX_SYMBOL || LA639_1 == MINUS_OPERATOR || LA639_1 == MIN_SYMBOL || LA639_1 == MOD_SYMBOL || LA639_1 == NCHAR_TEXT || LA639_1 == NOT2_SYMBOL || ((LA639_1 >= NOT_SYMBOL) && (LA639_1 <= NOW_SYMBOL)) || LA639_1 == NULL2_SYMBOL || LA639_1 == NULL_SYMBOL || LA639_1 == OPEN_CURLY_SYMBOL || LA639_1 == PARAM_MARKER || ((LA639_1 >= PLUS_OPERATOR) && (LA639_1 <= POSITION_SYMBOL)) || ((LA639_1 >= REPEAT_SYMBOL) && (LA639_1 <= REPLACE_SYMBOL)) || LA639_1 == RIGHT_SYMBOL || LA639_1 == SINGLE_QUOTED_TEXT || LA639_1 == STDDEV_SAMP_SYMBOL || LA639_1 == STD_SYMBOL || LA639_1 == SUBSTRING_SYMBOL || ((LA639_1 >= SUM_SYMBOL) && (LA639_1 <= SYSDATE_SYMBOL)) || ((LA639_1 >= TRIM_SYMBOL) && (LA639_1 <= TRUE_SYMBOL)) || LA639_1 == ULONGLONG_NUMBER || LA639_1 == UNDERSCORE_CHARSET || ((LA639_1 >= UTC_DATE_SYMBOL) && (LA639_1 <= UTC_TIME_SYMBOL)) || LA639_1 == VALUES_SYMBOL || LA639_1 == VARIANCE_SYMBOL || LA639_1 == VAR_SAMP_SYMBOL))
            		    {
            		        alt639=2;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 639;
            		        EXCEPTION->state        = 1;


            		        goto ruleexpression_with_nested_parenthesesEx;

            		    }
            		}
            	}
                break;
            case ROW_SYMBOL:
            	{
            		alt639=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 639;
                EXCEPTION->state        = 0;


                goto ruleexpression_with_nested_parenthesesEx;

            }

            switch (alt639)
            {
        	case 1:
        	    // MySQL.g:2212:2: {...}? subquery
        	    {
        	        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 *)"expression_with_nested_parentheses";


        	        }

        	        FOLLOWPUSH(FOLLOW_subquery_in_expression_with_nested_parentheses11347);
        	        subquery2046=subquery(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexpression_with_nested_parenthesesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subquery2046.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2213:4: expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_expression_with_nested_parentheses11352);
        	        expression_list_with_parentheses2047=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexpression_with_nested_parenthesesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses2047.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2214:4: ROW_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )+ CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ROW_SYMBOL2048 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_SYMBOL, &FOLLOW_ROW_SYMBOL_in_expression_with_nested_parentheses11357);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexpression_with_nested_parenthesesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROW_SYMBOL2048_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_SYMBOL2048));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_SYMBOL2048_tree);
        	        }

        	        OPEN_PAR_SYMBOL2049 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_expression_with_nested_parentheses11359);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexpression_with_nested_parenthesesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2049_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2049));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2049_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_expression_with_nested_parentheses11361);
        	        expression2050=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexpression_with_nested_parenthesesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2050.tree);

        	        // MySQL.g:2214:42: ( COMMA_SYMBOL expression )+
        	        {
        	            int cnt638=0;

        	            for (;;)
        	            {
        	                int alt638=2;
        	        	switch ( LA(1) )
        	        	{
        	        	case COMMA_SYMBOL:
        	        		{
        	        			alt638=1;
        	        		}
        	        	    break;

        	        	}

        	        	switch (alt638)
        	        	{
        	        	    case 1:
        	        	        // MySQL.g:2214:43: COMMA_SYMBOL expression
        	        	        {
        	        	            COMMA_SYMBOL2051 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_expression_with_nested_parentheses11364);
        	        	            if  (HASEXCEPTION())
        	        	            {
        	        	                goto ruleexpression_with_nested_parenthesesEx;
        	        	            }
        	        	            if (HASFAILED())
        	        	            {
        	        	                return retval;
        	        	            }

        	        	            if ( BACKTRACKING==0 ) {
        	        	            COMMA_SYMBOL2051_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2051));
        	        	            ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2051_tree);
        	        	            }

        	        	            FOLLOWPUSH(FOLLOW_expression_in_expression_with_nested_parentheses11366);
        	        	            expression2052=expression(ctx);

        	        	            FOLLOWPOP();
        	        	            if  (HASEXCEPTION())
        	        	            {
        	        	                goto ruleexpression_with_nested_parenthesesEx;
        	        	            }
        	        	            if (HASFAILED())
        	        	            {
        	        	                return retval;
        	        	            }

        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2052.tree);

        	        	        }
        	        	        break;

        	        	    default:

        	        		if ( cnt638 >= 1 )
        	        		{
        	        		    goto loop638;
        	        		}
        	        		if (BACKTRACKING>0)
        	        		{
        	        		    FAILEDFLAG = ANTLR3_TRUE;
        	        		    return retval;
        	        		}

        	        		/* mismatchedSetEx()
        	        		 */
        	        		CONSTRUCTEX();
        	        		EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION;
        	        		EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME;


        	        		goto ruleexpression_with_nested_parenthesesEx;
        	        	}
        	        	cnt638++;
        	            }
        	            loop638: ;	/* Jump to here if this rule does not match */
        	        }

        	        CLOSE_PAR_SYMBOL2053 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_expression_with_nested_parentheses11370);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleexpression_with_nested_parenthesesEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2053_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2053));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2053_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleexpression_with_nested_parenthesesEx; /* Prevent compiler warnings */
    ruleexpression_with_nested_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 expression_with_nested_parentheses */

/**
 * $ANTLR start comparison_operator
 * MySQL.g:2217: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    set2054;

    pANTLR3_BASE_TREE set2054_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2054       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2054_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2217: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));


            set2054=(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, set2054))
                );
                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:2228: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    set2055;

    pANTLR3_BASE_TREE set2055_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2055       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2055_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2228:24: ( MULT_OPERATOR | DIV_OPERATOR | DIV_SYMBOL | MOD_OPERATOR | MOD_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2055=(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, set2055))
                );
                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 runtime_function_call
 * MySQL.g:2232:1: runtime_function_call : runtime_function_call_expression -> ^( RUNTIME_FUNCTION_TOKEN runtime_function_call_expression ) ;
 */
static MySQLParser_runtime_function_call_return
runtime_function_call(pMySQLParser ctx)
{
    MySQLParser_runtime_function_call_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_runtime_function_call_expression_return runtime_function_call_expression2056;
    #undef	RETURN_TYPE_runtime_function_call_expression2056
    #define	RETURN_TYPE_runtime_function_call_expression2056 MySQLParser_runtime_function_call_expression_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_runtime_function_call_expression;
    /* Initialize rule variables
     */

    root_0 = NULL;

    runtime_function_call_expression2056.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_runtime_function_call_expression   = NULL;
    #define CREATE_stream_runtime_function_call_expression  if (stream_runtime_function_call_expression == NULL) {stream_runtime_function_call_expression = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule runtime_function_call_expression"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2232:22: ( runtime_function_call_expression -> ^( RUNTIME_FUNCTION_TOKEN runtime_function_call_expression ) )
        // MySQL.g:2233:2: runtime_function_call_expression
        {
            FOLLOWPUSH(FOLLOW_runtime_function_call_expression_in_runtime_function_call11448);
            runtime_function_call_expression2056=runtime_function_call_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleruntime_function_callEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_runtime_function_call_expression; stream_runtime_function_call_expression->add(stream_runtime_function_call_expression, runtime_function_call_expression2056.tree, NULL); }

            /* AST REWRITE
             * elements          : runtime_function_call_expression
             * 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;
            	// 2233:35: -> ^( RUNTIME_FUNCTION_TOKEN runtime_function_call_expression )
            	{
            	    // MySQL.g:2233:38: ^( RUNTIME_FUNCTION_TOKEN runtime_function_call_expression )
            	    {
            	        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, RUNTIME_FUNCTION_TOKEN, (pANTLR3_UINT8)"RUNTIME_FUNCTION_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_runtime_function_call_expression == NULL ? NULL : stream_runtime_function_call_expression->nextTree(stream_runtime_function_call_expression));

            	        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 ruleruntime_function_callEx; /* Prevent compiler warnings */
    ruleruntime_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_runtime_function_call_expression != NULL) stream_runtime_function_call_expression->free(stream_runtime_function_call_expression);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end runtime_function_call */

/**
 * $ANTLR start runtime_function_call_expression
 * MySQL.g:2236:1: runtime_function_call_expression : ( 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 expression 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 expression 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 string_literal 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 ulong_number COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number ) CLOSE_PAR_SYMBOL | geometry_function | aggregate_function );
 */
static MySQLParser_runtime_function_call_expression_return
runtime_function_call_expression(pMySQLParser ctx)
{
    MySQLParser_runtime_function_call_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2057;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2058;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL2060;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2062;
    pANTLR3_COMMON_TOKEN    CURRENT_USER_SYMBOL2063;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2065;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2066;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2068;
    pANTLR3_COMMON_TOKEN    DAY_SYMBOL2069;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2070;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2072;
    pANTLR3_COMMON_TOKEN    HOUR_SYMBOL2073;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2074;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2076;
    pANTLR3_COMMON_TOKEN    INSERT_SYMBOL2077;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2078;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2080;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2082;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2084;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2086;
    pANTLR3_COMMON_TOKEN    LEFT_SYMBOL2087;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2088;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2090;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2092;
    pANTLR3_COMMON_TOKEN    MINUTE_SYMBOL2093;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2094;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2096;
    pANTLR3_COMMON_TOKEN    MONTH_SYMBOL2097;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2098;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2100;
    pANTLR3_COMMON_TOKEN    RIGHT_SYMBOL2101;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2102;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2104;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2106;
    pANTLR3_COMMON_TOKEN    SECOND_SYMBOL2107;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2108;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2110;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2111;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2112;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2114;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL2115;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2116;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2118;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2120;
    pANTLR3_COMMON_TOKEN    USER_SYMBOL2122;
    pANTLR3_COMMON_TOKEN    VALUES_SYMBOL2124;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2125;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2127;
    pANTLR3_COMMON_TOKEN    YEAR_SYMBOL2128;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2129;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2131;
    pANTLR3_COMMON_TOKEN    set2132;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2133;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2135;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2137;
    pANTLR3_COMMON_TOKEN    CURDATE_SYMBOL2138;
    pANTLR3_COMMON_TOKEN    CURTIME_SYMBOL2140;
    pANTLR3_COMMON_TOKEN    set2142;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2143;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2145;
    pANTLR3_COMMON_TOKEN    INTERVAL_SYMBOL2146;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2148;
    pANTLR3_COMMON_TOKEN    EXTRACT_SYMBOL2149;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2150;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2152;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2154;
    pANTLR3_COMMON_TOKEN    GET_FORMAT_SYMBOL2155;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2156;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2158;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2160;
    pANTLR3_COMMON_TOKEN    NOW_SYMBOL2161;
    pANTLR3_COMMON_TOKEN    POSITION_SYMBOL2163;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2164;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2166;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2168;
    pANTLR3_COMMON_TOKEN    SYSDATE_SYMBOL2170;
    pANTLR3_COMMON_TOKEN    set2172;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2173;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2175;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2177;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2179;
    pANTLR3_COMMON_TOKEN    UTC_DATE_SYMBOL2180;
    pANTLR3_COMMON_TOKEN    UTC_TIME_SYMBOL2182;
    pANTLR3_COMMON_TOKEN    UTC_TIMESTAMP_SYMBOL2184;
    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2186;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2187;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2189;
    pANTLR3_COMMON_TOKEN    CHARSET_SYMBOL2190;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2191;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2193;
    pANTLR3_COMMON_TOKEN    COALESCE_SYMBOL2194;
    pANTLR3_COMMON_TOKEN    COLLATION_SYMBOL2196;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2197;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2199;
    pANTLR3_COMMON_TOKEN    DATABASE_SYMBOL2200;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL2202;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2203;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2205;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2207;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2209;
    pANTLR3_COMMON_TOKEN    FORMAT_SYMBOL2210;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2211;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2213;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2215;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2217;
    pANTLR3_COMMON_TOKEN    MICROSECOND_SYMBOL2218;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2219;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2221;
    pANTLR3_COMMON_TOKEN    MOD_SYMBOL2222;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2223;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2225;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2227;
    pANTLR3_COMMON_TOKEN    OLD_PASSWORD_SYMBOL2228;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2229;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2231;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL2232;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2233;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2235;
    pANTLR3_COMMON_TOKEN    QUARTER_SYMBOL2236;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2237;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2239;
    pANTLR3_COMMON_TOKEN    REPEAT_SYMBOL2240;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2241;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2243;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2245;
    pANTLR3_COMMON_TOKEN    REPLACE_SYMBOL2246;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2247;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2249;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2251;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2253;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL2254;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2255;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2257;
    pANTLR3_COMMON_TOKEN    ROW_COUNT_SYMBOL2258;
    pANTLR3_COMMON_TOKEN    TRUNCATE_SYMBOL2260;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2261;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2263;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2265;
    pANTLR3_COMMON_TOKEN    WEEK_SYMBOL2266;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2267;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2269;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2271;
    pANTLR3_COMMON_TOKEN    WEIGHT_STRING_SYMBOL2272;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2273;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2275;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2276;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2279;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2280;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2282;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2284;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2286;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2288;
    MySQLParser_expression_list_return expression_list2059;
    #undef	RETURN_TYPE_expression_list2059
    #define	RETURN_TYPE_expression_list2059 MySQLParser_expression_list_return

    MySQLParser_charset_name_return charset_name2061;
    #undef	RETURN_TYPE_charset_name2061
    #define	RETURN_TYPE_charset_name2061 MySQLParser_charset_name_return

    MySQLParser_parentheses_return parentheses2064;
    #undef	RETURN_TYPE_parentheses2064
    #define	RETURN_TYPE_parentheses2064 MySQLParser_parentheses_return

    MySQLParser_expression_return expression2067;
    #undef	RETURN_TYPE_expression2067
    #define	RETURN_TYPE_expression2067 MySQLParser_expression_return

    MySQLParser_expression_return expression2071;
    #undef	RETURN_TYPE_expression2071
    #define	RETURN_TYPE_expression2071 MySQLParser_expression_return

    MySQLParser_expression_return expression2075;
    #undef	RETURN_TYPE_expression2075
    #define	RETURN_TYPE_expression2075 MySQLParser_expression_return

    MySQLParser_expression_return expression2079;
    #undef	RETURN_TYPE_expression2079
    #define	RETURN_TYPE_expression2079 MySQLParser_expression_return

    MySQLParser_expression_return expression2081;
    #undef	RETURN_TYPE_expression2081
    #define	RETURN_TYPE_expression2081 MySQLParser_expression_return

    MySQLParser_expression_return expression2083;
    #undef	RETURN_TYPE_expression2083
    #define	RETURN_TYPE_expression2083 MySQLParser_expression_return

    MySQLParser_expression_return expression2085;
    #undef	RETURN_TYPE_expression2085
    #define	RETURN_TYPE_expression2085 MySQLParser_expression_return

    MySQLParser_expression_return expression2089;
    #undef	RETURN_TYPE_expression2089
    #define	RETURN_TYPE_expression2089 MySQLParser_expression_return

    MySQLParser_expression_return expression2091;
    #undef	RETURN_TYPE_expression2091
    #define	RETURN_TYPE_expression2091 MySQLParser_expression_return

    MySQLParser_expression_return expression2095;
    #undef	RETURN_TYPE_expression2095
    #define	RETURN_TYPE_expression2095 MySQLParser_expression_return

    MySQLParser_expression_return expression2099;
    #undef	RETURN_TYPE_expression2099
    #define	RETURN_TYPE_expression2099 MySQLParser_expression_return

    MySQLParser_expression_return expression2103;
    #undef	RETURN_TYPE_expression2103
    #define	RETURN_TYPE_expression2103 MySQLParser_expression_return

    MySQLParser_expression_return expression2105;
    #undef	RETURN_TYPE_expression2105
    #define	RETURN_TYPE_expression2105 MySQLParser_expression_return

    MySQLParser_expression_return expression2109;
    #undef	RETURN_TYPE_expression2109
    #define	RETURN_TYPE_expression2109 MySQLParser_expression_return

    MySQLParser_expression_return expression2113;
    #undef	RETURN_TYPE_expression2113
    #define	RETURN_TYPE_expression2113 MySQLParser_expression_return

    MySQLParser_expression_return expression2117;
    #undef	RETURN_TYPE_expression2117
    #define	RETURN_TYPE_expression2117 MySQLParser_expression_return

    MySQLParser_expression_return expression2119;
    #undef	RETURN_TYPE_expression2119
    #define	RETURN_TYPE_expression2119 MySQLParser_expression_return

    MySQLParser_trim_function_return trim_function2121;
    #undef	RETURN_TYPE_trim_function2121
    #define	RETURN_TYPE_trim_function2121 MySQLParser_trim_function_return

    MySQLParser_parentheses_return parentheses2123;
    #undef	RETURN_TYPE_parentheses2123
    #define	RETURN_TYPE_parentheses2123 MySQLParser_parentheses_return

    MySQLParser_expression_return expression2126;
    #undef	RETURN_TYPE_expression2126
    #define	RETURN_TYPE_expression2126 MySQLParser_expression_return

    MySQLParser_expression_return expression2130;
    #undef	RETURN_TYPE_expression2130
    #define	RETURN_TYPE_expression2130 MySQLParser_expression_return

    MySQLParser_expression_return expression2134;
    #undef	RETURN_TYPE_expression2134
    #define	RETURN_TYPE_expression2134 MySQLParser_expression_return

    MySQLParser_expression_return expression2136;
    #undef	RETURN_TYPE_expression2136
    #define	RETURN_TYPE_expression2136 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses2139;
    #undef	RETURN_TYPE_parentheses2139
    #define	RETURN_TYPE_parentheses2139 MySQLParser_parentheses_return

    MySQLParser_time_function_parameters_return time_function_parameters2141;
    #undef	RETURN_TYPE_time_function_parameters2141
    #define	RETURN_TYPE_time_function_parameters2141 MySQLParser_time_function_parameters_return

    MySQLParser_expression_return expression2144;
    #undef	RETURN_TYPE_expression2144
    #define	RETURN_TYPE_expression2144 MySQLParser_expression_return

    MySQLParser_interval_return interval2147;
    #undef	RETURN_TYPE_interval2147
    #define	RETURN_TYPE_interval2147 MySQLParser_interval_return

    MySQLParser_interval_unit_return interval_unit2151;
    #undef	RETURN_TYPE_interval_unit2151
    #define	RETURN_TYPE_interval_unit2151 MySQLParser_interval_unit_return

    MySQLParser_expression_return expression2153;
    #undef	RETURN_TYPE_expression2153
    #define	RETURN_TYPE_expression2153 MySQLParser_expression_return

    MySQLParser_date_time_type_return date_time_type2157;
    #undef	RETURN_TYPE_date_time_type2157
    #define	RETURN_TYPE_date_time_type2157 MySQLParser_date_time_type_return

    MySQLParser_expression_return expression2159;
    #undef	RETURN_TYPE_expression2159
    #define	RETURN_TYPE_expression2159 MySQLParser_expression_return

    MySQLParser_time_function_parameters_return time_function_parameters2162;
    #undef	RETURN_TYPE_time_function_parameters2162
    #define	RETURN_TYPE_time_function_parameters2162 MySQLParser_time_function_parameters_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression2165;
    #undef	RETURN_TYPE_bitwise_or_expression2165
    #define	RETURN_TYPE_bitwise_or_expression2165 MySQLParser_bitwise_or_expression_return

    MySQLParser_expression_return expression2167;
    #undef	RETURN_TYPE_expression2167
    #define	RETURN_TYPE_expression2167 MySQLParser_expression_return

    MySQLParser_substring_function_return substring_function2169;
    #undef	RETURN_TYPE_substring_function2169
    #define	RETURN_TYPE_substring_function2169 MySQLParser_substring_function_return

    MySQLParser_time_function_parameters_return time_function_parameters2171;
    #undef	RETURN_TYPE_time_function_parameters2171
    #define	RETURN_TYPE_time_function_parameters2171 MySQLParser_time_function_parameters_return

    MySQLParser_interval_timestamp_unit_return interval_timestamp_unit2174;
    #undef	RETURN_TYPE_interval_timestamp_unit2174
    #define	RETURN_TYPE_interval_timestamp_unit2174 MySQLParser_interval_timestamp_unit_return

    MySQLParser_expression_return expression2176;
    #undef	RETURN_TYPE_expression2176
    #define	RETURN_TYPE_expression2176 MySQLParser_expression_return

    MySQLParser_expression_return expression2178;
    #undef	RETURN_TYPE_expression2178
    #define	RETURN_TYPE_expression2178 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses2181;
    #undef	RETURN_TYPE_parentheses2181
    #define	RETURN_TYPE_parentheses2181 MySQLParser_parentheses_return

    MySQLParser_time_function_parameters_return time_function_parameters2183;
    #undef	RETURN_TYPE_time_function_parameters2183
    #define	RETURN_TYPE_time_function_parameters2183 MySQLParser_time_function_parameters_return

    MySQLParser_time_function_parameters_return time_function_parameters2185;
    #undef	RETURN_TYPE_time_function_parameters2185
    #define	RETURN_TYPE_time_function_parameters2185 MySQLParser_time_function_parameters_return

    MySQLParser_expression_return expression2188;
    #undef	RETURN_TYPE_expression2188
    #define	RETURN_TYPE_expression2188 MySQLParser_expression_return

    MySQLParser_expression_return expression2192;
    #undef	RETURN_TYPE_expression2192
    #define	RETURN_TYPE_expression2192 MySQLParser_expression_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2195;
    #undef	RETURN_TYPE_expression_list_with_parentheses2195
    #define	RETURN_TYPE_expression_list_with_parentheses2195 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression2198;
    #undef	RETURN_TYPE_expression2198
    #define	RETURN_TYPE_expression2198 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses2201;
    #undef	RETURN_TYPE_parentheses2201
    #define	RETURN_TYPE_parentheses2201 MySQLParser_parentheses_return

    MySQLParser_expression_return expression2204;
    #undef	RETURN_TYPE_expression2204
    #define	RETURN_TYPE_expression2204 MySQLParser_expression_return

    MySQLParser_expression_return expression2206;
    #undef	RETURN_TYPE_expression2206
    #define	RETURN_TYPE_expression2206 MySQLParser_expression_return

    MySQLParser_expression_return expression2208;
    #undef	RETURN_TYPE_expression2208
    #define	RETURN_TYPE_expression2208 MySQLParser_expression_return

    MySQLParser_expression_return expression2212;
    #undef	RETURN_TYPE_expression2212
    #define	RETURN_TYPE_expression2212 MySQLParser_expression_return

    MySQLParser_expression_return expression2214;
    #undef	RETURN_TYPE_expression2214
    #define	RETURN_TYPE_expression2214 MySQLParser_expression_return

    MySQLParser_expression_return expression2216;
    #undef	RETURN_TYPE_expression2216
    #define	RETURN_TYPE_expression2216 MySQLParser_expression_return

    MySQLParser_expression_return expression2220;
    #undef	RETURN_TYPE_expression2220
    #define	RETURN_TYPE_expression2220 MySQLParser_expression_return

    MySQLParser_expression_return expression2224;
    #undef	RETURN_TYPE_expression2224
    #define	RETURN_TYPE_expression2224 MySQLParser_expression_return

    MySQLParser_expression_return expression2226;
    #undef	RETURN_TYPE_expression2226
    #define	RETURN_TYPE_expression2226 MySQLParser_expression_return

    MySQLParser_string_literal_return string_literal2230;
    #undef	RETURN_TYPE_string_literal2230
    #define	RETURN_TYPE_string_literal2230 MySQLParser_string_literal_return

    MySQLParser_expression_return expression2234;
    #undef	RETURN_TYPE_expression2234
    #define	RETURN_TYPE_expression2234 MySQLParser_expression_return

    MySQLParser_expression_return expression2238;
    #undef	RETURN_TYPE_expression2238
    #define	RETURN_TYPE_expression2238 MySQLParser_expression_return

    MySQLParser_expression_return expression2242;
    #undef	RETURN_TYPE_expression2242
    #define	RETURN_TYPE_expression2242 MySQLParser_expression_return

    MySQLParser_expression_return expression2244;
    #undef	RETURN_TYPE_expression2244
    #define	RETURN_TYPE_expression2244 MySQLParser_expression_return

    MySQLParser_expression_return expression2248;
    #undef	RETURN_TYPE_expression2248
    #define	RETURN_TYPE_expression2248 MySQLParser_expression_return

    MySQLParser_expression_return expression2250;
    #undef	RETURN_TYPE_expression2250
    #define	RETURN_TYPE_expression2250 MySQLParser_expression_return

    MySQLParser_expression_return expression2252;
    #undef	RETURN_TYPE_expression2252
    #define	RETURN_TYPE_expression2252 MySQLParser_expression_return

    MySQLParser_expression_return expression2256;
    #undef	RETURN_TYPE_expression2256
    #define	RETURN_TYPE_expression2256 MySQLParser_expression_return

    MySQLParser_parentheses_return parentheses2259;
    #undef	RETURN_TYPE_parentheses2259
    #define	RETURN_TYPE_parentheses2259 MySQLParser_parentheses_return

    MySQLParser_expression_return expression2262;
    #undef	RETURN_TYPE_expression2262
    #define	RETURN_TYPE_expression2262 MySQLParser_expression_return

    MySQLParser_expression_return expression2264;
    #undef	RETURN_TYPE_expression2264
    #define	RETURN_TYPE_expression2264 MySQLParser_expression_return

    MySQLParser_expression_return expression2268;
    #undef	RETURN_TYPE_expression2268
    #define	RETURN_TYPE_expression2268 MySQLParser_expression_return

    MySQLParser_expression_return expression2270;
    #undef	RETURN_TYPE_expression2270
    #define	RETURN_TYPE_expression2270 MySQLParser_expression_return

    MySQLParser_expression_return expression2274;
    #undef	RETURN_TYPE_expression2274
    #define	RETURN_TYPE_expression2274 MySQLParser_expression_return

    MySQLParser_field_length_return field_length2277;
    #undef	RETURN_TYPE_field_length2277
    #define	RETURN_TYPE_field_length2277 MySQLParser_field_length_return

    MySQLParser_weight_string_levels_return weight_string_levels2278;
    #undef	RETURN_TYPE_weight_string_levels2278
    #define	RETURN_TYPE_weight_string_levels2278 MySQLParser_weight_string_levels_return

    MySQLParser_field_length_return field_length2281;
    #undef	RETURN_TYPE_field_length2281
    #define	RETURN_TYPE_field_length2281 MySQLParser_field_length_return

    MySQLParser_ulong_number_return ulong_number2283;
    #undef	RETURN_TYPE_ulong_number2283
    #define	RETURN_TYPE_ulong_number2283 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number2285;
    #undef	RETURN_TYPE_ulong_number2285
    #define	RETURN_TYPE_ulong_number2285 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number2287;
    #undef	RETURN_TYPE_ulong_number2287
    #define	RETURN_TYPE_ulong_number2287 MySQLParser_ulong_number_return

    MySQLParser_geometry_function_return geometry_function2289;
    #undef	RETURN_TYPE_geometry_function2289
    #define	RETURN_TYPE_geometry_function2289 MySQLParser_geometry_function_return

    MySQLParser_aggregate_function_return aggregate_function2290;
    #undef	RETURN_TYPE_aggregate_function2290
    #define	RETURN_TYPE_aggregate_function2290 MySQLParser_aggregate_function_return

    pANTLR3_BASE_TREE CHAR_SYMBOL2057_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2058_tree;
    pANTLR3_BASE_TREE USING_SYMBOL2060_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2062_tree;
    pANTLR3_BASE_TREE CURRENT_USER_SYMBOL2063_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL2065_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2066_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2068_tree;
    pANTLR3_BASE_TREE DAY_SYMBOL2069_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2070_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2072_tree;
    pANTLR3_BASE_TREE HOUR_SYMBOL2073_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2074_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2076_tree;
    pANTLR3_BASE_TREE INSERT_SYMBOL2077_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2078_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2080_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2082_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2084_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2086_tree;
    pANTLR3_BASE_TREE LEFT_SYMBOL2087_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2088_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2090_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2092_tree;
    pANTLR3_BASE_TREE MINUTE_SYMBOL2093_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2094_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2096_tree;
    pANTLR3_BASE_TREE MONTH_SYMBOL2097_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2098_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2100_tree;
    pANTLR3_BASE_TREE RIGHT_SYMBOL2101_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2102_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2104_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2106_tree;
    pANTLR3_BASE_TREE SECOND_SYMBOL2107_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2108_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2110_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2111_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2112_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2114_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL2115_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2116_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2118_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2120_tree;
    pANTLR3_BASE_TREE USER_SYMBOL2122_tree;
    pANTLR3_BASE_TREE VALUES_SYMBOL2124_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2125_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2127_tree;
    pANTLR3_BASE_TREE YEAR_SYMBOL2128_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2129_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2131_tree;
    pANTLR3_BASE_TREE set2132_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2133_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2135_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2137_tree;
    pANTLR3_BASE_TREE CURDATE_SYMBOL2138_tree;
    pANTLR3_BASE_TREE CURTIME_SYMBOL2140_tree;
    pANTLR3_BASE_TREE set2142_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2143_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2145_tree;
    pANTLR3_BASE_TREE INTERVAL_SYMBOL2146_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2148_tree;
    pANTLR3_BASE_TREE EXTRACT_SYMBOL2149_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2150_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2152_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2154_tree;
    pANTLR3_BASE_TREE GET_FORMAT_SYMBOL2155_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2156_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2158_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2160_tree;
    pANTLR3_BASE_TREE NOW_SYMBOL2161_tree;
    pANTLR3_BASE_TREE POSITION_SYMBOL2163_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2164_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2166_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2168_tree;
    pANTLR3_BASE_TREE SYSDATE_SYMBOL2170_tree;
    pANTLR3_BASE_TREE set2172_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2173_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2175_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2177_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2179_tree;
    pANTLR3_BASE_TREE UTC_DATE_SYMBOL2180_tree;
    pANTLR3_BASE_TREE UTC_TIME_SYMBOL2182_tree;
    pANTLR3_BASE_TREE UTC_TIMESTAMP_SYMBOL2184_tree;
    pANTLR3_BASE_TREE ASCII_SYMBOL2186_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2187_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2189_tree;
    pANTLR3_BASE_TREE CHARSET_SYMBOL2190_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2191_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2193_tree;
    pANTLR3_BASE_TREE COALESCE_SYMBOL2194_tree;
    pANTLR3_BASE_TREE COLLATION_SYMBOL2196_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2197_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2199_tree;
    pANTLR3_BASE_TREE DATABASE_SYMBOL2200_tree;
    pANTLR3_BASE_TREE IF_SYMBOL2202_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2203_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2205_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2207_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2209_tree;
    pANTLR3_BASE_TREE FORMAT_SYMBOL2210_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2211_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2213_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2215_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2217_tree;
    pANTLR3_BASE_TREE MICROSECOND_SYMBOL2218_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2219_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2221_tree;
    pANTLR3_BASE_TREE MOD_SYMBOL2222_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2223_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2225_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2227_tree;
    pANTLR3_BASE_TREE OLD_PASSWORD_SYMBOL2228_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2229_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2231_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL2232_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2233_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2235_tree;
    pANTLR3_BASE_TREE QUARTER_SYMBOL2236_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2237_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2239_tree;
    pANTLR3_BASE_TREE REPEAT_SYMBOL2240_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2241_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2243_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2245_tree;
    pANTLR3_BASE_TREE REPLACE_SYMBOL2246_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2247_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2249_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2251_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2253_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL2254_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2255_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2257_tree;
    pANTLR3_BASE_TREE ROW_COUNT_SYMBOL2258_tree;
    pANTLR3_BASE_TREE TRUNCATE_SYMBOL2260_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2261_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2263_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2265_tree;
    pANTLR3_BASE_TREE WEEK_SYMBOL2266_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2267_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2269_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2271_tree;
    pANTLR3_BASE_TREE WEIGHT_STRING_SYMBOL2272_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2273_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2275_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2276_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2279_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2280_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2282_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2284_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2286_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2288_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL2057       = NULL;
    OPEN_PAR_SYMBOL2058       = NULL;
    USING_SYMBOL2060       = NULL;
    CLOSE_PAR_SYMBOL2062       = NULL;
    CURRENT_USER_SYMBOL2063       = NULL;
    DATE_SYMBOL2065       = NULL;
    OPEN_PAR_SYMBOL2066       = NULL;
    CLOSE_PAR_SYMBOL2068       = NULL;
    DAY_SYMBOL2069       = NULL;
    OPEN_PAR_SYMBOL2070       = NULL;
    CLOSE_PAR_SYMBOL2072       = NULL;
    HOUR_SYMBOL2073       = NULL;
    OPEN_PAR_SYMBOL2074       = NULL;
    CLOSE_PAR_SYMBOL2076       = NULL;
    INSERT_SYMBOL2077       = NULL;
    OPEN_PAR_SYMBOL2078       = NULL;
    COMMA_SYMBOL2080       = NULL;
    COMMA_SYMBOL2082       = NULL;
    COMMA_SYMBOL2084       = NULL;
    CLOSE_PAR_SYMBOL2086       = NULL;
    LEFT_SYMBOL2087       = NULL;
    OPEN_PAR_SYMBOL2088       = NULL;
    COMMA_SYMBOL2090       = NULL;
    CLOSE_PAR_SYMBOL2092       = NULL;
    MINUTE_SYMBOL2093       = NULL;
    OPEN_PAR_SYMBOL2094       = NULL;
    CLOSE_PAR_SYMBOL2096       = NULL;
    MONTH_SYMBOL2097       = NULL;
    OPEN_PAR_SYMBOL2098       = NULL;
    CLOSE_PAR_SYMBOL2100       = NULL;
    RIGHT_SYMBOL2101       = NULL;
    OPEN_PAR_SYMBOL2102       = NULL;
    COMMA_SYMBOL2104       = NULL;
    CLOSE_PAR_SYMBOL2106       = NULL;
    SECOND_SYMBOL2107       = NULL;
    OPEN_PAR_SYMBOL2108       = NULL;
    CLOSE_PAR_SYMBOL2110       = NULL;
    TIME_SYMBOL2111       = NULL;
    OPEN_PAR_SYMBOL2112       = NULL;
    CLOSE_PAR_SYMBOL2114       = NULL;
    TIMESTAMP_SYMBOL2115       = NULL;
    OPEN_PAR_SYMBOL2116       = NULL;
    COMMA_SYMBOL2118       = NULL;
    CLOSE_PAR_SYMBOL2120       = NULL;
    USER_SYMBOL2122       = NULL;
    VALUES_SYMBOL2124       = NULL;
    OPEN_PAR_SYMBOL2125       = NULL;
    CLOSE_PAR_SYMBOL2127       = NULL;
    YEAR_SYMBOL2128       = NULL;
    OPEN_PAR_SYMBOL2129       = NULL;
    CLOSE_PAR_SYMBOL2131       = NULL;
    set2132       = NULL;
    OPEN_PAR_SYMBOL2133       = NULL;
    COMMA_SYMBOL2135       = NULL;
    CLOSE_PAR_SYMBOL2137       = NULL;
    CURDATE_SYMBOL2138       = NULL;
    CURTIME_SYMBOL2140       = NULL;
    set2142       = NULL;
    OPEN_PAR_SYMBOL2143       = NULL;
    COMMA_SYMBOL2145       = NULL;
    INTERVAL_SYMBOL2146       = NULL;
    CLOSE_PAR_SYMBOL2148       = NULL;
    EXTRACT_SYMBOL2149       = NULL;
    OPEN_PAR_SYMBOL2150       = NULL;
    FROM_SYMBOL2152       = NULL;
    CLOSE_PAR_SYMBOL2154       = NULL;
    GET_FORMAT_SYMBOL2155       = NULL;
    OPEN_PAR_SYMBOL2156       = NULL;
    COMMA_SYMBOL2158       = NULL;
    CLOSE_PAR_SYMBOL2160       = NULL;
    NOW_SYMBOL2161       = NULL;
    POSITION_SYMBOL2163       = NULL;
    OPEN_PAR_SYMBOL2164       = NULL;
    IN_SYMBOL2166       = NULL;
    CLOSE_PAR_SYMBOL2168       = NULL;
    SYSDATE_SYMBOL2170       = NULL;
    set2172       = NULL;
    OPEN_PAR_SYMBOL2173       = NULL;
    COMMA_SYMBOL2175       = NULL;
    COMMA_SYMBOL2177       = NULL;
    CLOSE_PAR_SYMBOL2179       = NULL;
    UTC_DATE_SYMBOL2180       = NULL;
    UTC_TIME_SYMBOL2182       = NULL;
    UTC_TIMESTAMP_SYMBOL2184       = NULL;
    ASCII_SYMBOL2186       = NULL;
    OPEN_PAR_SYMBOL2187       = NULL;
    CLOSE_PAR_SYMBOL2189       = NULL;
    CHARSET_SYMBOL2190       = NULL;
    OPEN_PAR_SYMBOL2191       = NULL;
    CLOSE_PAR_SYMBOL2193       = NULL;
    COALESCE_SYMBOL2194       = NULL;
    COLLATION_SYMBOL2196       = NULL;
    OPEN_PAR_SYMBOL2197       = NULL;
    CLOSE_PAR_SYMBOL2199       = NULL;
    DATABASE_SYMBOL2200       = NULL;
    IF_SYMBOL2202       = NULL;
    OPEN_PAR_SYMBOL2203       = NULL;
    COMMA_SYMBOL2205       = NULL;
    COMMA_SYMBOL2207       = NULL;
    CLOSE_PAR_SYMBOL2209       = NULL;
    FORMAT_SYMBOL2210       = NULL;
    OPEN_PAR_SYMBOL2211       = NULL;
    COMMA_SYMBOL2213       = NULL;
    COMMA_SYMBOL2215       = NULL;
    CLOSE_PAR_SYMBOL2217       = NULL;
    MICROSECOND_SYMBOL2218       = NULL;
    OPEN_PAR_SYMBOL2219       = NULL;
    CLOSE_PAR_SYMBOL2221       = NULL;
    MOD_SYMBOL2222       = NULL;
    OPEN_PAR_SYMBOL2223       = NULL;
    COMMA_SYMBOL2225       = NULL;
    CLOSE_PAR_SYMBOL2227       = NULL;
    OLD_PASSWORD_SYMBOL2228       = NULL;
    OPEN_PAR_SYMBOL2229       = NULL;
    CLOSE_PAR_SYMBOL2231       = NULL;
    PASSWORD_SYMBOL2232       = NULL;
    OPEN_PAR_SYMBOL2233       = NULL;
    CLOSE_PAR_SYMBOL2235       = NULL;
    QUARTER_SYMBOL2236       = NULL;
    OPEN_PAR_SYMBOL2237       = NULL;
    CLOSE_PAR_SYMBOL2239       = NULL;
    REPEAT_SYMBOL2240       = NULL;
    OPEN_PAR_SYMBOL2241       = NULL;
    COMMA_SYMBOL2243       = NULL;
    CLOSE_PAR_SYMBOL2245       = NULL;
    REPLACE_SYMBOL2246       = NULL;
    OPEN_PAR_SYMBOL2247       = NULL;
    COMMA_SYMBOL2249       = NULL;
    COMMA_SYMBOL2251       = NULL;
    CLOSE_PAR_SYMBOL2253       = NULL;
    REVERSE_SYMBOL2254       = NULL;
    OPEN_PAR_SYMBOL2255       = NULL;
    CLOSE_PAR_SYMBOL2257       = NULL;
    ROW_COUNT_SYMBOL2258       = NULL;
    TRUNCATE_SYMBOL2260       = NULL;
    OPEN_PAR_SYMBOL2261       = NULL;
    COMMA_SYMBOL2263       = NULL;
    CLOSE_PAR_SYMBOL2265       = NULL;
    WEEK_SYMBOL2266       = NULL;
    OPEN_PAR_SYMBOL2267       = NULL;
    COMMA_SYMBOL2269       = NULL;
    CLOSE_PAR_SYMBOL2271       = NULL;
    WEIGHT_STRING_SYMBOL2272       = NULL;
    OPEN_PAR_SYMBOL2273       = NULL;
    AS_SYMBOL2275       = NULL;
    CHAR_SYMBOL2276       = NULL;
    AS_SYMBOL2279       = NULL;
    BINARY_SYMBOL2280       = NULL;
    COMMA_SYMBOL2282       = NULL;
    COMMA_SYMBOL2284       = NULL;
    COMMA_SYMBOL2286       = NULL;
    CLOSE_PAR_SYMBOL2288       = NULL;
    expression_list2059.tree = NULL;

    charset_name2061.tree = NULL;

    parentheses2064.tree = NULL;

    expression2067.tree = NULL;

    expression2071.tree = NULL;

    expression2075.tree = NULL;

    expression2079.tree = NULL;

    expression2081.tree = NULL;

    expression2083.tree = NULL;

    expression2085.tree = NULL;

    expression2089.tree = NULL;

    expression2091.tree = NULL;

    expression2095.tree = NULL;

    expression2099.tree = NULL;

    expression2103.tree = NULL;

    expression2105.tree = NULL;

    expression2109.tree = NULL;

    expression2113.tree = NULL;

    expression2117.tree = NULL;

    expression2119.tree = NULL;

    trim_function2121.tree = NULL;

    parentheses2123.tree = NULL;

    expression2126.tree = NULL;

    expression2130.tree = NULL;

    expression2134.tree = NULL;

    expression2136.tree = NULL;

    parentheses2139.tree = NULL;

    time_function_parameters2141.tree = NULL;

    expression2144.tree = NULL;

    interval2147.tree = NULL;

    interval_unit2151.tree = NULL;

    expression2153.tree = NULL;

    date_time_type2157.tree = NULL;

    expression2159.tree = NULL;

    time_function_parameters2162.tree = NULL;

    bitwise_or_expression2165.tree = NULL;

    expression2167.tree = NULL;

    substring_function2169.tree = NULL;

    time_function_parameters2171.tree = NULL;

    interval_timestamp_unit2174.tree = NULL;

    expression2176.tree = NULL;

    expression2178.tree = NULL;

    parentheses2181.tree = NULL;

    time_function_parameters2183.tree = NULL;

    time_function_parameters2185.tree = NULL;

    expression2188.tree = NULL;

    expression2192.tree = NULL;

    expression_list_with_parentheses2195.tree = NULL;

    expression2198.tree = NULL;

    parentheses2201.tree = NULL;

    expression2204.tree = NULL;

    expression2206.tree = NULL;

    expression2208.tree = NULL;

    expression2212.tree = NULL;

    expression2214.tree = NULL;

    expression2216.tree = NULL;

    expression2220.tree = NULL;

    expression2224.tree = NULL;

    expression2226.tree = NULL;

    string_literal2230.tree = NULL;

    expression2234.tree = NULL;

    expression2238.tree = NULL;

    expression2242.tree = NULL;

    expression2244.tree = NULL;

    expression2248.tree = NULL;

    expression2250.tree = NULL;

    expression2252.tree = NULL;

    expression2256.tree = NULL;

    parentheses2259.tree = NULL;

    expression2262.tree = NULL;

    expression2264.tree = NULL;

    expression2268.tree = NULL;

    expression2270.tree = NULL;

    expression2274.tree = NULL;

    field_length2277.tree = NULL;

    weight_string_levels2278.tree = NULL;

    field_length2281.tree = NULL;

    ulong_number2283.tree = NULL;

    ulong_number2285.tree = NULL;

    ulong_number2287.tree = NULL;

    geometry_function2289.tree = NULL;

    aggregate_function2290.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL2057_tree   = NULL;
    OPEN_PAR_SYMBOL2058_tree   = NULL;
    USING_SYMBOL2060_tree   = NULL;
    CLOSE_PAR_SYMBOL2062_tree   = NULL;
    CURRENT_USER_SYMBOL2063_tree   = NULL;
    DATE_SYMBOL2065_tree   = NULL;
    OPEN_PAR_SYMBOL2066_tree   = NULL;
    CLOSE_PAR_SYMBOL2068_tree   = NULL;
    DAY_SYMBOL2069_tree   = NULL;
    OPEN_PAR_SYMBOL2070_tree   = NULL;
    CLOSE_PAR_SYMBOL2072_tree   = NULL;
    HOUR_SYMBOL2073_tree   = NULL;
    OPEN_PAR_SYMBOL2074_tree   = NULL;
    CLOSE_PAR_SYMBOL2076_tree   = NULL;
    INSERT_SYMBOL2077_tree   = NULL;
    OPEN_PAR_SYMBOL2078_tree   = NULL;
    COMMA_SYMBOL2080_tree   = NULL;
    COMMA_SYMBOL2082_tree   = NULL;
    COMMA_SYMBOL2084_tree   = NULL;
    CLOSE_PAR_SYMBOL2086_tree   = NULL;
    LEFT_SYMBOL2087_tree   = NULL;
    OPEN_PAR_SYMBOL2088_tree   = NULL;
    COMMA_SYMBOL2090_tree   = NULL;
    CLOSE_PAR_SYMBOL2092_tree   = NULL;
    MINUTE_SYMBOL2093_tree   = NULL;
    OPEN_PAR_SYMBOL2094_tree   = NULL;
    CLOSE_PAR_SYMBOL2096_tree   = NULL;
    MONTH_SYMBOL2097_tree   = NULL;
    OPEN_PAR_SYMBOL2098_tree   = NULL;
    CLOSE_PAR_SYMBOL2100_tree   = NULL;
    RIGHT_SYMBOL2101_tree   = NULL;
    OPEN_PAR_SYMBOL2102_tree   = NULL;
    COMMA_SYMBOL2104_tree   = NULL;
    CLOSE_PAR_SYMBOL2106_tree   = NULL;
    SECOND_SYMBOL2107_tree   = NULL;
    OPEN_PAR_SYMBOL2108_tree   = NULL;
    CLOSE_PAR_SYMBOL2110_tree   = NULL;
    TIME_SYMBOL2111_tree   = NULL;
    OPEN_PAR_SYMBOL2112_tree   = NULL;
    CLOSE_PAR_SYMBOL2114_tree   = NULL;
    TIMESTAMP_SYMBOL2115_tree   = NULL;
    OPEN_PAR_SYMBOL2116_tree   = NULL;
    COMMA_SYMBOL2118_tree   = NULL;
    CLOSE_PAR_SYMBOL2120_tree   = NULL;
    USER_SYMBOL2122_tree   = NULL;
    VALUES_SYMBOL2124_tree   = NULL;
    OPEN_PAR_SYMBOL2125_tree   = NULL;
    CLOSE_PAR_SYMBOL2127_tree   = NULL;
    YEAR_SYMBOL2128_tree   = NULL;
    OPEN_PAR_SYMBOL2129_tree   = NULL;
    CLOSE_PAR_SYMBOL2131_tree   = NULL;
    set2132_tree   = NULL;
    OPEN_PAR_SYMBOL2133_tree   = NULL;
    COMMA_SYMBOL2135_tree   = NULL;
    CLOSE_PAR_SYMBOL2137_tree   = NULL;
    CURDATE_SYMBOL2138_tree   = NULL;
    CURTIME_SYMBOL2140_tree   = NULL;
    set2142_tree   = NULL;
    OPEN_PAR_SYMBOL2143_tree   = NULL;
    COMMA_SYMBOL2145_tree   = NULL;
    INTERVAL_SYMBOL2146_tree   = NULL;
    CLOSE_PAR_SYMBOL2148_tree   = NULL;
    EXTRACT_SYMBOL2149_tree   = NULL;
    OPEN_PAR_SYMBOL2150_tree   = NULL;
    FROM_SYMBOL2152_tree   = NULL;
    CLOSE_PAR_SYMBOL2154_tree   = NULL;
    GET_FORMAT_SYMBOL2155_tree   = NULL;
    OPEN_PAR_SYMBOL2156_tree   = NULL;
    COMMA_SYMBOL2158_tree   = NULL;
    CLOSE_PAR_SYMBOL2160_tree   = NULL;
    NOW_SYMBOL2161_tree   = NULL;
    POSITION_SYMBOL2163_tree   = NULL;
    OPEN_PAR_SYMBOL2164_tree   = NULL;
    IN_SYMBOL2166_tree   = NULL;
    CLOSE_PAR_SYMBOL2168_tree   = NULL;
    SYSDATE_SYMBOL2170_tree   = NULL;
    set2172_tree   = NULL;
    OPEN_PAR_SYMBOL2173_tree   = NULL;
    COMMA_SYMBOL2175_tree   = NULL;
    COMMA_SYMBOL2177_tree   = NULL;
    CLOSE_PAR_SYMBOL2179_tree   = NULL;
    UTC_DATE_SYMBOL2180_tree   = NULL;
    UTC_TIME_SYMBOL2182_tree   = NULL;
    UTC_TIMESTAMP_SYMBOL2184_tree   = NULL;
    ASCII_SYMBOL2186_tree   = NULL;
    OPEN_PAR_SYMBOL2187_tree   = NULL;
    CLOSE_PAR_SYMBOL2189_tree   = NULL;
    CHARSET_SYMBOL2190_tree   = NULL;
    OPEN_PAR_SYMBOL2191_tree   = NULL;
    CLOSE_PAR_SYMBOL2193_tree   = NULL;
    COALESCE_SYMBOL2194_tree   = NULL;
    COLLATION_SYMBOL2196_tree   = NULL;
    OPEN_PAR_SYMBOL2197_tree   = NULL;
    CLOSE_PAR_SYMBOL2199_tree   = NULL;
    DATABASE_SYMBOL2200_tree   = NULL;
    IF_SYMBOL2202_tree   = NULL;
    OPEN_PAR_SYMBOL2203_tree   = NULL;
    COMMA_SYMBOL2205_tree   = NULL;
    COMMA_SYMBOL2207_tree   = NULL;
    CLOSE_PAR_SYMBOL2209_tree   = NULL;
    FORMAT_SYMBOL2210_tree   = NULL;
    OPEN_PAR_SYMBOL2211_tree   = NULL;
    COMMA_SYMBOL2213_tree   = NULL;
    COMMA_SYMBOL2215_tree   = NULL;
    CLOSE_PAR_SYMBOL2217_tree   = NULL;
    MICROSECOND_SYMBOL2218_tree   = NULL;
    OPEN_PAR_SYMBOL2219_tree   = NULL;
    CLOSE_PAR_SYMBOL2221_tree   = NULL;
    MOD_SYMBOL2222_tree   = NULL;
    OPEN_PAR_SYMBOL2223_tree   = NULL;
    COMMA_SYMBOL2225_tree   = NULL;
    CLOSE_PAR_SYMBOL2227_tree   = NULL;
    OLD_PASSWORD_SYMBOL2228_tree   = NULL;
    OPEN_PAR_SYMBOL2229_tree   = NULL;
    CLOSE_PAR_SYMBOL2231_tree   = NULL;
    PASSWORD_SYMBOL2232_tree   = NULL;
    OPEN_PAR_SYMBOL2233_tree   = NULL;
    CLOSE_PAR_SYMBOL2235_tree   = NULL;
    QUARTER_SYMBOL2236_tree   = NULL;
    OPEN_PAR_SYMBOL2237_tree   = NULL;
    CLOSE_PAR_SYMBOL2239_tree   = NULL;
    REPEAT_SYMBOL2240_tree   = NULL;
    OPEN_PAR_SYMBOL2241_tree   = NULL;
    COMMA_SYMBOL2243_tree   = NULL;
    CLOSE_PAR_SYMBOL2245_tree   = NULL;
    REPLACE_SYMBOL2246_tree   = NULL;
    OPEN_PAR_SYMBOL2247_tree   = NULL;
    COMMA_SYMBOL2249_tree   = NULL;
    COMMA_SYMBOL2251_tree   = NULL;
    CLOSE_PAR_SYMBOL2253_tree   = NULL;
    REVERSE_SYMBOL2254_tree   = NULL;
    OPEN_PAR_SYMBOL2255_tree   = NULL;
    CLOSE_PAR_SYMBOL2257_tree   = NULL;
    ROW_COUNT_SYMBOL2258_tree   = NULL;
    TRUNCATE_SYMBOL2260_tree   = NULL;
    OPEN_PAR_SYMBOL2261_tree   = NULL;
    COMMA_SYMBOL2263_tree   = NULL;
    CLOSE_PAR_SYMBOL2265_tree   = NULL;
    WEEK_SYMBOL2266_tree   = NULL;
    OPEN_PAR_SYMBOL2267_tree   = NULL;
    COMMA_SYMBOL2269_tree   = NULL;
    CLOSE_PAR_SYMBOL2271_tree   = NULL;
    WEIGHT_STRING_SYMBOL2272_tree   = NULL;
    OPEN_PAR_SYMBOL2273_tree   = NULL;
    AS_SYMBOL2275_tree   = NULL;
    CHAR_SYMBOL2276_tree   = NULL;
    AS_SYMBOL2279_tree   = NULL;
    BINARY_SYMBOL2280_tree   = NULL;
    COMMA_SYMBOL2282_tree   = NULL;
    COMMA_SYMBOL2284_tree   = NULL;
    COMMA_SYMBOL2286_tree   = NULL;
    CLOSE_PAR_SYMBOL2288_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2236:33: ( 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 expression 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 expression 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 string_literal 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 ulong_number COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number ) CLOSE_PAR_SYMBOL | geometry_function | aggregate_function )

            ANTLR3_UINT32 alt655;

            alt655=52;

            {
                int LA655_0 = LA(1);
                if ( (LA655_0 == CHAR_SYMBOL))
                {
                    alt655=1;
                }
                else if ( (LA655_0 == CURRENT_USER_SYMBOL))
                {
                    alt655=2;
                }
                else if ( (LA655_0 == DATE_SYMBOL))
                {
                    alt655=3;
                }
                else if ( (LA655_0 == DAY_SYMBOL))
                {
                    alt655=4;
                }
                else if ( (LA655_0 == HOUR_SYMBOL))
                {
                    alt655=5;
                }
                else if ( (LA655_0 == INSERT_SYMBOL))
                {
                    alt655=6;
                }
                else if ( (LA655_0 == LEFT_SYMBOL))
                {
                    alt655=7;
                }
                else if ( (LA655_0 == MINUTE_SYMBOL))
                {
                    alt655=8;
                }
                else if ( (LA655_0 == MONTH_SYMBOL))
                {
                    alt655=9;
                }
                else if ( (LA655_0 == RIGHT_SYMBOL))
                {
                    alt655=10;
                }
                else if ( (LA655_0 == SECOND_SYMBOL))
                {
                    alt655=11;
                }
                else if ( (LA655_0 == TIME_SYMBOL))
                {
                    alt655=12;
                }
                else if ( (LA655_0 == TIMESTAMP_SYMBOL))
                {
                    alt655=13;
                }
                else if ( (LA655_0 == TRIM_SYMBOL))
                {
                    alt655=14;
                }
                else if ( (LA655_0 == USER_SYMBOL))
                {
                    alt655=15;
                }
                else if ( (LA655_0 == VALUES_SYMBOL))
                {
                    alt655=16;
                }
                else if ( (LA655_0 == YEAR_SYMBOL))
                {
                    alt655=17;
                }
                else if ( (LA655_0 == ADDDATE_SYMBOL || LA655_0 == SUBDATE_SYMBOL))
                {
                    alt655=18;
                }
                else if ( (LA655_0 == CURDATE_SYMBOL))
                {
                    alt655=19;
                }
                else if ( (LA655_0 == CURTIME_SYMBOL))
                {
                    alt655=20;
                }
                else if ( (LA655_0 == DATE_ADD_SYMBOL || LA655_0 == DATE_SUB_SYMBOL))
                {
                    alt655=21;
                }
                else if ( (LA655_0 == EXTRACT_SYMBOL))
                {
                    alt655=22;
                }
                else if ( (LA655_0 == GET_FORMAT_SYMBOL))
                {
                    alt655=23;
                }
                else if ( (LA655_0 == NOW_SYMBOL))
                {
                    alt655=24;
                }
                else if ( (LA655_0 == POSITION_SYMBOL))
                {
                    alt655=25;
                }
                else if ( (LA655_0 == SUBSTRING_SYMBOL))
                {
                    alt655=26;
                }
                else if ( (LA655_0 == SYSDATE_SYMBOL))
                {
                    alt655=27;
                }
                else if ( (((LA655_0 >= TIMESTAMP_ADD_SYMBOL) && (LA655_0 <= TIMESTAMP_DIFF_SYMBOL))))
                {
                    alt655=28;
                }
                else if ( (LA655_0 == UTC_DATE_SYMBOL))
                {
                    alt655=29;
                }
                else if ( (LA655_0 == UTC_TIME_SYMBOL))
                {
                    alt655=30;
                }
                else if ( (LA655_0 == UTC_TIMESTAMP_SYMBOL))
                {
                    alt655=31;
                }
                else if ( (LA655_0 == ASCII_SYMBOL))
                {
                    alt655=32;
                }
                else if ( (LA655_0 == CHARSET_SYMBOL))
                {
                    alt655=33;
                }
                else if ( (LA655_0 == COALESCE_SYMBOL))
                {
                    alt655=34;
                }
                else if ( (LA655_0 == COLLATION_SYMBOL))
                {
                    alt655=35;
                }
                else if ( (LA655_0 == DATABASE_SYMBOL))
                {
                    alt655=36;
                }
                else if ( (LA655_0 == IF_SYMBOL))
                {
                    alt655=37;
                }
                else if ( (LA655_0 == FORMAT_SYMBOL))
                {
                    alt655=38;
                }
                else if ( (LA655_0 == MICROSECOND_SYMBOL))
                {
                    alt655=39;
                }
                else if ( (LA655_0 == MOD_SYMBOL))
                {
                    alt655=40;
                }
                else if ( (LA655_0 == OLD_PASSWORD_SYMBOL))
                {
                    alt655=41;
                }
                else if ( (LA655_0 == PASSWORD_SYMBOL))
                {
                    alt655=42;
                }
                else if ( (LA655_0 == QUARTER_SYMBOL))
                {
                    alt655=43;
                }
                else if ( (LA655_0 == REPEAT_SYMBOL))
                {
                    alt655=44;
                }
                else if ( (LA655_0 == REPLACE_SYMBOL))
                {
                    alt655=45;
                }
                else if ( (LA655_0 == REVERSE_SYMBOL))
                {
                    alt655=46;
                }
                else if ( (LA655_0 == ROW_COUNT_SYMBOL))
                {
                    alt655=47;
                }
                else if ( (LA655_0 == TRUNCATE_SYMBOL))
                {
                    alt655=48;
                }
                else if ( (LA655_0 == WEEK_SYMBOL))
                {
                    alt655=49;
                }
                else if ( (LA655_0 == WEIGHT_STRING_SYMBOL))
                {
                    alt655=50;
                }
                else if ( (LA655_0 == CONTAINS_SYMBOL || LA655_0 == GEOMETRYCOLLECTION_SYMBOL || LA655_0 == LINESTRING_SYMBOL || ((LA655_0 >= MULTILINESTRING_SYMBOL) && (LA655_0 <= MULTIPOLYGON_SYMBOL)) || ((LA655_0 >= POINT_SYMBOL) && (LA655_0 <= POLYGON_SYMBOL))))
                {
                    alt655=51;
                }
                else if ( (LA655_0 == AVG_SYMBOL || ((LA655_0 >= BIT_AND_SYMBOL) && (LA655_0 <= BIT_XOR_SYMBOL)) || LA655_0 == COUNT_SYMBOL || LA655_0 == GROUP_CONCAT_SYMBOL || LA655_0 == MAX_SYMBOL || LA655_0 == MIN_SYMBOL || LA655_0 == STDDEV_SAMP_SYMBOL || LA655_0 == STD_SYMBOL || LA655_0 == SUM_SYMBOL || LA655_0 == VARIANCE_SYMBOL || LA655_0 == VAR_SAMP_SYMBOL))
                {
                    alt655=52;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 655;
                    EXCEPTION->state        = 0;


                    goto ruleruntime_function_call_expressionEx;

                }
            }
            switch (alt655)
            {
        	case 1:
        	    // MySQL.g:2238:2: CHAR_SYMBOL OPEN_PAR_SYMBOL expression_list ( USING_SYMBOL charset_name )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2057 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression11467);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2057_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2057));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2057_tree);
        	        }

        	        OPEN_PAR_SYMBOL2058 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11469);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        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_list_in_runtime_function_call_expression11471);
        	        expression_list2059=expression_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2059.tree);

        	        // MySQL.g:2238:46: ( USING_SYMBOL charset_name )?
        	        {
        	            int alt640=2;
        	            switch ( LA(1) )
        	            {
        	                case USING_SYMBOL:
        	                	{
        	                		alt640=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt640)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2238:47: USING_SYMBOL charset_name
        	        	    {
        	        	        USING_SYMBOL2060 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_runtime_function_call_expression11474);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USING_SYMBOL2060_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL2060));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL2060_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_runtime_function_call_expression11476);
        	        	        charset_name2061=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2061.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2062 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11480);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2062_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2062));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2062_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2239:4: CURRENT_USER_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURRENT_USER_SYMBOL2063 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_USER_SYMBOL, &FOLLOW_CURRENT_USER_SYMBOL_in_runtime_function_call_expression11485);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURRENT_USER_SYMBOL2063_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_USER_SYMBOL2063));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_USER_SYMBOL2063_tree);
        	        }

        	        // MySQL.g:2239:24: ( parentheses )?
        	        {
        	            int alt641=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt641=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt641)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2239:24: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11487);
        	        	        parentheses2064=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2064.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2240:4: DATE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2065 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_runtime_function_call_expression11493);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2065_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2065));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2065_tree);
        	        }

        	        OPEN_PAR_SYMBOL2066 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11495);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2066_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2066));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2066_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11497);
        	        expression2067=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2067.tree);

        	        CLOSE_PAR_SYMBOL2068 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11499);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        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);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2241:4: DAY_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_SYMBOL2069 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SYMBOL, &FOLLOW_DAY_SYMBOL_in_runtime_function_call_expression11504);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_SYMBOL2069_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SYMBOL2069));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SYMBOL2069_tree);
        	        }

        	        OPEN_PAR_SYMBOL2070 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11506);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        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_runtime_function_call_expression11508);
        	        expression2071=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2071.tree);

        	        CLOSE_PAR_SYMBOL2072 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11510);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2072_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2072));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2072_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2242:4: HOUR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_SYMBOL2073 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_SYMBOL, &FOLLOW_HOUR_SYMBOL_in_runtime_function_call_expression11515);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_SYMBOL2073_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_SYMBOL2073));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_SYMBOL2073_tree);
        	        }

        	        OPEN_PAR_SYMBOL2074 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11517);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2074_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2074));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2074_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11519);
        	        expression2075=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2075.tree);

        	        CLOSE_PAR_SYMBOL2076 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11521);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2076_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2076));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2076_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2243: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_SYMBOL2077 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_SYMBOL, &FOLLOW_INSERT_SYMBOL_in_runtime_function_call_expression11526);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_SYMBOL2077_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_SYMBOL2077));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_SYMBOL2077_tree);
        	        }

        	        OPEN_PAR_SYMBOL2078 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11528);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2078_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2078));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2078_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11530);
        	        expression2079=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2079.tree);

        	        COMMA_SYMBOL2080 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11532);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2080_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2080));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2080_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11534);
        	        expression2081=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2081.tree);

        	        COMMA_SYMBOL2082 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11536);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2082_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2082));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2082_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11538);
        	        expression2083=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2083.tree);

        	        COMMA_SYMBOL2084 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11540);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2084_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2084));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2084_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11542);
        	        expression2085=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2085.tree);

        	        CLOSE_PAR_SYMBOL2086 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11544);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2086_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2086));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2086_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2245:4: LEFT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LEFT_SYMBOL2087 = (pANTLR3_COMMON_TOKEN) MATCHT(LEFT_SYMBOL, &FOLLOW_LEFT_SYMBOL_in_runtime_function_call_expression11551);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LEFT_SYMBOL2087_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEFT_SYMBOL2087));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LEFT_SYMBOL2087_tree);
        	        }

        	        OPEN_PAR_SYMBOL2088 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11553);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2088_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2088));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2088_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11555);
        	        expression2089=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2089.tree);

        	        COMMA_SYMBOL2090 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11557);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2090_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2090));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2090_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11559);
        	        expression2091=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2091.tree);

        	        CLOSE_PAR_SYMBOL2092 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11561);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2092_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2092));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2092_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2246:4: MINUTE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_SYMBOL2093 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_SYMBOL, &FOLLOW_MINUTE_SYMBOL_in_runtime_function_call_expression11566);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_SYMBOL2093_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_SYMBOL2093));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_SYMBOL2093_tree);
        	        }

        	        OPEN_PAR_SYMBOL2094 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11568);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        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);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11570);
        	        expression2095=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2095.tree);

        	        CLOSE_PAR_SYMBOL2096 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11572);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2096_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2096));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2096_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2247:4: MONTH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MONTH_SYMBOL2097 = (pANTLR3_COMMON_TOKEN) MATCHT(MONTH_SYMBOL, &FOLLOW_MONTH_SYMBOL_in_runtime_function_call_expression11577);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MONTH_SYMBOL2097_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MONTH_SYMBOL2097));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MONTH_SYMBOL2097_tree);
        	        }

        	        OPEN_PAR_SYMBOL2098 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11579);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2098_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2098));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2098_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11581);
        	        expression2099=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2099.tree);

        	        CLOSE_PAR_SYMBOL2100 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11583);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2100_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2100));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2100_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2248:4: RIGHT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RIGHT_SYMBOL2101 = (pANTLR3_COMMON_TOKEN) MATCHT(RIGHT_SYMBOL, &FOLLOW_RIGHT_SYMBOL_in_runtime_function_call_expression11588);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RIGHT_SYMBOL2101_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RIGHT_SYMBOL2101));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RIGHT_SYMBOL2101_tree);
        	        }

        	        OPEN_PAR_SYMBOL2102 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11590);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2102_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2102));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2102_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11592);
        	        expression2103=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2103.tree);

        	        COMMA_SYMBOL2104 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11594);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2104_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2104));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2104_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11596);
        	        expression2105=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2105.tree);

        	        CLOSE_PAR_SYMBOL2106 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11598);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2106_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2106));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2106_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2249:4: SECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SECOND_SYMBOL2107 = (pANTLR3_COMMON_TOKEN) MATCHT(SECOND_SYMBOL, &FOLLOW_SECOND_SYMBOL_in_runtime_function_call_expression11603);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECOND_SYMBOL2107_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECOND_SYMBOL2107));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECOND_SYMBOL2107_tree);
        	        }

        	        OPEN_PAR_SYMBOL2108 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11605);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2108_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2108));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2108_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11607);
        	        expression2109=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2109.tree);

        	        CLOSE_PAR_SYMBOL2110 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11609);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2110_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2110));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2110_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2250:4: TIME_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2111 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_runtime_function_call_expression11614);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2111_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2111));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2111_tree);
        	        }

        	        OPEN_PAR_SYMBOL2112 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11616);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        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);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11618);
        	        expression2113=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2113.tree);

        	        CLOSE_PAR_SYMBOL2114 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11620);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2114_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2114));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2114_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2251:4: TIMESTAMP_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL2115 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11625);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL2115_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL2115));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL2115_tree);
        	        }

        	        OPEN_PAR_SYMBOL2116 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11627);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2116_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2116));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2116_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11629);
        	        expression2117=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2117.tree);

        	        // MySQL.g:2251:48: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt642=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt642=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt642)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2251:49: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL2118 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11632);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2118_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2118));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2118_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11634);
        	        	        expression2119=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2119.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2120 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11638);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        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 14:
        	    // MySQL.g:2252:4: trim_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_trim_function_in_runtime_function_call_expression11643);
        	        trim_function2121=trim_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, trim_function2121.tree);

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:2253:4: USER_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        USER_SYMBOL2122 = (pANTLR3_COMMON_TOKEN) MATCHT(USER_SYMBOL, &FOLLOW_USER_SYMBOL_in_runtime_function_call_expression11648);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        USER_SYMBOL2122_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USER_SYMBOL2122));
        	        ADAPTOR->addChild(ADAPTOR, root_0, USER_SYMBOL2122_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11650);
        	        parentheses2123=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2123.tree);

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:2254:4: VALUES_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VALUES_SYMBOL2124 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUES_SYMBOL, &FOLLOW_VALUES_SYMBOL_in_runtime_function_call_expression11655);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VALUES_SYMBOL2124_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUES_SYMBOL2124));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUES_SYMBOL2124_tree);
        	        }

        	        OPEN_PAR_SYMBOL2125 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11657);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2125_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2125));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2125_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11659);
        	        expression2126=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2126.tree);

        	        CLOSE_PAR_SYMBOL2127 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11661);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2127_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2127));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2127_tree);
        	        }

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:2255:4: YEAR_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_SYMBOL2128 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_SYMBOL, &FOLLOW_YEAR_SYMBOL_in_runtime_function_call_expression11666);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_SYMBOL2128_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_SYMBOL2128));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_SYMBOL2128_tree);
        	        }

        	        OPEN_PAR_SYMBOL2129 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11668);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2129_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2129));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2129_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11670);
        	        expression2130=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2130.tree);

        	        CLOSE_PAR_SYMBOL2131 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11672);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2131_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2131));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2131_tree);
        	        }

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:2258:4: ( ADDDATE_SYMBOL | SUBDATE_SYMBOL ) OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set2132=(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, set2132))
        	            );
        	            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 ruleruntime_function_call_expressionEx;
        	        }


        	        OPEN_PAR_SYMBOL2133 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11688);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2133_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2133));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2133_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11690);
        	        expression2134=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2134.tree);

        	        COMMA_SYMBOL2135 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11692);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2135_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2135));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2135_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11694);
        	        expression2136=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2136.tree);

        	        CLOSE_PAR_SYMBOL2137 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11696);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2137_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2137));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2137_tree);
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:2259:4: CURDATE_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURDATE_SYMBOL2138 = (pANTLR3_COMMON_TOKEN) MATCHT(CURDATE_SYMBOL, &FOLLOW_CURDATE_SYMBOL_in_runtime_function_call_expression11701);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURDATE_SYMBOL2138_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURDATE_SYMBOL2138));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURDATE_SYMBOL2138_tree);
        	        }

        	        // MySQL.g:2259:19: ( parentheses )?
        	        {
        	            int alt643=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt643=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt643)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2259:19: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11703);
        	        	        parentheses2139=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2139.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:2260:4: CURTIME_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURTIME_SYMBOL2140 = (pANTLR3_COMMON_TOKEN) MATCHT(CURTIME_SYMBOL, &FOLLOW_CURTIME_SYMBOL_in_runtime_function_call_expression11709);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURTIME_SYMBOL2140_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURTIME_SYMBOL2140));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURTIME_SYMBOL2140_tree);
        	        }

        	        // MySQL.g:2260:19: ( time_function_parameters )?
        	        {
        	            int alt644=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt644=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt644)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2260:19: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11711);
        	        	        time_function_parameters2141=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2141.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:2261: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));


        	        set2142=(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, set2142))
        	            );
        	            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 ruleruntime_function_call_expressionEx;
        	        }


        	        OPEN_PAR_SYMBOL2143 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11725);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        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);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11727);
        	        expression2144=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2144.tree);

        	        COMMA_SYMBOL2145 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11729);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2145_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2145));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2145_tree);
        	        }

        	        INTERVAL_SYMBOL2146 = (pANTLR3_COMMON_TOKEN) MATCHT(INTERVAL_SYMBOL, &FOLLOW_INTERVAL_SYMBOL_in_runtime_function_call_expression11731);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INTERVAL_SYMBOL2146_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTERVAL_SYMBOL2146));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INTERVAL_SYMBOL2146_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_in_runtime_function_call_expression11733);
        	        interval2147=interval(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval2147.tree);

        	        CLOSE_PAR_SYMBOL2148 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11735);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2148_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2148));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2148_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:2262:4: EXTRACT_SYMBOL OPEN_PAR_SYMBOL interval_unit FROM_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EXTRACT_SYMBOL2149 = (pANTLR3_COMMON_TOKEN) MATCHT(EXTRACT_SYMBOL, &FOLLOW_EXTRACT_SYMBOL_in_runtime_function_call_expression11740);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EXTRACT_SYMBOL2149_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXTRACT_SYMBOL2149));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EXTRACT_SYMBOL2149_tree);
        	        }

        	        OPEN_PAR_SYMBOL2150 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11742);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2150_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2150));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2150_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_unit_in_runtime_function_call_expression11744);
        	        interval_unit2151=interval_unit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_unit2151.tree);

        	        FROM_SYMBOL2152 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_runtime_function_call_expression11746);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FROM_SYMBOL2152_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2152));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2152_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11748);
        	        expression2153=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2153.tree);

        	        CLOSE_PAR_SYMBOL2154 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11750);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        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 23:
        	    // MySQL.g:2263: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_SYMBOL2155 = (pANTLR3_COMMON_TOKEN) MATCHT(GET_FORMAT_SYMBOL, &FOLLOW_GET_FORMAT_SYMBOL_in_runtime_function_call_expression11755);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GET_FORMAT_SYMBOL2155_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GET_FORMAT_SYMBOL2155));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GET_FORMAT_SYMBOL2155_tree);
        	        }

        	        OPEN_PAR_SYMBOL2156 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11757);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2156_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2156));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2156_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_date_time_type_in_runtime_function_call_expression11759);
        	        date_time_type2157=date_time_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, date_time_type2157.tree);

        	        COMMA_SYMBOL2158 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11762);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2158_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2158));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2158_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11764);
        	        expression2159=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2159.tree);

        	        CLOSE_PAR_SYMBOL2160 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11766);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2160_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2160));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2160_tree);
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:2264:4: NOW_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NOW_SYMBOL2161 = (pANTLR3_COMMON_TOKEN) MATCHT(NOW_SYMBOL, &FOLLOW_NOW_SYMBOL_in_runtime_function_call_expression11771);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOW_SYMBOL2161_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOW_SYMBOL2161));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NOW_SYMBOL2161_tree);
        	        }

        	        // MySQL.g:2264:15: ( time_function_parameters )?
        	        {
        	            int alt645=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt645=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt645)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2264:15: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11773);
        	        	        time_function_parameters2162=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2162.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 25:
        	    // MySQL.g:2265:4: POSITION_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression IN_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POSITION_SYMBOL2163 = (pANTLR3_COMMON_TOKEN) MATCHT(POSITION_SYMBOL, &FOLLOW_POSITION_SYMBOL_in_runtime_function_call_expression11779);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POSITION_SYMBOL2163_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POSITION_SYMBOL2163));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POSITION_SYMBOL2163_tree);
        	        }

        	        OPEN_PAR_SYMBOL2164 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11781);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2164_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2164));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2164_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_runtime_function_call_expression11783);
        	        bitwise_or_expression2165=bitwise_or_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression2165.tree);

        	        IN_SYMBOL2166 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_runtime_function_call_expression11785);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IN_SYMBOL2166_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2166));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2166_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11787);
        	        expression2167=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2167.tree);

        	        CLOSE_PAR_SYMBOL2168 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11789);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2168_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2168));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2168_tree);
        	        }

        	    }
        	    break;
        	case 26:
        	    // MySQL.g:2266:4: substring_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_substring_function_in_runtime_function_call_expression11794);
        	        substring_function2169=substring_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, substring_function2169.tree);

        	    }
        	    break;
        	case 27:
        	    // MySQL.g:2267:4: SYSDATE_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SYSDATE_SYMBOL2170 = (pANTLR3_COMMON_TOKEN) MATCHT(SYSDATE_SYMBOL, &FOLLOW_SYSDATE_SYMBOL_in_runtime_function_call_expression11799);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SYSDATE_SYMBOL2170_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SYSDATE_SYMBOL2170));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SYSDATE_SYMBOL2170_tree);
        	        }

        	        // MySQL.g:2267:19: ( time_function_parameters )?
        	        {
        	            int alt646=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt646=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt646)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2267:19: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11801);
        	        	        time_function_parameters2171=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2171.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 28:
        	    // MySQL.g:2268: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));


        	        set2172=(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, set2172))
        	            );
        	            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 ruleruntime_function_call_expressionEx;
        	        }


        	        OPEN_PAR_SYMBOL2173 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11815);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2173_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2173));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2173_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_timestamp_unit_in_runtime_function_call_expression11817);
        	        interval_timestamp_unit2174=interval_timestamp_unit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_timestamp_unit2174.tree);

        	        COMMA_SYMBOL2175 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11819);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2175_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2175));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2175_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11821);
        	        expression2176=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2176.tree);

        	        COMMA_SYMBOL2177 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11823);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2177_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2177));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2177_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11825);
        	        expression2178=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2178.tree);

        	        CLOSE_PAR_SYMBOL2179 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11827);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2179_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2179));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2179_tree);
        	        }

        	    }
        	    break;
        	case 29:
        	    // MySQL.g:2269:4: UTC_DATE_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_DATE_SYMBOL2180 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_DATE_SYMBOL, &FOLLOW_UTC_DATE_SYMBOL_in_runtime_function_call_expression11832);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_DATE_SYMBOL2180_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_DATE_SYMBOL2180));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_DATE_SYMBOL2180_tree);
        	        }

        	        // MySQL.g:2269:20: ( parentheses )?
        	        {
        	            int alt647=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt647=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt647)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2269:20: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11834);
        	        	        parentheses2181=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2181.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 30:
        	    // MySQL.g:2270:4: UTC_TIME_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_TIME_SYMBOL2182 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_TIME_SYMBOL, &FOLLOW_UTC_TIME_SYMBOL_in_runtime_function_call_expression11840);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_TIME_SYMBOL2182_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_TIME_SYMBOL2182));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_TIME_SYMBOL2182_tree);
        	        }

        	        // MySQL.g:2270:20: ( time_function_parameters )?
        	        {
        	            int alt648=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt648=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt648)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2270:20: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11842);
        	        	        time_function_parameters2183=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2183.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 31:
        	    // MySQL.g:2271:4: UTC_TIMESTAMP_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UTC_TIMESTAMP_SYMBOL2184 = (pANTLR3_COMMON_TOKEN) MATCHT(UTC_TIMESTAMP_SYMBOL, &FOLLOW_UTC_TIMESTAMP_SYMBOL_in_runtime_function_call_expression11848);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UTC_TIMESTAMP_SYMBOL2184_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UTC_TIMESTAMP_SYMBOL2184));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UTC_TIMESTAMP_SYMBOL2184_tree);
        	        }

        	        // MySQL.g:2271:25: ( time_function_parameters )?
        	        {
        	            int alt649=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt649=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt649)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2271:25: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_runtime_function_call_expression11850);
        	        	        time_function_parameters2185=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2185.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 32:
        	    // MySQL.g:2274:4: ASCII_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ASCII_SYMBOL2186 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_runtime_function_call_expression11859);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2186_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2186));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2186_tree);
        	        }

        	        OPEN_PAR_SYMBOL2187 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11861);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2187_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2187));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2187_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11863);
        	        expression2188=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2188.tree);

        	        CLOSE_PAR_SYMBOL2189 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11865);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2189_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2189));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2189_tree);
        	        }

        	    }
        	    break;
        	case 33:
        	    // MySQL.g:2275:4: CHARSET_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHARSET_SYMBOL2190 = (pANTLR3_COMMON_TOKEN) MATCHT(CHARSET_SYMBOL, &FOLLOW_CHARSET_SYMBOL_in_runtime_function_call_expression11870);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHARSET_SYMBOL2190_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHARSET_SYMBOL2190));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHARSET_SYMBOL2190_tree);
        	        }

        	        OPEN_PAR_SYMBOL2191 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11872);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2191_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2191));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2191_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11874);
        	        expression2192=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2192.tree);

        	        CLOSE_PAR_SYMBOL2193 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11876);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2193_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2193));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2193_tree);
        	        }

        	    }
        	    break;
        	case 34:
        	    // MySQL.g:2276:4: COALESCE_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COALESCE_SYMBOL2194 = (pANTLR3_COMMON_TOKEN) MATCHT(COALESCE_SYMBOL, &FOLLOW_COALESCE_SYMBOL_in_runtime_function_call_expression11881);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COALESCE_SYMBOL2194_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COALESCE_SYMBOL2194));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COALESCE_SYMBOL2194_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_runtime_function_call_expression11883);
        	        expression_list_with_parentheses2195=expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list_with_parentheses2195.tree);

        	    }
        	    break;
        	case 35:
        	    // MySQL.g:2277:4: COLLATION_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COLLATION_SYMBOL2196 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATION_SYMBOL, &FOLLOW_COLLATION_SYMBOL_in_runtime_function_call_expression11888);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COLLATION_SYMBOL2196_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATION_SYMBOL2196));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATION_SYMBOL2196_tree);
        	        }

        	        OPEN_PAR_SYMBOL2197 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11890);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2197_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2197));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2197_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11892);
        	        expression2198=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2198.tree);

        	        CLOSE_PAR_SYMBOL2199 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11894);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2199_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2199));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2199_tree);
        	        }

        	    }
        	    break;
        	case 36:
        	    // MySQL.g:2278:4: DATABASE_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATABASE_SYMBOL2200 = (pANTLR3_COMMON_TOKEN) MATCHT(DATABASE_SYMBOL, &FOLLOW_DATABASE_SYMBOL_in_runtime_function_call_expression11899);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATABASE_SYMBOL2200_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATABASE_SYMBOL2200));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATABASE_SYMBOL2200_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression11901);
        	        parentheses2201=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2201.tree);

        	    }
        	    break;
        	case 37:
        	    // MySQL.g:2279: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_SYMBOL2202 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_runtime_function_call_expression11906);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IF_SYMBOL2202_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2202));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL2202_tree);
        	        }

        	        OPEN_PAR_SYMBOL2203 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11908);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2203_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2203));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2203_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11910);
        	        expression2204=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2204.tree);

        	        COMMA_SYMBOL2205 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11912);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2205_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2205));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2205_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11914);
        	        expression2206=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2206.tree);

        	        COMMA_SYMBOL2207 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11916);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2207_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2207));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2207_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11918);
        	        expression2208=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2208.tree);

        	        CLOSE_PAR_SYMBOL2209 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11920);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2209_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2209));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2209_tree);
        	        }

        	    }
        	    break;
        	case 38:
        	    // MySQL.g:2280: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_SYMBOL2210 = (pANTLR3_COMMON_TOKEN) MATCHT(FORMAT_SYMBOL, &FOLLOW_FORMAT_SYMBOL_in_runtime_function_call_expression11925);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FORMAT_SYMBOL2210_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FORMAT_SYMBOL2210));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FORMAT_SYMBOL2210_tree);
        	        }

        	        OPEN_PAR_SYMBOL2211 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11927);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2211_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2211));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2211_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11929);
        	        expression2212=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2212.tree);

        	        COMMA_SYMBOL2213 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11931);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2213_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2213));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2213_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11933);
        	        expression2214=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2214.tree);

        	        // MySQL.g:2280:69: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt650=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt650=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt650)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2280:70: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL2215 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11936);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2215_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2215));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2215_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11938);
        	        	        expression2216=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2216.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2217 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11942);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2217_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2217));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2217_tree);
        	        }

        	    }
        	    break;
        	case 39:
        	    // MySQL.g:2281:4: MICROSECOND_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MICROSECOND_SYMBOL2218 = (pANTLR3_COMMON_TOKEN) MATCHT(MICROSECOND_SYMBOL, &FOLLOW_MICROSECOND_SYMBOL_in_runtime_function_call_expression11947);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MICROSECOND_SYMBOL2218_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MICROSECOND_SYMBOL2218));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MICROSECOND_SYMBOL2218_tree);
        	        }

        	        OPEN_PAR_SYMBOL2219 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11949);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2219_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2219));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2219_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11951);
        	        expression2220=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2220.tree);

        	        CLOSE_PAR_SYMBOL2221 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11953);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2221_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2221));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2221_tree);
        	        }

        	    }
        	    break;
        	case 40:
        	    // MySQL.g:2282:4: MOD_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MOD_SYMBOL2222 = (pANTLR3_COMMON_TOKEN) MATCHT(MOD_SYMBOL, &FOLLOW_MOD_SYMBOL_in_runtime_function_call_expression11958);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MOD_SYMBOL2222_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MOD_SYMBOL2222));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MOD_SYMBOL2222_tree);
        	        }

        	        OPEN_PAR_SYMBOL2223 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11960);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2223_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2223));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2223_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11962);
        	        expression2224=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2224.tree);

        	        COMMA_SYMBOL2225 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression11964);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2225_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2225));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2225_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11966);
        	        expression2226=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2226.tree);

        	        CLOSE_PAR_SYMBOL2227 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11968);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2227_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2227));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2227_tree);
        	        }

        	    }
        	    break;
        	case 41:
        	    // MySQL.g:2283:4: {...}? OLD_PASSWORD_SYMBOL OPEN_PAR_SYMBOL string_literal CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION < 50607)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50607";
        	                EXCEPTION->ruleName	 = (void *)"runtime_function_call_expression";


        	        }

        	        OLD_PASSWORD_SYMBOL2228 = (pANTLR3_COMMON_TOKEN) MATCHT(OLD_PASSWORD_SYMBOL, &FOLLOW_OLD_PASSWORD_SYMBOL_in_runtime_function_call_expression11975);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OLD_PASSWORD_SYMBOL2228_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OLD_PASSWORD_SYMBOL2228));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OLD_PASSWORD_SYMBOL2228_tree);
        	        }

        	        OPEN_PAR_SYMBOL2229 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11977);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2229_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2229));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2229_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_runtime_function_call_expression11979);
        	        string_literal2230=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2230.tree);

        	        CLOSE_PAR_SYMBOL2231 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11981);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2231_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2231));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2231_tree);
        	        }

        	    }
        	    break;
        	case 42:
        	    // MySQL.g:2284:4: PASSWORD_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL2232 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_runtime_function_call_expression11986);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL2232_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL2232));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL2232_tree);
        	        }

        	        OPEN_PAR_SYMBOL2233 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11988);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2233_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2233));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2233_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression11990);
        	        expression2234=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2234.tree);

        	        CLOSE_PAR_SYMBOL2235 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression11992);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2235_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2235));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2235_tree);
        	        }

        	    }
        	    break;
        	case 43:
        	    // MySQL.g:2285:4: QUARTER_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        QUARTER_SYMBOL2236 = (pANTLR3_COMMON_TOKEN) MATCHT(QUARTER_SYMBOL, &FOLLOW_QUARTER_SYMBOL_in_runtime_function_call_expression11997);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        QUARTER_SYMBOL2236_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUARTER_SYMBOL2236));
        	        ADAPTOR->addChild(ADAPTOR, root_0, QUARTER_SYMBOL2236_tree);
        	        }

        	        OPEN_PAR_SYMBOL2237 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression11999);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2237_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2237));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2237_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12001);
        	        expression2238=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2238.tree);

        	        CLOSE_PAR_SYMBOL2239 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12003);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2239_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2239));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2239_tree);
        	        }

        	    }
        	    break;
        	case 44:
        	    // MySQL.g:2286:4: REPEAT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REPEAT_SYMBOL2240 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_runtime_function_call_expression12008);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPEAT_SYMBOL2240_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL2240));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPEAT_SYMBOL2240_tree);
        	        }

        	        OPEN_PAR_SYMBOL2241 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12010);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2241_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2241));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2241_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12012);
        	        expression2242=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2242.tree);

        	        COMMA_SYMBOL2243 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12014);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2243_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2243));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2243_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12016);
        	        expression2244=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2244.tree);

        	        CLOSE_PAR_SYMBOL2245 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12018);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2245_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2245));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2245_tree);
        	        }

        	    }
        	    break;
        	case 45:
        	    // MySQL.g:2287: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_SYMBOL2246 = (pANTLR3_COMMON_TOKEN) MATCHT(REPLACE_SYMBOL, &FOLLOW_REPLACE_SYMBOL_in_runtime_function_call_expression12023);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REPLACE_SYMBOL2246_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPLACE_SYMBOL2246));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REPLACE_SYMBOL2246_tree);
        	        }

        	        OPEN_PAR_SYMBOL2247 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12025);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2247_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2247));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2247_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12027);
        	        expression2248=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2248.tree);

        	        COMMA_SYMBOL2249 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12029);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2249_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2249));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2249_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12031);
        	        expression2250=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2250.tree);

        	        COMMA_SYMBOL2251 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12033);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2251_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2251));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2251_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12035);
        	        expression2252=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2252.tree);

        	        CLOSE_PAR_SYMBOL2253 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12037);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2253_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2253));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2253_tree);
        	        }

        	    }
        	    break;
        	case 46:
        	    // MySQL.g:2288:4: REVERSE_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REVERSE_SYMBOL2254 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_runtime_function_call_expression12042);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REVERSE_SYMBOL2254_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL2254));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL2254_tree);
        	        }

        	        OPEN_PAR_SYMBOL2255 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12044);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2255_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2255));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2255_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12046);
        	        expression2256=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2256.tree);

        	        CLOSE_PAR_SYMBOL2257 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12048);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2257_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2257));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2257_tree);
        	        }

        	    }
        	    break;
        	case 47:
        	    // MySQL.g:2289:4: ROW_COUNT_SYMBOL parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ROW_COUNT_SYMBOL2258 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_COUNT_SYMBOL, &FOLLOW_ROW_COUNT_SYMBOL_in_runtime_function_call_expression12053);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROW_COUNT_SYMBOL2258_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_COUNT_SYMBOL2258));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_COUNT_SYMBOL2258_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_parentheses_in_runtime_function_call_expression12055);
        	        parentheses2259=parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses2259.tree);

        	    }
        	    break;
        	case 48:
        	    // MySQL.g:2290:4: TRUNCATE_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TRUNCATE_SYMBOL2260 = (pANTLR3_COMMON_TOKEN) MATCHT(TRUNCATE_SYMBOL, &FOLLOW_TRUNCATE_SYMBOL_in_runtime_function_call_expression12060);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TRUNCATE_SYMBOL2260_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRUNCATE_SYMBOL2260));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TRUNCATE_SYMBOL2260_tree);
        	        }

        	        OPEN_PAR_SYMBOL2261 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12062);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2261_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2261));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2261_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12064);
        	        expression2262=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2262.tree);

        	        COMMA_SYMBOL2263 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12066);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2263_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2263));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2263_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12068);
        	        expression2264=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2264.tree);

        	        CLOSE_PAR_SYMBOL2265 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12070);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2265_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2265));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2265_tree);
        	        }

        	    }
        	    break;
        	case 49:
        	    // MySQL.g:2291:4: WEEK_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WEEK_SYMBOL2266 = (pANTLR3_COMMON_TOKEN) MATCHT(WEEK_SYMBOL, &FOLLOW_WEEK_SYMBOL_in_runtime_function_call_expression12075);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WEEK_SYMBOL2266_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WEEK_SYMBOL2266));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WEEK_SYMBOL2266_tree);
        	        }

        	        OPEN_PAR_SYMBOL2267 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12077);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2267_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2267));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2267_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12079);
        	        expression2268=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2268.tree);

        	        // MySQL.g:2291:43: ( COMMA_SYMBOL expression )?
        	        {
        	            int alt651=2;
        	            switch ( LA(1) )
        	            {
        	                case COMMA_SYMBOL:
        	                	{
        	                		alt651=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt651)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2291:44: COMMA_SYMBOL expression
        	        	    {
        	        	        COMMA_SYMBOL2269 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12082);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2269_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2269));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2269_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12084);
        	        	        expression2270=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2270.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2271 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12088);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2271_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2271));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2271_tree);
        	        }

        	    }
        	    break;
        	case 50:
        	    // MySQL.g:2292: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 ulong_number COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number ) 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 *)"runtime_function_call_expression";


        	        }

        	        WEIGHT_STRING_SYMBOL2272 = (pANTLR3_COMMON_TOKEN) MATCHT(WEIGHT_STRING_SYMBOL, &FOLLOW_WEIGHT_STRING_SYMBOL_in_runtime_function_call_expression12095);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WEIGHT_STRING_SYMBOL2272_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WEIGHT_STRING_SYMBOL2272));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WEIGHT_STRING_SYMBOL2272_tree);
        	        }

        	        OPEN_PAR_SYMBOL2273 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_runtime_function_call_expression12097);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2273_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2273));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2273_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_runtime_function_call_expression12099);
        	        expression2274=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2274.tree);

        	        // MySQL.g:2293:3: ( ( AS_SYMBOL CHAR_SYMBOL field_length )? ( weight_string_levels )? | AS_SYMBOL BINARY_SYMBOL field_length | COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number )
        	        {
        	            int alt654=3;
        	            switch ( LA(1) )
        	            {
        	            case AS_SYMBOL:
        	            	{
        	            		switch ( LA(2) )
        	            		{
        	            		case CHAR_SYMBOL:
        	            			{
        	            				alt654=1;
        	            			}
        	            		    break;
        	            		case BINARY_SYMBOL:
        	            			{
        	            				alt654=2;
        	            			}
        	            		    break;

        	            		default:
        	            		    if (BACKTRACKING>0)
        	            		    {
        	            		        FAILEDFLAG = ANTLR3_TRUE;
        	            		        return retval;
        	            		    }

        	            		    CONSTRUCTEX();
        	            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	            		    EXCEPTION->message      = (void *)"";
        	            		    EXCEPTION->decisionNum  = 654;
        	            		    EXCEPTION->state        = 1;


        	            		    goto ruleruntime_function_call_expressionEx;

        	            		}

        	            	}
        	                break;
        	            case LEVEL_SYMBOL:
        	            case CLOSE_PAR_SYMBOL:
        	            	{
        	            		alt654=1;
        	            	}
        	                break;
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt654=3;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 654;
        	                EXCEPTION->state        = 0;


        	                goto ruleruntime_function_call_expressionEx;

        	            }

        	            switch (alt654)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2294:4: ( AS_SYMBOL CHAR_SYMBOL field_length )? ( weight_string_levels )?
        	        	    {
        	        	        // MySQL.g:2294:4: ( AS_SYMBOL CHAR_SYMBOL field_length )?
        	        	        {
        	        	            int alt652=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case AS_SYMBOL:
        	        	                	{
        	        	                		alt652=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt652)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2294:5: AS_SYMBOL CHAR_SYMBOL field_length
        	        	        	    {
        	        	        	        AS_SYMBOL2275 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12109);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        AS_SYMBOL2275_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2275));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2275_tree);
        	        	        	        }

        	        	        	        CHAR_SYMBOL2276 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_runtime_function_call_expression12111);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        CHAR_SYMBOL2276_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2276));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2276_tree);
        	        	        	        }

        	        	        	        FOLLOWPUSH(FOLLOW_field_length_in_runtime_function_call_expression12113);
        	        	        	        field_length2277=field_length(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2277.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        // MySQL.g:2294:42: ( weight_string_levels )?
        	        	        {
        	        	            int alt653=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case LEVEL_SYMBOL:
        	        	                	{
        	        	                		alt653=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt653)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2294:42: weight_string_levels
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_weight_string_levels_in_runtime_function_call_expression12117);
        	        	        	        weight_string_levels2278=weight_string_levels(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, weight_string_levels2278.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2295:6: AS_SYMBOL BINARY_SYMBOL field_length
        	        	    {
        	        	        AS_SYMBOL2279 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_runtime_function_call_expression12125);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AS_SYMBOL2279_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2279));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2279_tree);
        	        	        }

        	        	        BINARY_SYMBOL2280 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_runtime_function_call_expression12127);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2280_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2280));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2280_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_field_length_in_runtime_function_call_expression12129);
        	        	        field_length2281=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2281.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:2296:6: COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number COMMA_SYMBOL ulong_number
        	        	    {
        	        	        COMMA_SYMBOL2282 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12136);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2282_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2282));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2282_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_runtime_function_call_expression12138);
        	        	        ulong_number2283=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2283.tree);

        	        	        COMMA_SYMBOL2284 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12140);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2284_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2284));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2284_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_runtime_function_call_expression12142);
        	        	        ulong_number2285=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2285.tree);

        	        	        COMMA_SYMBOL2286 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_runtime_function_call_expression12144);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2286_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2286));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2286_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_runtime_function_call_expression12146);
        	        	        ulong_number2287=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleruntime_function_call_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2287.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2288 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_runtime_function_call_expression12154);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2288_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2288));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2288_tree);
        	        }

        	    }
        	    break;
        	case 51:
        	    // MySQL.g:2299:4: geometry_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_geometry_function_in_runtime_function_call_expression12159);
        	        geometry_function2289=geometry_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, geometry_function2289.tree);

        	    }
        	    break;
        	case 52:
        	    // MySQL.g:2300:4: aggregate_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_aggregate_function_in_runtime_function_call_expression12164);
        	        aggregate_function2290=aggregate_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleruntime_function_call_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aggregate_function2290.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleruntime_function_call_expressionEx; /* Prevent compiler warnings */
    ruleruntime_function_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 (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end runtime_function_call_expression */

/**
 * $ANTLR start time_function_parameters
 * MySQL.g:2303: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_SYMBOL2291;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2293;
    MySQLParser_fractional_precision_return fractional_precision2292;
    #undef	RETURN_TYPE_fractional_precision2292
    #define	RETURN_TYPE_fractional_precision2292 MySQLParser_fractional_precision_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2291_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2293_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2291       = NULL;
    CLOSE_PAR_SYMBOL2293       = NULL;
    fractional_precision2292.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2291_tree   = NULL;
    CLOSE_PAR_SYMBOL2293_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2303:25: ( OPEN_PAR_SYMBOL ( fractional_precision )? CLOSE_PAR_SYMBOL )
        // MySQL.g:2304:2: OPEN_PAR_SYMBOL ( fractional_precision )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2291 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_time_function_parameters12173);
            if  (HASEXCEPTION())
            {
                goto ruletime_function_parametersEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2291_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2291));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2291_tree);
            }

            // MySQL.g:2304:18: ( fractional_precision )?
            {
                int alt656=2;
                {
                    int LA656_0 = LA(1);
                    if ( ((SERVER_VERSION >= 50604)) && (LA656_0 == INT_NUMBER))
                    {
                        alt656=1;
                    }
                }
                switch (alt656)
                {
            	case 1:
            	    // MySQL.g:2304:18: fractional_precision
            	    {
            	        FOLLOWPUSH(FOLLOW_fractional_precision_in_time_function_parameters12175);
            	        fractional_precision2292=fractional_precision(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletime_function_parametersEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, fractional_precision2292.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2293 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_time_function_parameters12178);
            if  (HASEXCEPTION())
            {
                goto ruletime_function_parametersEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2293));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2293_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:2307:1: fractional_precision :{...}? => INT_NUMBER ;
 */
static MySQLParser_fractional_precision_return
fractional_precision(pMySQLParser ctx)
{
    MySQLParser_fractional_precision_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    INT_NUMBER2294;

    pANTLR3_BASE_TREE INT_NUMBER2294_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    INT_NUMBER2294       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    INT_NUMBER2294_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2307:21: ({...}? => INT_NUMBER )
        // MySQL.g:2308:2: {...}? => INT_NUMBER
        {
            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";


            }

            INT_NUMBER2294 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_fractional_precision12191);
            if  (HASEXCEPTION())
            {
                goto rulefractional_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER2294_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER2294));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER2294_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:2311:1: weight_string_levels : LEVEL_SYMBOL ( real_ulong_number MINUS_OPERATOR real_ulong_number | 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_SYMBOL2295;
    pANTLR3_COMMON_TOKEN    MINUS_OPERATOR2297;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2300;
    MySQLParser_real_ulong_number_return real_ulong_number2296;
    #undef	RETURN_TYPE_real_ulong_number2296
    #define	RETURN_TYPE_real_ulong_number2296 MySQLParser_real_ulong_number_return

    MySQLParser_real_ulong_number_return real_ulong_number2298;
    #undef	RETURN_TYPE_real_ulong_number2298
    #define	RETURN_TYPE_real_ulong_number2298 MySQLParser_real_ulong_number_return

    MySQLParser_weight_string_level_list_item_return weight_string_level_list_item2299;
    #undef	RETURN_TYPE_weight_string_level_list_item2299
    #define	RETURN_TYPE_weight_string_level_list_item2299 MySQLParser_weight_string_level_list_item_return

    MySQLParser_weight_string_level_list_item_return weight_string_level_list_item2301;
    #undef	RETURN_TYPE_weight_string_level_list_item2301
    #define	RETURN_TYPE_weight_string_level_list_item2301 MySQLParser_weight_string_level_list_item_return

    pANTLR3_BASE_TREE LEVEL_SYMBOL2295_tree;
    pANTLR3_BASE_TREE MINUS_OPERATOR2297_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2300_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LEVEL_SYMBOL2295       = NULL;
    MINUS_OPERATOR2297       = NULL;
    COMMA_SYMBOL2300       = NULL;
    real_ulong_number2296.tree = NULL;

    real_ulong_number2298.tree = NULL;

    weight_string_level_list_item2299.tree = NULL;

    weight_string_level_list_item2301.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LEVEL_SYMBOL2295_tree   = NULL;
    MINUS_OPERATOR2297_tree   = NULL;
    COMMA_SYMBOL2300_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2311:21: ( LEVEL_SYMBOL ( real_ulong_number MINUS_OPERATOR real_ulong_number | weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )* ) )
        // MySQL.g:2312:2: LEVEL_SYMBOL ( real_ulong_number MINUS_OPERATOR real_ulong_number | weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )* )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LEVEL_SYMBOL2295 = (pANTLR3_COMMON_TOKEN) MATCHT(LEVEL_SYMBOL, &FOLLOW_LEVEL_SYMBOL_in_weight_string_levels12200);
            if  (HASEXCEPTION())
            {
                goto ruleweight_string_levelsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LEVEL_SYMBOL2295_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEVEL_SYMBOL2295));
            ADAPTOR->addChild(ADAPTOR, root_0, LEVEL_SYMBOL2295_tree);
            }

            // MySQL.g:2313:2: ( real_ulong_number MINUS_OPERATOR real_ulong_number | weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )* )
            {
                int alt658=2;
                switch ( LA(1) )
                {
                case HEX_NUMBER:
                case INT_NUMBER:
                case LONG_NUMBER:
                case ULONGLONG_NUMBER:
                	{
                		switch ( LA(2) )
                		{
                		case MINUS_OPERATOR:
                			{
                				alt658=1;
                			}
                		    break;
                		case REVERSE_SYMBOL:
                		case ASC_SYMBOL:
                		case CLOSE_PAR_SYMBOL:
                		case COMMA_SYMBOL:
                		case DESC_SYMBOL:
                			{
                				alt658=2;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 658;
                		    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  = 658;
                    EXCEPTION->state        = 0;


                    goto ruleweight_string_levelsEx;

                }

                switch (alt658)
                {
            	case 1:
            	    // MySQL.g:2314:3: real_ulong_number MINUS_OPERATOR real_ulong_number
            	    {
            	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_weight_string_levels12207);
            	        real_ulong_number2296=real_ulong_number(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_levelsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number2296.tree);

            	        MINUS_OPERATOR2297 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUS_OPERATOR, &FOLLOW_MINUS_OPERATOR_in_weight_string_levels12209);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_levelsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MINUS_OPERATOR2297_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUS_OPERATOR2297));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MINUS_OPERATOR2297_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_weight_string_levels12211);
            	        real_ulong_number2298=real_ulong_number(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_levelsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number2298.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2315:5: weight_string_level_list_item ( COMMA_SYMBOL weight_string_level_list_item )*
            	    {
            	        FOLLOWPUSH(FOLLOW_weight_string_level_list_item_in_weight_string_levels12217);
            	        weight_string_level_list_item2299=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_item2299.tree);

            	        // MySQL.g:2315:35: ( COMMA_SYMBOL weight_string_level_list_item )*

            	        for (;;)
            	        {
            	            int alt657=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt657=1;
            	            	}
            	                break;

            	            }

            	            switch (alt657)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2315:36: COMMA_SYMBOL weight_string_level_list_item
            	        	    {
            	        	        COMMA_SYMBOL2300 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_weight_string_levels12220);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleweight_string_levelsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2300_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2300));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2300_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_weight_string_level_list_item_in_weight_string_levels12222);
            	        	        weight_string_level_list_item2301=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_item2301.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop657;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop657: ; /* 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:2319:1: weight_string_level_list_item : real_ulong_number ( ( 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    set2303;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL2304;
    pANTLR3_COMMON_TOKEN    REVERSE_SYMBOL2305;
    MySQLParser_real_ulong_number_return real_ulong_number2302;
    #undef	RETURN_TYPE_real_ulong_number2302
    #define	RETURN_TYPE_real_ulong_number2302 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE set2303_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL2304_tree;
    pANTLR3_BASE_TREE REVERSE_SYMBOL2305_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2303       = NULL;
    REVERSE_SYMBOL2304       = NULL;
    REVERSE_SYMBOL2305       = NULL;
    real_ulong_number2302.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2303_tree   = NULL;
    REVERSE_SYMBOL2304_tree   = NULL;
    REVERSE_SYMBOL2305_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2319:30: ( real_ulong_number ( ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )? | REVERSE_SYMBOL )? )
        // MySQL.g:2320:2: real_ulong_number ( ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )? | REVERSE_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_real_ulong_number_in_weight_string_level_list_item12236);
            real_ulong_number2302=real_ulong_number(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleweight_string_level_list_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number2302.tree);

            // MySQL.g:2321:2: ( ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )? | REVERSE_SYMBOL )?
            {
                int alt660=3;
                switch ( LA(1) )
                {
                    case ASC_SYMBOL:
                    case DESC_SYMBOL:
                    	{
                    		alt660=1;
                    	}
                        break;
                    case REVERSE_SYMBOL:
                    	{
                    		alt660=2;
                    	}
                        break;
                }

                switch (alt660)
                {
            	case 1:
            	    // MySQL.g:2322:3: ( ASC_SYMBOL | DESC_SYMBOL ) ( REVERSE_SYMBOL )?
            	    {
            	        set2303=(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, set2303))
            	            );
            	            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:2322:30: ( REVERSE_SYMBOL )?
            	        {
            	            int alt659=2;
            	            switch ( LA(1) )
            	            {
            	                case REVERSE_SYMBOL:
            	                	{
            	                		alt659=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt659)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2322:30: REVERSE_SYMBOL
            	        	    {
            	        	        REVERSE_SYMBOL2304 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12251);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleweight_string_level_list_itemEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        REVERSE_SYMBOL2304_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL2304));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL2304_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2323:5: REVERSE_SYMBOL
            	    {
            	        REVERSE_SYMBOL2305 = (pANTLR3_COMMON_TOKEN) MATCHT(REVERSE_SYMBOL, &FOLLOW_REVERSE_SYMBOL_in_weight_string_level_list_item12258);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleweight_string_level_list_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        REVERSE_SYMBOL2305_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REVERSE_SYMBOL2305));
            	        ADAPTOR->addChild(ADAPTOR, root_0, REVERSE_SYMBOL2305_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 date_time_type
 * MySQL.g:2327: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    set2306;

    pANTLR3_BASE_TREE set2306_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2306       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2306_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2327:15: ( DATE_SYMBOL | TIME_SYMBOL | DATETIME_SYMBOL | TIMESTAMP_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2306=(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, set2306))
                );
                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:2334: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_SYMBOL2307;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2308;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2310;
    pANTLR3_COMMON_TOKEN    LEADING_SYMBOL2312;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2314;
    pANTLR3_COMMON_TOKEN    TRAILING_SYMBOL2316;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2318;
    pANTLR3_COMMON_TOKEN    BOTH_SYMBOL2320;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2322;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2324;
    MySQLParser_expression_return expression2309;
    #undef	RETURN_TYPE_expression2309
    #define	RETURN_TYPE_expression2309 MySQLParser_expression_return

    MySQLParser_expression_return expression2311;
    #undef	RETURN_TYPE_expression2311
    #define	RETURN_TYPE_expression2311 MySQLParser_expression_return

    MySQLParser_expression_return expression2313;
    #undef	RETURN_TYPE_expression2313
    #define	RETURN_TYPE_expression2313 MySQLParser_expression_return

    MySQLParser_expression_return expression2315;
    #undef	RETURN_TYPE_expression2315
    #define	RETURN_TYPE_expression2315 MySQLParser_expression_return

    MySQLParser_expression_return expression2317;
    #undef	RETURN_TYPE_expression2317
    #define	RETURN_TYPE_expression2317 MySQLParser_expression_return

    MySQLParser_expression_return expression2319;
    #undef	RETURN_TYPE_expression2319
    #define	RETURN_TYPE_expression2319 MySQLParser_expression_return

    MySQLParser_expression_return expression2321;
    #undef	RETURN_TYPE_expression2321
    #define	RETURN_TYPE_expression2321 MySQLParser_expression_return

    MySQLParser_expression_return expression2323;
    #undef	RETURN_TYPE_expression2323
    #define	RETURN_TYPE_expression2323 MySQLParser_expression_return

    pANTLR3_BASE_TREE TRIM_SYMBOL2307_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2308_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2310_tree;
    pANTLR3_BASE_TREE LEADING_SYMBOL2312_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2314_tree;
    pANTLR3_BASE_TREE TRAILING_SYMBOL2316_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2318_tree;
    pANTLR3_BASE_TREE BOTH_SYMBOL2320_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2322_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2324_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TRIM_SYMBOL2307       = NULL;
    OPEN_PAR_SYMBOL2308       = NULL;
    FROM_SYMBOL2310       = NULL;
    LEADING_SYMBOL2312       = NULL;
    FROM_SYMBOL2314       = NULL;
    TRAILING_SYMBOL2316       = NULL;
    FROM_SYMBOL2318       = NULL;
    BOTH_SYMBOL2320       = NULL;
    FROM_SYMBOL2322       = NULL;
    CLOSE_PAR_SYMBOL2324       = NULL;
    expression2309.tree = NULL;

    expression2311.tree = NULL;

    expression2313.tree = NULL;

    expression2315.tree = NULL;

    expression2317.tree = NULL;

    expression2319.tree = NULL;

    expression2321.tree = NULL;

    expression2323.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TRIM_SYMBOL2307_tree   = NULL;
    OPEN_PAR_SYMBOL2308_tree   = NULL;
    FROM_SYMBOL2310_tree   = NULL;
    LEADING_SYMBOL2312_tree   = NULL;
    FROM_SYMBOL2314_tree   = NULL;
    TRAILING_SYMBOL2316_tree   = NULL;
    FROM_SYMBOL2318_tree   = NULL;
    BOTH_SYMBOL2320_tree   = NULL;
    FROM_SYMBOL2322_tree   = NULL;
    CLOSE_PAR_SYMBOL2324_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2334: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:2335: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_SYMBOL2307 = (pANTLR3_COMMON_TOKEN) MATCHT(TRIM_SYMBOL, &FOLLOW_TRIM_SYMBOL_in_trim_function12295);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            TRIM_SYMBOL2307_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRIM_SYMBOL2307));
            ADAPTOR->addChild(ADAPTOR, root_0, TRIM_SYMBOL2307_tree);
            }

            OPEN_PAR_SYMBOL2308 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_trim_function12297);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2308_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2308));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2308_tree);
            }

            // MySQL.g:2336:2: ( expression ( FROM_SYMBOL expression )? | LEADING_SYMBOL ( expression )? FROM_SYMBOL expression | TRAILING_SYMBOL ( expression )? FROM_SYMBOL expression | BOTH_SYMBOL ( expression )? FROM_SYMBOL expression )
            {
                int alt665=4;
                {
                    int LA665_0 = LA(1);
                    if ( (((LA665_0 >= ACCOUNT_SYMBOL) && (LA665_0 <= YEAR_SYMBOL)) || ((LA665_0 >= AT_AT_SIGN_SYMBOL) && (LA665_0 <= AT_TEXT_SUFFIX)) || LA665_0 == BACK_TICK_QUOTED_ID || ((LA665_0 >= BINARY_SYMBOL) && (LA665_0 <= BIN_NUMBER)) || LA665_0 == BITWISE_NOT_OPERATOR || ((LA665_0 >= BIT_AND_SYMBOL) && (LA665_0 <= BIT_XOR_SYMBOL)) || ((LA665_0 >= CASE_SYMBOL) && (LA665_0 <= CAST_SYMBOL)) || LA665_0 == CHAR_SYMBOL || ((LA665_0 >= CONVERT_SYMBOL) && (LA665_0 <= COUNT_SYMBOL)) || LA665_0 == CURDATE_SYMBOL || LA665_0 == CURRENT_USER_SYMBOL || LA665_0 == CURTIME_SYMBOL || LA665_0 == DATABASE_SYMBOL || LA665_0 == DATE_ADD_SYMBOL || LA665_0 == DATE_SUB_SYMBOL || LA665_0 == DECIMAL_NUMBER || LA665_0 == DOT_SYMBOL || LA665_0 == DOUBLE_QUOTED_TEXT || LA665_0 == EXISTS_SYMBOL || ((LA665_0 >= EXTRACT_SYMBOL) && (LA665_0 <= FALSE_SYMBOL)) || LA665_0 == FLOAT_NUMBER || LA665_0 == GROUP_CONCAT_SYMBOL || LA665_0 == HEX_NUMBER || ((LA665_0 >= IDENTIFIER) && (LA665_0 <= IF_SYMBOL)) || LA665_0 == INSERT_SYMBOL || LA665_0 == INTERVAL_SYMBOL || LA665_0 == INT_NUMBER || LA665_0 == LEFT_SYMBOL || LA665_0 == LOGICAL_NOT_OPERATOR || LA665_0 == LONG_NUMBER || LA665_0 == MATCH_SYMBOL || LA665_0 == MAX_SYMBOL || LA665_0 == MINUS_OPERATOR || LA665_0 == MIN_SYMBOL || LA665_0 == MOD_SYMBOL || LA665_0 == NCHAR_TEXT || LA665_0 == NOT2_SYMBOL || ((LA665_0 >= NOT_SYMBOL) && (LA665_0 <= NOW_SYMBOL)) || LA665_0 == NULL2_SYMBOL || LA665_0 == NULL_SYMBOL || ((LA665_0 >= OPEN_CURLY_SYMBOL) && (LA665_0 <= OPEN_PAR_SYMBOL)) || LA665_0 == PARAM_MARKER || ((LA665_0 >= PLUS_OPERATOR) && (LA665_0 <= POSITION_SYMBOL)) || ((LA665_0 >= REPEAT_SYMBOL) && (LA665_0 <= REPLACE_SYMBOL)) || LA665_0 == RIGHT_SYMBOL || LA665_0 == SINGLE_QUOTED_TEXT || LA665_0 == STDDEV_SAMP_SYMBOL || LA665_0 == STD_SYMBOL || LA665_0 == SUBSTRING_SYMBOL || ((LA665_0 >= SUM_SYMBOL) && (LA665_0 <= SYSDATE_SYMBOL)) || ((LA665_0 >= TRIM_SYMBOL) && (LA665_0 <= TRUE_SYMBOL)) || LA665_0 == ULONGLONG_NUMBER || LA665_0 == UNDERSCORE_CHARSET || ((LA665_0 >= UTC_DATE_SYMBOL) && (LA665_0 <= UTC_TIME_SYMBOL)) || LA665_0 == VALUES_SYMBOL || LA665_0 == VARIANCE_SYMBOL || LA665_0 == VAR_SAMP_SYMBOL))
                    {
                        alt665=1;
                    }
                    else if ( (LA665_0 == LEADING_SYMBOL))
                    {
                        alt665=2;
                    }
                    else if ( (LA665_0 == TRAILING_SYMBOL))
                    {
                        alt665=3;
                    }
                    else if ( (LA665_0 == BOTH_SYMBOL))
                    {
                        alt665=4;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 665;
                        EXCEPTION->state        = 0;


                        goto ruletrim_functionEx;

                    }
                }
                switch (alt665)
                {
            	case 1:
            	    // MySQL.g:2337:3: expression ( FROM_SYMBOL expression )?
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12304);
            	        expression2309=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2309.tree);

            	        // MySQL.g:2337:14: ( FROM_SYMBOL expression )?
            	        {
            	            int alt661=2;
            	            switch ( LA(1) )
            	            {
            	                case FROM_SYMBOL:
            	                	{
            	                		alt661=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt661)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2337:15: FROM_SYMBOL expression
            	        	    {
            	        	        FROM_SYMBOL2310 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function12307);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FROM_SYMBOL2310_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2310));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2310_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12309);
            	        	        expression2311=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2311.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2338:5: LEADING_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        LEADING_SYMBOL2312 = (pANTLR3_COMMON_TOKEN) MATCHT(LEADING_SYMBOL, &FOLLOW_LEADING_SYMBOL_in_trim_function12317);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        LEADING_SYMBOL2312_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEADING_SYMBOL2312));
            	        ADAPTOR->addChild(ADAPTOR, root_0, LEADING_SYMBOL2312_tree);
            	        }

            	        // MySQL.g:2338:20: ( expression )?
            	        {
            	            int alt662=2;
            	            {
            	                int LA662_0 = LA(1);
            	                if ( (((LA662_0 >= ACCOUNT_SYMBOL) && (LA662_0 <= YEAR_SYMBOL)) || ((LA662_0 >= AT_AT_SIGN_SYMBOL) && (LA662_0 <= AT_TEXT_SUFFIX)) || LA662_0 == BACK_TICK_QUOTED_ID || ((LA662_0 >= BINARY_SYMBOL) && (LA662_0 <= BIN_NUMBER)) || LA662_0 == BITWISE_NOT_OPERATOR || ((LA662_0 >= BIT_AND_SYMBOL) && (LA662_0 <= BIT_XOR_SYMBOL)) || ((LA662_0 >= CASE_SYMBOL) && (LA662_0 <= CAST_SYMBOL)) || LA662_0 == CHAR_SYMBOL || ((LA662_0 >= CONVERT_SYMBOL) && (LA662_0 <= COUNT_SYMBOL)) || LA662_0 == CURDATE_SYMBOL || LA662_0 == CURRENT_USER_SYMBOL || LA662_0 == CURTIME_SYMBOL || LA662_0 == DATABASE_SYMBOL || LA662_0 == DATE_ADD_SYMBOL || LA662_0 == DATE_SUB_SYMBOL || LA662_0 == DECIMAL_NUMBER || LA662_0 == DOT_SYMBOL || LA662_0 == DOUBLE_QUOTED_TEXT || LA662_0 == EXISTS_SYMBOL || ((LA662_0 >= EXTRACT_SYMBOL) && (LA662_0 <= FALSE_SYMBOL)) || LA662_0 == FLOAT_NUMBER || LA662_0 == GROUP_CONCAT_SYMBOL || LA662_0 == HEX_NUMBER || ((LA662_0 >= IDENTIFIER) && (LA662_0 <= IF_SYMBOL)) || LA662_0 == INSERT_SYMBOL || LA662_0 == INTERVAL_SYMBOL || LA662_0 == INT_NUMBER || LA662_0 == LEFT_SYMBOL || LA662_0 == LOGICAL_NOT_OPERATOR || LA662_0 == LONG_NUMBER || LA662_0 == MATCH_SYMBOL || LA662_0 == MAX_SYMBOL || LA662_0 == MINUS_OPERATOR || LA662_0 == MIN_SYMBOL || LA662_0 == MOD_SYMBOL || LA662_0 == NCHAR_TEXT || LA662_0 == NOT2_SYMBOL || ((LA662_0 >= NOT_SYMBOL) && (LA662_0 <= NOW_SYMBOL)) || LA662_0 == NULL2_SYMBOL || LA662_0 == NULL_SYMBOL || ((LA662_0 >= OPEN_CURLY_SYMBOL) && (LA662_0 <= OPEN_PAR_SYMBOL)) || LA662_0 == PARAM_MARKER || ((LA662_0 >= PLUS_OPERATOR) && (LA662_0 <= POSITION_SYMBOL)) || ((LA662_0 >= REPEAT_SYMBOL) && (LA662_0 <= REPLACE_SYMBOL)) || LA662_0 == RIGHT_SYMBOL || LA662_0 == SINGLE_QUOTED_TEXT || LA662_0 == STDDEV_SAMP_SYMBOL || LA662_0 == STD_SYMBOL || LA662_0 == SUBSTRING_SYMBOL || ((LA662_0 >= SUM_SYMBOL) && (LA662_0 <= SYSDATE_SYMBOL)) || ((LA662_0 >= TRIM_SYMBOL) && (LA662_0 <= TRUE_SYMBOL)) || LA662_0 == ULONGLONG_NUMBER || LA662_0 == UNDERSCORE_CHARSET || ((LA662_0 >= UTC_DATE_SYMBOL) && (LA662_0 <= UTC_TIME_SYMBOL)) || LA662_0 == VALUES_SYMBOL || LA662_0 == VARIANCE_SYMBOL || LA662_0 == VAR_SAMP_SYMBOL))
            	                {
            	                    alt662=1;
            	                }
            	            }
            	            switch (alt662)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2338:20: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12319);
            	        	        expression2313=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2313.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2314 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function12322);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2314_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2314));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2314_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12324);
            	        expression2315=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2315.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2339:5: TRAILING_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        TRAILING_SYMBOL2316 = (pANTLR3_COMMON_TOKEN) MATCHT(TRAILING_SYMBOL, &FOLLOW_TRAILING_SYMBOL_in_trim_function12330);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        TRAILING_SYMBOL2316_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TRAILING_SYMBOL2316));
            	        ADAPTOR->addChild(ADAPTOR, root_0, TRAILING_SYMBOL2316_tree);
            	        }

            	        // MySQL.g:2339:21: ( expression )?
            	        {
            	            int alt663=2;
            	            {
            	                int LA663_0 = LA(1);
            	                if ( (((LA663_0 >= ACCOUNT_SYMBOL) && (LA663_0 <= YEAR_SYMBOL)) || ((LA663_0 >= AT_AT_SIGN_SYMBOL) && (LA663_0 <= AT_TEXT_SUFFIX)) || LA663_0 == BACK_TICK_QUOTED_ID || ((LA663_0 >= BINARY_SYMBOL) && (LA663_0 <= BIN_NUMBER)) || LA663_0 == BITWISE_NOT_OPERATOR || ((LA663_0 >= BIT_AND_SYMBOL) && (LA663_0 <= BIT_XOR_SYMBOL)) || ((LA663_0 >= CASE_SYMBOL) && (LA663_0 <= CAST_SYMBOL)) || LA663_0 == CHAR_SYMBOL || ((LA663_0 >= CONVERT_SYMBOL) && (LA663_0 <= COUNT_SYMBOL)) || LA663_0 == CURDATE_SYMBOL || LA663_0 == CURRENT_USER_SYMBOL || LA663_0 == CURTIME_SYMBOL || LA663_0 == DATABASE_SYMBOL || LA663_0 == DATE_ADD_SYMBOL || LA663_0 == DATE_SUB_SYMBOL || LA663_0 == DECIMAL_NUMBER || LA663_0 == DOT_SYMBOL || LA663_0 == DOUBLE_QUOTED_TEXT || LA663_0 == EXISTS_SYMBOL || ((LA663_0 >= EXTRACT_SYMBOL) && (LA663_0 <= FALSE_SYMBOL)) || LA663_0 == FLOAT_NUMBER || LA663_0 == GROUP_CONCAT_SYMBOL || LA663_0 == HEX_NUMBER || ((LA663_0 >= IDENTIFIER) && (LA663_0 <= IF_SYMBOL)) || LA663_0 == INSERT_SYMBOL || LA663_0 == INTERVAL_SYMBOL || LA663_0 == INT_NUMBER || LA663_0 == LEFT_SYMBOL || LA663_0 == LOGICAL_NOT_OPERATOR || LA663_0 == LONG_NUMBER || LA663_0 == MATCH_SYMBOL || LA663_0 == MAX_SYMBOL || LA663_0 == MINUS_OPERATOR || LA663_0 == MIN_SYMBOL || LA663_0 == MOD_SYMBOL || LA663_0 == NCHAR_TEXT || LA663_0 == NOT2_SYMBOL || ((LA663_0 >= NOT_SYMBOL) && (LA663_0 <= NOW_SYMBOL)) || LA663_0 == NULL2_SYMBOL || LA663_0 == NULL_SYMBOL || ((LA663_0 >= OPEN_CURLY_SYMBOL) && (LA663_0 <= OPEN_PAR_SYMBOL)) || LA663_0 == PARAM_MARKER || ((LA663_0 >= PLUS_OPERATOR) && (LA663_0 <= POSITION_SYMBOL)) || ((LA663_0 >= REPEAT_SYMBOL) && (LA663_0 <= REPLACE_SYMBOL)) || LA663_0 == RIGHT_SYMBOL || LA663_0 == SINGLE_QUOTED_TEXT || LA663_0 == STDDEV_SAMP_SYMBOL || LA663_0 == STD_SYMBOL || LA663_0 == SUBSTRING_SYMBOL || ((LA663_0 >= SUM_SYMBOL) && (LA663_0 <= SYSDATE_SYMBOL)) || ((LA663_0 >= TRIM_SYMBOL) && (LA663_0 <= TRUE_SYMBOL)) || LA663_0 == ULONGLONG_NUMBER || LA663_0 == UNDERSCORE_CHARSET || ((LA663_0 >= UTC_DATE_SYMBOL) && (LA663_0 <= UTC_TIME_SYMBOL)) || LA663_0 == VALUES_SYMBOL || LA663_0 == VARIANCE_SYMBOL || LA663_0 == VAR_SAMP_SYMBOL))
            	                {
            	                    alt663=1;
            	                }
            	            }
            	            switch (alt663)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2339:21: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12332);
            	        	        expression2317=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2317.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2318 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function12335);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2318_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2318));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2318_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12337);
            	        expression2319=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2319.tree);

            	    }
            	    break;
            	case 4:
            	    // MySQL.g:2340:5: BOTH_SYMBOL ( expression )? FROM_SYMBOL expression
            	    {
            	        BOTH_SYMBOL2320 = (pANTLR3_COMMON_TOKEN) MATCHT(BOTH_SYMBOL, &FOLLOW_BOTH_SYMBOL_in_trim_function12343);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BOTH_SYMBOL2320_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOTH_SYMBOL2320));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BOTH_SYMBOL2320_tree);
            	        }

            	        // MySQL.g:2340:17: ( expression )?
            	        {
            	            int alt664=2;
            	            {
            	                int LA664_0 = LA(1);
            	                if ( (((LA664_0 >= ACCOUNT_SYMBOL) && (LA664_0 <= YEAR_SYMBOL)) || ((LA664_0 >= AT_AT_SIGN_SYMBOL) && (LA664_0 <= AT_TEXT_SUFFIX)) || LA664_0 == BACK_TICK_QUOTED_ID || ((LA664_0 >= BINARY_SYMBOL) && (LA664_0 <= BIN_NUMBER)) || LA664_0 == BITWISE_NOT_OPERATOR || ((LA664_0 >= BIT_AND_SYMBOL) && (LA664_0 <= BIT_XOR_SYMBOL)) || ((LA664_0 >= CASE_SYMBOL) && (LA664_0 <= CAST_SYMBOL)) || LA664_0 == CHAR_SYMBOL || ((LA664_0 >= CONVERT_SYMBOL) && (LA664_0 <= COUNT_SYMBOL)) || LA664_0 == CURDATE_SYMBOL || LA664_0 == CURRENT_USER_SYMBOL || LA664_0 == CURTIME_SYMBOL || LA664_0 == DATABASE_SYMBOL || LA664_0 == DATE_ADD_SYMBOL || LA664_0 == DATE_SUB_SYMBOL || LA664_0 == DECIMAL_NUMBER || LA664_0 == DOT_SYMBOL || LA664_0 == DOUBLE_QUOTED_TEXT || LA664_0 == EXISTS_SYMBOL || ((LA664_0 >= EXTRACT_SYMBOL) && (LA664_0 <= FALSE_SYMBOL)) || LA664_0 == FLOAT_NUMBER || LA664_0 == GROUP_CONCAT_SYMBOL || LA664_0 == HEX_NUMBER || ((LA664_0 >= IDENTIFIER) && (LA664_0 <= IF_SYMBOL)) || LA664_0 == INSERT_SYMBOL || LA664_0 == INTERVAL_SYMBOL || LA664_0 == INT_NUMBER || LA664_0 == LEFT_SYMBOL || LA664_0 == LOGICAL_NOT_OPERATOR || LA664_0 == LONG_NUMBER || LA664_0 == MATCH_SYMBOL || LA664_0 == MAX_SYMBOL || LA664_0 == MINUS_OPERATOR || LA664_0 == MIN_SYMBOL || LA664_0 == MOD_SYMBOL || LA664_0 == NCHAR_TEXT || LA664_0 == NOT2_SYMBOL || ((LA664_0 >= NOT_SYMBOL) && (LA664_0 <= NOW_SYMBOL)) || LA664_0 == NULL2_SYMBOL || LA664_0 == NULL_SYMBOL || ((LA664_0 >= OPEN_CURLY_SYMBOL) && (LA664_0 <= OPEN_PAR_SYMBOL)) || LA664_0 == PARAM_MARKER || ((LA664_0 >= PLUS_OPERATOR) && (LA664_0 <= POSITION_SYMBOL)) || ((LA664_0 >= REPEAT_SYMBOL) && (LA664_0 <= REPLACE_SYMBOL)) || LA664_0 == RIGHT_SYMBOL || LA664_0 == SINGLE_QUOTED_TEXT || LA664_0 == STDDEV_SAMP_SYMBOL || LA664_0 == STD_SYMBOL || LA664_0 == SUBSTRING_SYMBOL || ((LA664_0 >= SUM_SYMBOL) && (LA664_0 <= SYSDATE_SYMBOL)) || ((LA664_0 >= TRIM_SYMBOL) && (LA664_0 <= TRUE_SYMBOL)) || LA664_0 == ULONGLONG_NUMBER || LA664_0 == UNDERSCORE_CHARSET || ((LA664_0 >= UTC_DATE_SYMBOL) && (LA664_0 <= UTC_TIME_SYMBOL)) || LA664_0 == VALUES_SYMBOL || LA664_0 == VARIANCE_SYMBOL || LA664_0 == VAR_SAMP_SYMBOL))
            	                {
            	                    alt664=1;
            	                }
            	            }
            	            switch (alt664)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2340:17: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12345);
            	        	        expression2321=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruletrim_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2321.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FROM_SYMBOL2322 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_trim_function12348);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2322_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2322));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2322_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_trim_function12350);
            	        expression2323=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletrim_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2323.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2324 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_trim_function12356);
            if  (HASEXCEPTION())
            {
                goto ruletrim_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2324_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2324));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2324_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:2345: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_SYMBOL2325;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2326;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2328;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2330;
    pANTLR3_COMMON_TOKEN    FROM_SYMBOL2332;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2334;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2336;
    MySQLParser_expression_return expression2327;
    #undef	RETURN_TYPE_expression2327
    #define	RETURN_TYPE_expression2327 MySQLParser_expression_return

    MySQLParser_expression_return expression2329;
    #undef	RETURN_TYPE_expression2329
    #define	RETURN_TYPE_expression2329 MySQLParser_expression_return

    MySQLParser_expression_return expression2331;
    #undef	RETURN_TYPE_expression2331
    #define	RETURN_TYPE_expression2331 MySQLParser_expression_return

    MySQLParser_expression_return expression2333;
    #undef	RETURN_TYPE_expression2333
    #define	RETURN_TYPE_expression2333 MySQLParser_expression_return

    MySQLParser_expression_return expression2335;
    #undef	RETURN_TYPE_expression2335
    #define	RETURN_TYPE_expression2335 MySQLParser_expression_return

    pANTLR3_BASE_TREE SUBSTRING_SYMBOL2325_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2326_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2328_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2330_tree;
    pANTLR3_BASE_TREE FROM_SYMBOL2332_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2334_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2336_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SUBSTRING_SYMBOL2325       = NULL;
    OPEN_PAR_SYMBOL2326       = NULL;
    COMMA_SYMBOL2328       = NULL;
    COMMA_SYMBOL2330       = NULL;
    FROM_SYMBOL2332       = NULL;
    FOR_SYMBOL2334       = NULL;
    CLOSE_PAR_SYMBOL2336       = NULL;
    expression2327.tree = NULL;

    expression2329.tree = NULL;

    expression2331.tree = NULL;

    expression2333.tree = NULL;

    expression2335.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SUBSTRING_SYMBOL2325_tree   = NULL;
    OPEN_PAR_SYMBOL2326_tree   = NULL;
    COMMA_SYMBOL2328_tree   = NULL;
    COMMA_SYMBOL2330_tree   = NULL;
    FROM_SYMBOL2332_tree   = NULL;
    FOR_SYMBOL2334_tree   = NULL;
    CLOSE_PAR_SYMBOL2336_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2345:19: ( SUBSTRING_SYMBOL OPEN_PAR_SYMBOL expression ( COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? | FROM_SYMBOL expression ( FOR_SYMBOL expression )? ) CLOSE_PAR_SYMBOL )
        // MySQL.g:2346: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_SYMBOL2325 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBSTRING_SYMBOL, &FOLLOW_SUBSTRING_SYMBOL_in_substring_function12365);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SUBSTRING_SYMBOL2325_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBSTRING_SYMBOL2325));
            ADAPTOR->addChild(ADAPTOR, root_0, SUBSTRING_SYMBOL2325_tree);
            }

            OPEN_PAR_SYMBOL2326 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_substring_function12367);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2326_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2326));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2326_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_substring_function12369);
            expression2327=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2327.tree);

            // MySQL.g:2347:2: ( COMMA_SYMBOL expression ( COMMA_SYMBOL expression )? | FROM_SYMBOL expression ( FOR_SYMBOL expression )? )
            {
                int alt668=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt668=1;
                	}
                    break;
                case FROM_SYMBOL:
                	{
                		alt668=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 668;
                    EXCEPTION->state        = 0;


                    goto rulesubstring_functionEx;

                }

                switch (alt668)
                {
            	case 1:
            	    // MySQL.g:2348:3: COMMA_SYMBOL expression ( COMMA_SYMBOL expression )?
            	    {
            	        COMMA_SYMBOL2328 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_substring_function12376);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2328_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2328));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2328_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_substring_function12378);
            	        expression2329=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2329.tree);

            	        // MySQL.g:2348:27: ( COMMA_SYMBOL expression )?
            	        {
            	            int alt666=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt666=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt666)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2348:28: COMMA_SYMBOL expression
            	        	    {
            	        	        COMMA_SYMBOL2330 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_substring_function12381);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2330_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2330));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2330_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_substring_function12383);
            	        	        expression2331=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2331.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2349:5: FROM_SYMBOL expression ( FOR_SYMBOL expression )?
            	    {
            	        FROM_SYMBOL2332 = (pANTLR3_COMMON_TOKEN) MATCHT(FROM_SYMBOL, &FOLLOW_FROM_SYMBOL_in_substring_function12391);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        FROM_SYMBOL2332_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FROM_SYMBOL2332));
            	        ADAPTOR->addChild(ADAPTOR, root_0, FROM_SYMBOL2332_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_substring_function12393);
            	        expression2333=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubstring_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2333.tree);

            	        // MySQL.g:2349:28: ( FOR_SYMBOL expression )?
            	        {
            	            int alt667=2;
            	            switch ( LA(1) )
            	            {
            	                case FOR_SYMBOL:
            	                	{
            	                		alt667=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt667)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2349:29: FOR_SYMBOL expression
            	        	    {
            	        	        FOR_SYMBOL2334 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_substring_function12396);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        FOR_SYMBOL2334_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2334));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2334_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_substring_function12398);
            	        	        expression2335=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesubstring_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2335.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2336 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_substring_function12406);
            if  (HASEXCEPTION())
            {
                goto rulesubstring_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2336_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2336));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2336_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:2354:1: geometry_function : ( GEOMETRYCOLLECTION_SYMBOL optional_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 |{...}? CONTAINS_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL );
 */
static MySQLParser_geometry_function_return
geometry_function(pMySQLParser ctx)
{
    MySQLParser_geometry_function_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    GEOMETRYCOLLECTION_SYMBOL2337;
    pANTLR3_COMMON_TOKEN    LINESTRING_SYMBOL2339;
    pANTLR3_COMMON_TOKEN    MULTILINESTRING_SYMBOL2341;
    pANTLR3_COMMON_TOKEN    MULTIPOINT_SYMBOL2343;
    pANTLR3_COMMON_TOKEN    MULTIPOLYGON_SYMBOL2345;
    pANTLR3_COMMON_TOKEN    POINT_SYMBOL2347;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2348;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2350;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2352;
    pANTLR3_COMMON_TOKEN    POLYGON_SYMBOL2353;
    pANTLR3_COMMON_TOKEN    CONTAINS_SYMBOL2355;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2356;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2358;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2360;
    MySQLParser_optional_expression_list_with_parentheses_return optional_expression_list_with_parentheses2338;
    #undef	RETURN_TYPE_optional_expression_list_with_parentheses2338
    #define	RETURN_TYPE_optional_expression_list_with_parentheses2338 MySQLParser_optional_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2340;
    #undef	RETURN_TYPE_expression_list_with_parentheses2340
    #define	RETURN_TYPE_expression_list_with_parentheses2340 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2342;
    #undef	RETURN_TYPE_expression_list_with_parentheses2342
    #define	RETURN_TYPE_expression_list_with_parentheses2342 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2344;
    #undef	RETURN_TYPE_expression_list_with_parentheses2344
    #define	RETURN_TYPE_expression_list_with_parentheses2344 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2346;
    #undef	RETURN_TYPE_expression_list_with_parentheses2346
    #define	RETURN_TYPE_expression_list_with_parentheses2346 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression2349;
    #undef	RETURN_TYPE_expression2349
    #define	RETURN_TYPE_expression2349 MySQLParser_expression_return

    MySQLParser_expression_return expression2351;
    #undef	RETURN_TYPE_expression2351
    #define	RETURN_TYPE_expression2351 MySQLParser_expression_return

    MySQLParser_expression_list_with_parentheses_return expression_list_with_parentheses2354;
    #undef	RETURN_TYPE_expression_list_with_parentheses2354
    #define	RETURN_TYPE_expression_list_with_parentheses2354 MySQLParser_expression_list_with_parentheses_return

    MySQLParser_expression_return expression2357;
    #undef	RETURN_TYPE_expression2357
    #define	RETURN_TYPE_expression2357 MySQLParser_expression_return

    MySQLParser_expression_return expression2359;
    #undef	RETURN_TYPE_expression2359
    #define	RETURN_TYPE_expression2359 MySQLParser_expression_return

    pANTLR3_BASE_TREE GEOMETRYCOLLECTION_SYMBOL2337_tree;
    pANTLR3_BASE_TREE LINESTRING_SYMBOL2339_tree;
    pANTLR3_BASE_TREE MULTILINESTRING_SYMBOL2341_tree;
    pANTLR3_BASE_TREE MULTIPOINT_SYMBOL2343_tree;
    pANTLR3_BASE_TREE MULTIPOLYGON_SYMBOL2345_tree;
    pANTLR3_BASE_TREE POINT_SYMBOL2347_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2348_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2350_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2352_tree;
    pANTLR3_BASE_TREE POLYGON_SYMBOL2353_tree;
    pANTLR3_BASE_TREE CONTAINS_SYMBOL2355_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2356_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2358_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2360_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GEOMETRYCOLLECTION_SYMBOL2337       = NULL;
    LINESTRING_SYMBOL2339       = NULL;
    MULTILINESTRING_SYMBOL2341       = NULL;
    MULTIPOINT_SYMBOL2343       = NULL;
    MULTIPOLYGON_SYMBOL2345       = NULL;
    POINT_SYMBOL2347       = NULL;
    OPEN_PAR_SYMBOL2348       = NULL;
    COMMA_SYMBOL2350       = NULL;
    CLOSE_PAR_SYMBOL2352       = NULL;
    POLYGON_SYMBOL2353       = NULL;
    CONTAINS_SYMBOL2355       = NULL;
    OPEN_PAR_SYMBOL2356       = NULL;
    COMMA_SYMBOL2358       = NULL;
    CLOSE_PAR_SYMBOL2360       = NULL;
    optional_expression_list_with_parentheses2338.tree = NULL;

    expression_list_with_parentheses2340.tree = NULL;

    expression_list_with_parentheses2342.tree = NULL;

    expression_list_with_parentheses2344.tree = NULL;

    expression_list_with_parentheses2346.tree = NULL;

    expression2349.tree = NULL;

    expression2351.tree = NULL;

    expression_list_with_parentheses2354.tree = NULL;

    expression2357.tree = NULL;

    expression2359.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GEOMETRYCOLLECTION_SYMBOL2337_tree   = NULL;
    LINESTRING_SYMBOL2339_tree   = NULL;
    MULTILINESTRING_SYMBOL2341_tree   = NULL;
    MULTIPOINT_SYMBOL2343_tree   = NULL;
    MULTIPOLYGON_SYMBOL2345_tree   = NULL;
    POINT_SYMBOL2347_tree   = NULL;
    OPEN_PAR_SYMBOL2348_tree   = NULL;
    COMMA_SYMBOL2350_tree   = NULL;
    CLOSE_PAR_SYMBOL2352_tree   = NULL;
    POLYGON_SYMBOL2353_tree   = NULL;
    CONTAINS_SYMBOL2355_tree   = NULL;
    OPEN_PAR_SYMBOL2356_tree   = NULL;
    COMMA_SYMBOL2358_tree   = NULL;
    CLOSE_PAR_SYMBOL2360_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2354:18: ( GEOMETRYCOLLECTION_SYMBOL optional_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 |{...}? CONTAINS_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt669;

            alt669=8;

            switch ( LA(1) )
            {
            case GEOMETRYCOLLECTION_SYMBOL:
            	{
            		alt669=1;
            	}
                break;
            case LINESTRING_SYMBOL:
            	{
            		alt669=2;
            	}
                break;
            case MULTILINESTRING_SYMBOL:
            	{
            		alt669=3;
            	}
                break;
            case MULTIPOINT_SYMBOL:
            	{
            		alt669=4;
            	}
                break;
            case MULTIPOLYGON_SYMBOL:
            	{
            		alt669=5;
            	}
                break;
            case POINT_SYMBOL:
            	{
            		alt669=6;
            	}
                break;
            case POLYGON_SYMBOL:
            	{
            		alt669=7;
            	}
                break;
            case CONTAINS_SYMBOL:
            	{
            		alt669=8;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 669;
                EXCEPTION->state        = 0;


                goto rulegeometry_functionEx;

            }

            switch (alt669)
            {
        	case 1:
        	    // MySQL.g:2355:2: GEOMETRYCOLLECTION_SYMBOL optional_expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GEOMETRYCOLLECTION_SYMBOL2337 = (pANTLR3_COMMON_TOKEN) MATCHT(GEOMETRYCOLLECTION_SYMBOL, &FOLLOW_GEOMETRYCOLLECTION_SYMBOL_in_geometry_function12416);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GEOMETRYCOLLECTION_SYMBOL2337_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GEOMETRYCOLLECTION_SYMBOL2337));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GEOMETRYCOLLECTION_SYMBOL2337_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_optional_expression_list_with_parentheses_in_geometry_function12418);
        	        optional_expression_list_with_parentheses2338=optional_expression_list_with_parentheses(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, optional_expression_list_with_parentheses2338.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2356:4: LINESTRING_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LINESTRING_SYMBOL2339 = (pANTLR3_COMMON_TOKEN) MATCHT(LINESTRING_SYMBOL, &FOLLOW_LINESTRING_SYMBOL_in_geometry_function12423);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LINESTRING_SYMBOL2339_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINESTRING_SYMBOL2339));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LINESTRING_SYMBOL2339_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12425);
        	        expression_list_with_parentheses2340=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_parentheses2340.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2357:4: MULTILINESTRING_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTILINESTRING_SYMBOL2341 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTILINESTRING_SYMBOL, &FOLLOW_MULTILINESTRING_SYMBOL_in_geometry_function12430);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTILINESTRING_SYMBOL2341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTILINESTRING_SYMBOL2341));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTILINESTRING_SYMBOL2341_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12432);
        	        expression_list_with_parentheses2342=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_parentheses2342.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2358:4: MULTIPOINT_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTIPOINT_SYMBOL2343 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTIPOINT_SYMBOL, &FOLLOW_MULTIPOINT_SYMBOL_in_geometry_function12437);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTIPOINT_SYMBOL2343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTIPOINT_SYMBOL2343));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTIPOINT_SYMBOL2343_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12439);
        	        expression_list_with_parentheses2344=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_parentheses2344.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2359:4: MULTIPOLYGON_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MULTIPOLYGON_SYMBOL2345 = (pANTLR3_COMMON_TOKEN) MATCHT(MULTIPOLYGON_SYMBOL, &FOLLOW_MULTIPOLYGON_SYMBOL_in_geometry_function12444);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MULTIPOLYGON_SYMBOL2345_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULTIPOLYGON_SYMBOL2345));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MULTIPOLYGON_SYMBOL2345_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12446);
        	        expression_list_with_parentheses2346=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_parentheses2346.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2360:4: POINT_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POINT_SYMBOL2347 = (pANTLR3_COMMON_TOKEN) MATCHT(POINT_SYMBOL, &FOLLOW_POINT_SYMBOL_in_geometry_function12451);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POINT_SYMBOL2347_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POINT_SYMBOL2347));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POINT_SYMBOL2347_tree);
        	        }

        	        OPEN_PAR_SYMBOL2348 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12453);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2348_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2348));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2348_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function12455);
        	        expression2349=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2349.tree);

        	        COMMA_SYMBOL2350 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_geometry_function12457);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2350_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2350));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2350_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function12459);
        	        expression2351=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2351.tree);

        	        CLOSE_PAR_SYMBOL2352 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12461);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2352_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2352));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2352_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2361:4: POLYGON_SYMBOL expression_list_with_parentheses
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        POLYGON_SYMBOL2353 = (pANTLR3_COMMON_TOKEN) MATCHT(POLYGON_SYMBOL, &FOLLOW_POLYGON_SYMBOL_in_geometry_function12466);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        POLYGON_SYMBOL2353_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, POLYGON_SYMBOL2353));
        	        ADAPTOR->addChild(ADAPTOR, root_0, POLYGON_SYMBOL2353_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_with_parentheses_in_geometry_function12468);
        	        expression_list_with_parentheses2354=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_parentheses2354.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2362:4: {...}? CONTAINS_SYMBOL OPEN_PAR_SYMBOL expression COMMA_SYMBOL expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION < 50706)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION < 50706";
        	                EXCEPTION->ruleName	 = (void *)"geometry_function";


        	        }

        	        CONTAINS_SYMBOL2355 = (pANTLR3_COMMON_TOKEN) MATCHT(CONTAINS_SYMBOL, &FOLLOW_CONTAINS_SYMBOL_in_geometry_function12475);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONTAINS_SYMBOL2355_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONTAINS_SYMBOL2355));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONTAINS_SYMBOL2355_tree);
        	        }

        	        OPEN_PAR_SYMBOL2356 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_geometry_function12477);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2356_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2356));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2356_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function12479);
        	        expression2357=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2357.tree);

        	        COMMA_SYMBOL2358 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_geometry_function12481);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMA_SYMBOL2358_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2358));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2358_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_geometry_function12483);
        	        expression2359=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2359.tree);

        	        CLOSE_PAR_SYMBOL2360 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_geometry_function12485);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegeometry_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2360_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2360));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2360_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:2365:1: aggregate_function : ( AVG_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL | BIT_AND_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | BIT_OR_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | BIT_XOR_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | count_function | MIN_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL | MAX_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL | STD_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | VARIANCE_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | STDDEV_SAMP_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | VAR_SAMP_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | SUM_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL | GROUP_CONCAT_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression_list ( order_by_clause )? ( SEPARATOR_SYMBOL text_string )? 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_SYMBOL2361;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2362;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2363;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2365;
    pANTLR3_COMMON_TOKEN    BIT_AND_SYMBOL2366;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2367;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2369;
    pANTLR3_COMMON_TOKEN    BIT_OR_SYMBOL2370;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2371;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2373;
    pANTLR3_COMMON_TOKEN    BIT_XOR_SYMBOL2374;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2375;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2377;
    pANTLR3_COMMON_TOKEN    MIN_SYMBOL2379;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2380;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2381;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2383;
    pANTLR3_COMMON_TOKEN    MAX_SYMBOL2384;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2385;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2386;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2388;
    pANTLR3_COMMON_TOKEN    STD_SYMBOL2389;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2390;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2392;
    pANTLR3_COMMON_TOKEN    VARIANCE_SYMBOL2393;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2394;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2396;
    pANTLR3_COMMON_TOKEN    STDDEV_SAMP_SYMBOL2397;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2398;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2400;
    pANTLR3_COMMON_TOKEN    VAR_SAMP_SYMBOL2401;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2402;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2404;
    pANTLR3_COMMON_TOKEN    SUM_SYMBOL2405;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2406;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2407;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2409;
    pANTLR3_COMMON_TOKEN    GROUP_CONCAT_SYMBOL2410;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2411;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2412;
    pANTLR3_COMMON_TOKEN    SEPARATOR_SYMBOL2415;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2417;
    MySQLParser_in_aggregate_expression_return in_aggregate_expression2364;
    #undef	RETURN_TYPE_in_aggregate_expression2364
    #define	RETURN_TYPE_in_aggregate_expression2364 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2368;
    #undef	RETURN_TYPE_in_aggregate_expression2368
    #define	RETURN_TYPE_in_aggregate_expression2368 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2372;
    #undef	RETURN_TYPE_in_aggregate_expression2372
    #define	RETURN_TYPE_in_aggregate_expression2372 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2376;
    #undef	RETURN_TYPE_in_aggregate_expression2376
    #define	RETURN_TYPE_in_aggregate_expression2376 MySQLParser_in_aggregate_expression_return

    MySQLParser_count_function_return count_function2378;
    #undef	RETURN_TYPE_count_function2378
    #define	RETURN_TYPE_count_function2378 MySQLParser_count_function_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2382;
    #undef	RETURN_TYPE_in_aggregate_expression2382
    #define	RETURN_TYPE_in_aggregate_expression2382 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2387;
    #undef	RETURN_TYPE_in_aggregate_expression2387
    #define	RETURN_TYPE_in_aggregate_expression2387 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2391;
    #undef	RETURN_TYPE_in_aggregate_expression2391
    #define	RETURN_TYPE_in_aggregate_expression2391 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2395;
    #undef	RETURN_TYPE_in_aggregate_expression2395
    #define	RETURN_TYPE_in_aggregate_expression2395 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2399;
    #undef	RETURN_TYPE_in_aggregate_expression2399
    #define	RETURN_TYPE_in_aggregate_expression2399 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2403;
    #undef	RETURN_TYPE_in_aggregate_expression2403
    #define	RETURN_TYPE_in_aggregate_expression2403 MySQLParser_in_aggregate_expression_return

    MySQLParser_in_aggregate_expression_return in_aggregate_expression2408;
    #undef	RETURN_TYPE_in_aggregate_expression2408
    #define	RETURN_TYPE_in_aggregate_expression2408 MySQLParser_in_aggregate_expression_return

    MySQLParser_expression_list_return expression_list2413;
    #undef	RETURN_TYPE_expression_list2413
    #define	RETURN_TYPE_expression_list2413 MySQLParser_expression_list_return

    MySQLParser_order_by_clause_return order_by_clause2414;
    #undef	RETURN_TYPE_order_by_clause2414
    #define	RETURN_TYPE_order_by_clause2414 MySQLParser_order_by_clause_return

    MySQLParser_text_string_return text_string2416;
    #undef	RETURN_TYPE_text_string2416
    #define	RETURN_TYPE_text_string2416 MySQLParser_text_string_return

    pANTLR3_BASE_TREE AVG_SYMBOL2361_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2362_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2363_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2365_tree;
    pANTLR3_BASE_TREE BIT_AND_SYMBOL2366_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2367_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2369_tree;
    pANTLR3_BASE_TREE BIT_OR_SYMBOL2370_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2371_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2373_tree;
    pANTLR3_BASE_TREE BIT_XOR_SYMBOL2374_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2375_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2377_tree;
    pANTLR3_BASE_TREE MIN_SYMBOL2379_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2380_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2381_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2383_tree;
    pANTLR3_BASE_TREE MAX_SYMBOL2384_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2385_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2386_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2388_tree;
    pANTLR3_BASE_TREE STD_SYMBOL2389_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2390_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2392_tree;
    pANTLR3_BASE_TREE VARIANCE_SYMBOL2393_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2394_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2396_tree;
    pANTLR3_BASE_TREE STDDEV_SAMP_SYMBOL2397_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2398_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2400_tree;
    pANTLR3_BASE_TREE VAR_SAMP_SYMBOL2401_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2402_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2404_tree;
    pANTLR3_BASE_TREE SUM_SYMBOL2405_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2406_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2407_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2409_tree;
    pANTLR3_BASE_TREE GROUP_CONCAT_SYMBOL2410_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2411_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2412_tree;
    pANTLR3_BASE_TREE SEPARATOR_SYMBOL2415_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2417_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AVG_SYMBOL2361       = NULL;
    OPEN_PAR_SYMBOL2362       = NULL;
    DISTINCT_SYMBOL2363       = NULL;
    CLOSE_PAR_SYMBOL2365       = NULL;
    BIT_AND_SYMBOL2366       = NULL;
    OPEN_PAR_SYMBOL2367       = NULL;
    CLOSE_PAR_SYMBOL2369       = NULL;
    BIT_OR_SYMBOL2370       = NULL;
    OPEN_PAR_SYMBOL2371       = NULL;
    CLOSE_PAR_SYMBOL2373       = NULL;
    BIT_XOR_SYMBOL2374       = NULL;
    OPEN_PAR_SYMBOL2375       = NULL;
    CLOSE_PAR_SYMBOL2377       = NULL;
    MIN_SYMBOL2379       = NULL;
    OPEN_PAR_SYMBOL2380       = NULL;
    DISTINCT_SYMBOL2381       = NULL;
    CLOSE_PAR_SYMBOL2383       = NULL;
    MAX_SYMBOL2384       = NULL;
    OPEN_PAR_SYMBOL2385       = NULL;
    DISTINCT_SYMBOL2386       = NULL;
    CLOSE_PAR_SYMBOL2388       = NULL;
    STD_SYMBOL2389       = NULL;
    OPEN_PAR_SYMBOL2390       = NULL;
    CLOSE_PAR_SYMBOL2392       = NULL;
    VARIANCE_SYMBOL2393       = NULL;
    OPEN_PAR_SYMBOL2394       = NULL;
    CLOSE_PAR_SYMBOL2396       = NULL;
    STDDEV_SAMP_SYMBOL2397       = NULL;
    OPEN_PAR_SYMBOL2398       = NULL;
    CLOSE_PAR_SYMBOL2400       = NULL;
    VAR_SAMP_SYMBOL2401       = NULL;
    OPEN_PAR_SYMBOL2402       = NULL;
    CLOSE_PAR_SYMBOL2404       = NULL;
    SUM_SYMBOL2405       = NULL;
    OPEN_PAR_SYMBOL2406       = NULL;
    DISTINCT_SYMBOL2407       = NULL;
    CLOSE_PAR_SYMBOL2409       = NULL;
    GROUP_CONCAT_SYMBOL2410       = NULL;
    OPEN_PAR_SYMBOL2411       = NULL;
    DISTINCT_SYMBOL2412       = NULL;
    SEPARATOR_SYMBOL2415       = NULL;
    CLOSE_PAR_SYMBOL2417       = NULL;
    in_aggregate_expression2364.tree = NULL;

    in_aggregate_expression2368.tree = NULL;

    in_aggregate_expression2372.tree = NULL;

    in_aggregate_expression2376.tree = NULL;

    count_function2378.tree = NULL;

    in_aggregate_expression2382.tree = NULL;

    in_aggregate_expression2387.tree = NULL;

    in_aggregate_expression2391.tree = NULL;

    in_aggregate_expression2395.tree = NULL;

    in_aggregate_expression2399.tree = NULL;

    in_aggregate_expression2403.tree = NULL;

    in_aggregate_expression2408.tree = NULL;

    expression_list2413.tree = NULL;

    order_by_clause2414.tree = NULL;

    text_string2416.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AVG_SYMBOL2361_tree   = NULL;
    OPEN_PAR_SYMBOL2362_tree   = NULL;
    DISTINCT_SYMBOL2363_tree   = NULL;
    CLOSE_PAR_SYMBOL2365_tree   = NULL;
    BIT_AND_SYMBOL2366_tree   = NULL;
    OPEN_PAR_SYMBOL2367_tree   = NULL;
    CLOSE_PAR_SYMBOL2369_tree   = NULL;
    BIT_OR_SYMBOL2370_tree   = NULL;
    OPEN_PAR_SYMBOL2371_tree   = NULL;
    CLOSE_PAR_SYMBOL2373_tree   = NULL;
    BIT_XOR_SYMBOL2374_tree   = NULL;
    OPEN_PAR_SYMBOL2375_tree   = NULL;
    CLOSE_PAR_SYMBOL2377_tree   = NULL;
    MIN_SYMBOL2379_tree   = NULL;
    OPEN_PAR_SYMBOL2380_tree   = NULL;
    DISTINCT_SYMBOL2381_tree   = NULL;
    CLOSE_PAR_SYMBOL2383_tree   = NULL;
    MAX_SYMBOL2384_tree   = NULL;
    OPEN_PAR_SYMBOL2385_tree   = NULL;
    DISTINCT_SYMBOL2386_tree   = NULL;
    CLOSE_PAR_SYMBOL2388_tree   = NULL;
    STD_SYMBOL2389_tree   = NULL;
    OPEN_PAR_SYMBOL2390_tree   = NULL;
    CLOSE_PAR_SYMBOL2392_tree   = NULL;
    VARIANCE_SYMBOL2393_tree   = NULL;
    OPEN_PAR_SYMBOL2394_tree   = NULL;
    CLOSE_PAR_SYMBOL2396_tree   = NULL;
    STDDEV_SAMP_SYMBOL2397_tree   = NULL;
    OPEN_PAR_SYMBOL2398_tree   = NULL;
    CLOSE_PAR_SYMBOL2400_tree   = NULL;
    VAR_SAMP_SYMBOL2401_tree   = NULL;
    OPEN_PAR_SYMBOL2402_tree   = NULL;
    CLOSE_PAR_SYMBOL2404_tree   = NULL;
    SUM_SYMBOL2405_tree   = NULL;
    OPEN_PAR_SYMBOL2406_tree   = NULL;
    DISTINCT_SYMBOL2407_tree   = NULL;
    CLOSE_PAR_SYMBOL2409_tree   = NULL;
    GROUP_CONCAT_SYMBOL2410_tree   = NULL;
    OPEN_PAR_SYMBOL2411_tree   = NULL;
    DISTINCT_SYMBOL2412_tree   = NULL;
    SEPARATOR_SYMBOL2415_tree   = NULL;
    CLOSE_PAR_SYMBOL2417_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2365:19: ( AVG_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL | BIT_AND_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | BIT_OR_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | BIT_XOR_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | count_function | MIN_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL | MAX_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL | STD_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | VARIANCE_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | STDDEV_SAMP_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | VAR_SAMP_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL | SUM_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL | GROUP_CONCAT_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression_list ( order_by_clause )? ( SEPARATOR_SYMBOL text_string )? CLOSE_PAR_SYMBOL )

            ANTLR3_UINT32 alt677;

            alt677=13;

            switch ( LA(1) )
            {
            case AVG_SYMBOL:
            	{
            		alt677=1;
            	}
                break;
            case BIT_AND_SYMBOL:
            	{
            		alt677=2;
            	}
                break;
            case BIT_OR_SYMBOL:
            	{
            		alt677=3;
            	}
                break;
            case BIT_XOR_SYMBOL:
            	{
            		alt677=4;
            	}
                break;
            case COUNT_SYMBOL:
            	{
            		alt677=5;
            	}
                break;
            case MIN_SYMBOL:
            	{
            		alt677=6;
            	}
                break;
            case MAX_SYMBOL:
            	{
            		alt677=7;
            	}
                break;
            case STD_SYMBOL:
            	{
            		alt677=8;
            	}
                break;
            case VARIANCE_SYMBOL:
            	{
            		alt677=9;
            	}
                break;
            case STDDEV_SAMP_SYMBOL:
            	{
            		alt677=10;
            	}
                break;
            case VAR_SAMP_SYMBOL:
            	{
            		alt677=11;
            	}
                break;
            case SUM_SYMBOL:
            	{
            		alt677=12;
            	}
                break;
            case GROUP_CONCAT_SYMBOL:
            	{
            		alt677=13;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 677;
                EXCEPTION->state        = 0;


                goto ruleaggregate_functionEx;

            }

            switch (alt677)
            {
        	case 1:
        	    // MySQL.g:2366:2: AVG_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AVG_SYMBOL2361 = (pANTLR3_COMMON_TOKEN) MATCHT(AVG_SYMBOL, &FOLLOW_AVG_SYMBOL_in_aggregate_function12494);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AVG_SYMBOL2361_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AVG_SYMBOL2361));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AVG_SYMBOL2361_tree);
        	        }

        	        OPEN_PAR_SYMBOL2362 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12496);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2362_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2362));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2362_tree);
        	        }

        	        // MySQL.g:2366:29: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt670=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt670=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt670)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2366:29: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2363 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12498);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2363_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2363));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2363_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12501);
        	        in_aggregate_expression2364=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2364.tree);

        	        CLOSE_PAR_SYMBOL2365 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12503);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2365_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2365));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2365_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2367:4: BIT_AND_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_AND_SYMBOL2366 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_AND_SYMBOL, &FOLLOW_BIT_AND_SYMBOL_in_aggregate_function12508);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_AND_SYMBOL2366_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_AND_SYMBOL2366));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_AND_SYMBOL2366_tree);
        	        }

        	        OPEN_PAR_SYMBOL2367 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12510);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2367_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2367));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2367_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12512);
        	        in_aggregate_expression2368=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2368.tree);

        	        CLOSE_PAR_SYMBOL2369 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12514);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2369_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2369));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2369_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2368:4: BIT_OR_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_OR_SYMBOL2370 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_OR_SYMBOL, &FOLLOW_BIT_OR_SYMBOL_in_aggregate_function12519);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_OR_SYMBOL2370_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_OR_SYMBOL2370));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_OR_SYMBOL2370_tree);
        	        }

        	        OPEN_PAR_SYMBOL2371 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12521);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2371_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2371));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2371_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12523);
        	        in_aggregate_expression2372=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2372.tree);

        	        CLOSE_PAR_SYMBOL2373 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12525);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2373_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2373));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2373_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2369:4: BIT_XOR_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_XOR_SYMBOL2374 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_XOR_SYMBOL, &FOLLOW_BIT_XOR_SYMBOL_in_aggregate_function12530);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_XOR_SYMBOL2374_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_XOR_SYMBOL2374));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_XOR_SYMBOL2374_tree);
        	        }

        	        OPEN_PAR_SYMBOL2375 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12532);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2375_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2375));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2375_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12534);
        	        in_aggregate_expression2376=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2376.tree);

        	        CLOSE_PAR_SYMBOL2377 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12536);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2377_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2377));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2377_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2370:4: count_function
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_count_function_in_aggregate_function12541);
        	        count_function2378=count_function(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, count_function2378.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2371:4: MIN_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MIN_SYMBOL2379 = (pANTLR3_COMMON_TOKEN) MATCHT(MIN_SYMBOL, &FOLLOW_MIN_SYMBOL_in_aggregate_function12546);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MIN_SYMBOL2379_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIN_SYMBOL2379));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MIN_SYMBOL2379_tree);
        	        }

        	        OPEN_PAR_SYMBOL2380 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12548);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2380_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2380));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2380_tree);
        	        }

        	        // MySQL.g:2371:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt671=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt671=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt671)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2371:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2381 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12550);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2381_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2381));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2381_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12553);
        	        in_aggregate_expression2382=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2382.tree);

        	        CLOSE_PAR_SYMBOL2383 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12555);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2383_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2383));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2383_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2372:4: MAX_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_SYMBOL2384 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_SYMBOL, &FOLLOW_MAX_SYMBOL_in_aggregate_function12560);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_SYMBOL2384_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_SYMBOL2384));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_SYMBOL2384_tree);
        	        }

        	        OPEN_PAR_SYMBOL2385 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12562);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2385_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2385));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2385_tree);
        	        }

        	        // MySQL.g:2372:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt672=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt672=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt672)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2372:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2386 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12564);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2386_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2386));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2386_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12567);
        	        in_aggregate_expression2387=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2387.tree);

        	        CLOSE_PAR_SYMBOL2388 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12569);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2388_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2388));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2388_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2373:4: STD_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STD_SYMBOL2389 = (pANTLR3_COMMON_TOKEN) MATCHT(STD_SYMBOL, &FOLLOW_STD_SYMBOL_in_aggregate_function12574);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STD_SYMBOL2389_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STD_SYMBOL2389));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STD_SYMBOL2389_tree);
        	        }

        	        OPEN_PAR_SYMBOL2390 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12576);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2390_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2390));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2390_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12578);
        	        in_aggregate_expression2391=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2391.tree);

        	        CLOSE_PAR_SYMBOL2392 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12580);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2392_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2392));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2392_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2374:4: VARIANCE_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARIANCE_SYMBOL2393 = (pANTLR3_COMMON_TOKEN) MATCHT(VARIANCE_SYMBOL, &FOLLOW_VARIANCE_SYMBOL_in_aggregate_function12585);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARIANCE_SYMBOL2393_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARIANCE_SYMBOL2393));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARIANCE_SYMBOL2393_tree);
        	        }

        	        OPEN_PAR_SYMBOL2394 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12587);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2394_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2394));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2394_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12589);
        	        in_aggregate_expression2395=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2395.tree);

        	        CLOSE_PAR_SYMBOL2396 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12591);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2396_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2396));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2396_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2375:4: STDDEV_SAMP_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STDDEV_SAMP_SYMBOL2397 = (pANTLR3_COMMON_TOKEN) MATCHT(STDDEV_SAMP_SYMBOL, &FOLLOW_STDDEV_SAMP_SYMBOL_in_aggregate_function12596);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STDDEV_SAMP_SYMBOL2397_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STDDEV_SAMP_SYMBOL2397));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STDDEV_SAMP_SYMBOL2397_tree);
        	        }

        	        OPEN_PAR_SYMBOL2398 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12598);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2398_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2398));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2398_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12600);
        	        in_aggregate_expression2399=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2399.tree);

        	        CLOSE_PAR_SYMBOL2400 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12602);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2400_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2400));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2400_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2376:4: VAR_SAMP_SYMBOL OPEN_PAR_SYMBOL in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VAR_SAMP_SYMBOL2401 = (pANTLR3_COMMON_TOKEN) MATCHT(VAR_SAMP_SYMBOL, &FOLLOW_VAR_SAMP_SYMBOL_in_aggregate_function12607);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VAR_SAMP_SYMBOL2401_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VAR_SAMP_SYMBOL2401));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VAR_SAMP_SYMBOL2401_tree);
        	        }

        	        OPEN_PAR_SYMBOL2402 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12609);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2402_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2402));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2402_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12611);
        	        in_aggregate_expression2403=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2403.tree);

        	        CLOSE_PAR_SYMBOL2404 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12613);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2404_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2404));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2404_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2377:4: SUM_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? in_aggregate_expression CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SUM_SYMBOL2405 = (pANTLR3_COMMON_TOKEN) MATCHT(SUM_SYMBOL, &FOLLOW_SUM_SYMBOL_in_aggregate_function12618);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SUM_SYMBOL2405_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUM_SYMBOL2405));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SUM_SYMBOL2405_tree);
        	        }

        	        OPEN_PAR_SYMBOL2406 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12620);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2406_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2406));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2406_tree);
        	        }

        	        // MySQL.g:2377:31: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt673=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt673=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt673)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2377:31: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2407 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12622);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2407_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2407));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2407_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_aggregate_function12625);
        	        in_aggregate_expression2408=in_aggregate_expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2408.tree);

        	        CLOSE_PAR_SYMBOL2409 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12627);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2409_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2409));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2409_tree);
        	        }

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2378:4: GROUP_CONCAT_SYMBOL OPEN_PAR_SYMBOL ( DISTINCT_SYMBOL )? expression_list ( order_by_clause )? ( SEPARATOR_SYMBOL text_string )? CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        GROUP_CONCAT_SYMBOL2410 = (pANTLR3_COMMON_TOKEN) MATCHT(GROUP_CONCAT_SYMBOL, &FOLLOW_GROUP_CONCAT_SYMBOL_in_aggregate_function12632);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        GROUP_CONCAT_SYMBOL2410_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GROUP_CONCAT_SYMBOL2410));
        	        ADAPTOR->addChild(ADAPTOR, root_0, GROUP_CONCAT_SYMBOL2410_tree);
        	        }

        	        OPEN_PAR_SYMBOL2411 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_aggregate_function12634);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2411_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2411));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2411_tree);
        	        }

        	        // MySQL.g:2378:40: ( DISTINCT_SYMBOL )?
        	        {
        	            int alt674=2;
        	            switch ( LA(1) )
        	            {
        	                case DISTINCT_SYMBOL:
        	                	{
        	                		alt674=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt674)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2378:40: DISTINCT_SYMBOL
        	        	    {
        	        	        DISTINCT_SYMBOL2412 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_aggregate_function12636);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DISTINCT_SYMBOL2412_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2412));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2412_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_list_in_aggregate_function12639);
        	        expression_list2413=expression_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2413.tree);

        	        // MySQL.g:2378:73: ( order_by_clause )?
        	        {
        	            int alt675=2;
        	            switch ( LA(1) )
        	            {
        	                case ORDER_SYMBOL:
        	                	{
        	                		alt675=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt675)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2378:73: order_by_clause
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_order_by_clause_in_aggregate_function12641);
        	        	        order_by_clause2414=order_by_clause(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, order_by_clause2414.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2378:90: ( SEPARATOR_SYMBOL text_string )?
        	        {
        	            int alt676=2;
        	            switch ( LA(1) )
        	            {
        	                case SEPARATOR_SYMBOL:
        	                	{
        	                		alt676=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt676)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2378:91: SEPARATOR_SYMBOL text_string
        	        	    {
        	        	        SEPARATOR_SYMBOL2415 = (pANTLR3_COMMON_TOKEN) MATCHT(SEPARATOR_SYMBOL, &FOLLOW_SEPARATOR_SYMBOL_in_aggregate_function12645);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        SEPARATOR_SYMBOL2415_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEPARATOR_SYMBOL2415));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SEPARATOR_SYMBOL2415_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_string_in_aggregate_function12647);
        	        	        text_string2416=text_string(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleaggregate_functionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2416.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2417 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_aggregate_function12651);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleaggregate_functionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2417_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2417));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2417_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 in_aggregate_expression
 * MySQL.g:2381:1: in_aggregate_expression : ( ALL_SYMBOL )? expression ;
 */
static MySQLParser_in_aggregate_expression_return
in_aggregate_expression(pMySQLParser ctx)
{
    MySQLParser_in_aggregate_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALL_SYMBOL2418;
    MySQLParser_expression_return expression2419;
    #undef	RETURN_TYPE_expression2419
    #define	RETURN_TYPE_expression2419 MySQLParser_expression_return

    pANTLR3_BASE_TREE ALL_SYMBOL2418_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALL_SYMBOL2418       = NULL;
    expression2419.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALL_SYMBOL2418_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2381:24: ( ( ALL_SYMBOL )? expression )
        // MySQL.g:2382:2: ( ALL_SYMBOL )? expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2382:2: ( ALL_SYMBOL )?
            {
                int alt678=2;
                switch ( LA(1) )
                {
                    case ALL_SYMBOL:
                    	{
                    		alt678=1;
                    	}
                        break;
                }

                switch (alt678)
                {
            	case 1:
            	    // MySQL.g:2382:2: ALL_SYMBOL
            	    {
            	        ALL_SYMBOL2418 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_in_aggregate_expression12660);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulein_aggregate_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ALL_SYMBOL2418_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL2418));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL2418_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_expression_in_in_aggregate_expression12663);
            expression2419=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulein_aggregate_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2419.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulein_aggregate_expressionEx; /* Prevent compiler warnings */
    rulein_aggregate_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 in_aggregate_expression */

/**
 * $ANTLR start count_function
 * MySQL.g:2385:1: count_function : COUNT_SYMBOL OPEN_PAR_SYMBOL ( ( ALL_SYMBOL )? MULT_OPERATOR | in_aggregate_expression | 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_SYMBOL2420;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2421;
    pANTLR3_COMMON_TOKEN    ALL_SYMBOL2422;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR2423;
    pANTLR3_COMMON_TOKEN    DISTINCT_SYMBOL2425;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2427;
    MySQLParser_in_aggregate_expression_return in_aggregate_expression2424;
    #undef	RETURN_TYPE_in_aggregate_expression2424
    #define	RETURN_TYPE_in_aggregate_expression2424 MySQLParser_in_aggregate_expression_return

    MySQLParser_expression_list_return expression_list2426;
    #undef	RETURN_TYPE_expression_list2426
    #define	RETURN_TYPE_expression_list2426 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE COUNT_SYMBOL2420_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2421_tree;
    pANTLR3_BASE_TREE ALL_SYMBOL2422_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR2423_tree;
    pANTLR3_BASE_TREE DISTINCT_SYMBOL2425_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2427_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COUNT_SYMBOL2420       = NULL;
    OPEN_PAR_SYMBOL2421       = NULL;
    ALL_SYMBOL2422       = NULL;
    MULT_OPERATOR2423       = NULL;
    DISTINCT_SYMBOL2425       = NULL;
    CLOSE_PAR_SYMBOL2427       = NULL;
    in_aggregate_expression2424.tree = NULL;

    expression_list2426.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COUNT_SYMBOL2420_tree   = NULL;
    OPEN_PAR_SYMBOL2421_tree   = NULL;
    ALL_SYMBOL2422_tree   = NULL;
    MULT_OPERATOR2423_tree   = NULL;
    DISTINCT_SYMBOL2425_tree   = NULL;
    CLOSE_PAR_SYMBOL2427_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2385:15: ( COUNT_SYMBOL OPEN_PAR_SYMBOL ( ( ALL_SYMBOL )? MULT_OPERATOR | in_aggregate_expression | DISTINCT_SYMBOL expression_list ) CLOSE_PAR_SYMBOL )
        // MySQL.g:2386:2: COUNT_SYMBOL OPEN_PAR_SYMBOL ( ( ALL_SYMBOL )? MULT_OPERATOR | in_aggregate_expression | DISTINCT_SYMBOL expression_list ) CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            COUNT_SYMBOL2420 = (pANTLR3_COMMON_TOKEN) MATCHT(COUNT_SYMBOL, &FOLLOW_COUNT_SYMBOL_in_count_function12672);
            if  (HASEXCEPTION())
            {
                goto rulecount_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COUNT_SYMBOL2420_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COUNT_SYMBOL2420));
            ADAPTOR->addChild(ADAPTOR, root_0, COUNT_SYMBOL2420_tree);
            }

            OPEN_PAR_SYMBOL2421 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_count_function12674);
            if  (HASEXCEPTION())
            {
                goto rulecount_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2421_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2421));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2421_tree);
            }

            // MySQL.g:2387:2: ( ( ALL_SYMBOL )? MULT_OPERATOR | in_aggregate_expression | DISTINCT_SYMBOL expression_list )
            {
                int alt680=3;
                {
                    int LA680_0 = LA(1);
                    if ( (LA680_0 == ALL_SYMBOL))
                    {
                        {
                            int LA680_1 = LA(2);
                            if ( (LA680_1 == MULT_OPERATOR))
                            {
                                alt680=1;
                            }
                            else if ( (((LA680_1 >= ACCOUNT_SYMBOL) && (LA680_1 <= YEAR_SYMBOL)) || ((LA680_1 >= AT_AT_SIGN_SYMBOL) && (LA680_1 <= AT_TEXT_SUFFIX)) || LA680_1 == BACK_TICK_QUOTED_ID || ((LA680_1 >= BINARY_SYMBOL) && (LA680_1 <= BIN_NUMBER)) || LA680_1 == BITWISE_NOT_OPERATOR || ((LA680_1 >= BIT_AND_SYMBOL) && (LA680_1 <= BIT_XOR_SYMBOL)) || ((LA680_1 >= CASE_SYMBOL) && (LA680_1 <= CAST_SYMBOL)) || LA680_1 == CHAR_SYMBOL || ((LA680_1 >= CONVERT_SYMBOL) && (LA680_1 <= COUNT_SYMBOL)) || LA680_1 == CURDATE_SYMBOL || LA680_1 == CURRENT_USER_SYMBOL || LA680_1 == CURTIME_SYMBOL || LA680_1 == DATABASE_SYMBOL || LA680_1 == DATE_ADD_SYMBOL || LA680_1 == DATE_SUB_SYMBOL || LA680_1 == DECIMAL_NUMBER || LA680_1 == DOT_SYMBOL || LA680_1 == DOUBLE_QUOTED_TEXT || LA680_1 == EXISTS_SYMBOL || ((LA680_1 >= EXTRACT_SYMBOL) && (LA680_1 <= FALSE_SYMBOL)) || LA680_1 == FLOAT_NUMBER || LA680_1 == GROUP_CONCAT_SYMBOL || LA680_1 == HEX_NUMBER || ((LA680_1 >= IDENTIFIER) && (LA680_1 <= IF_SYMBOL)) || LA680_1 == INSERT_SYMBOL || LA680_1 == INTERVAL_SYMBOL || LA680_1 == INT_NUMBER || LA680_1 == LEFT_SYMBOL || LA680_1 == LOGICAL_NOT_OPERATOR || LA680_1 == LONG_NUMBER || LA680_1 == MATCH_SYMBOL || LA680_1 == MAX_SYMBOL || LA680_1 == MINUS_OPERATOR || LA680_1 == MIN_SYMBOL || LA680_1 == MOD_SYMBOL || LA680_1 == NCHAR_TEXT || LA680_1 == NOT2_SYMBOL || ((LA680_1 >= NOT_SYMBOL) && (LA680_1 <= NOW_SYMBOL)) || LA680_1 == NULL2_SYMBOL || LA680_1 == NULL_SYMBOL || ((LA680_1 >= OPEN_CURLY_SYMBOL) && (LA680_1 <= OPEN_PAR_SYMBOL)) || LA680_1 == PARAM_MARKER || ((LA680_1 >= PLUS_OPERATOR) && (LA680_1 <= POSITION_SYMBOL)) || ((LA680_1 >= REPEAT_SYMBOL) && (LA680_1 <= REPLACE_SYMBOL)) || LA680_1 == RIGHT_SYMBOL || LA680_1 == SINGLE_QUOTED_TEXT || LA680_1 == STDDEV_SAMP_SYMBOL || LA680_1 == STD_SYMBOL || LA680_1 == SUBSTRING_SYMBOL || ((LA680_1 >= SUM_SYMBOL) && (LA680_1 <= SYSDATE_SYMBOL)) || ((LA680_1 >= TRIM_SYMBOL) && (LA680_1 <= TRUE_SYMBOL)) || LA680_1 == ULONGLONG_NUMBER || LA680_1 == UNDERSCORE_CHARSET || ((LA680_1 >= UTC_DATE_SYMBOL) && (LA680_1 <= UTC_TIME_SYMBOL)) || LA680_1 == VALUES_SYMBOL || LA680_1 == VARIANCE_SYMBOL || LA680_1 == VAR_SAMP_SYMBOL))
                            {
                                alt680=2;
                            }
                            else
                            {
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }


                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 680;
                                EXCEPTION->state        = 1;


                                goto rulecount_functionEx;

                            }
                        }
                    }
                    else if ( (LA680_0 == MULT_OPERATOR))
                    {
                        alt680=1;
                    }
                    else if ( (((LA680_0 >= ACCOUNT_SYMBOL) && (LA680_0 <= YEAR_SYMBOL)) || ((LA680_0 >= AT_AT_SIGN_SYMBOL) && (LA680_0 <= AT_TEXT_SUFFIX)) || LA680_0 == BACK_TICK_QUOTED_ID || ((LA680_0 >= BINARY_SYMBOL) && (LA680_0 <= BIN_NUMBER)) || LA680_0 == BITWISE_NOT_OPERATOR || ((LA680_0 >= BIT_AND_SYMBOL) && (LA680_0 <= BIT_XOR_SYMBOL)) || ((LA680_0 >= CASE_SYMBOL) && (LA680_0 <= CAST_SYMBOL)) || LA680_0 == CHAR_SYMBOL || ((LA680_0 >= CONVERT_SYMBOL) && (LA680_0 <= COUNT_SYMBOL)) || LA680_0 == CURDATE_SYMBOL || LA680_0 == CURRENT_USER_SYMBOL || LA680_0 == CURTIME_SYMBOL || LA680_0 == DATABASE_SYMBOL || LA680_0 == DATE_ADD_SYMBOL || LA680_0 == DATE_SUB_SYMBOL || LA680_0 == DECIMAL_NUMBER || LA680_0 == DOT_SYMBOL || LA680_0 == DOUBLE_QUOTED_TEXT || LA680_0 == EXISTS_SYMBOL || ((LA680_0 >= EXTRACT_SYMBOL) && (LA680_0 <= FALSE_SYMBOL)) || LA680_0 == FLOAT_NUMBER || LA680_0 == GROUP_CONCAT_SYMBOL || LA680_0 == HEX_NUMBER || ((LA680_0 >= IDENTIFIER) && (LA680_0 <= IF_SYMBOL)) || LA680_0 == INSERT_SYMBOL || LA680_0 == INTERVAL_SYMBOL || LA680_0 == INT_NUMBER || LA680_0 == LEFT_SYMBOL || LA680_0 == LOGICAL_NOT_OPERATOR || LA680_0 == LONG_NUMBER || LA680_0 == MATCH_SYMBOL || LA680_0 == MAX_SYMBOL || LA680_0 == MINUS_OPERATOR || LA680_0 == MIN_SYMBOL || LA680_0 == MOD_SYMBOL || LA680_0 == NCHAR_TEXT || LA680_0 == NOT2_SYMBOL || ((LA680_0 >= NOT_SYMBOL) && (LA680_0 <= NOW_SYMBOL)) || LA680_0 == NULL2_SYMBOL || LA680_0 == NULL_SYMBOL || ((LA680_0 >= OPEN_CURLY_SYMBOL) && (LA680_0 <= OPEN_PAR_SYMBOL)) || LA680_0 == PARAM_MARKER || ((LA680_0 >= PLUS_OPERATOR) && (LA680_0 <= POSITION_SYMBOL)) || ((LA680_0 >= REPEAT_SYMBOL) && (LA680_0 <= REPLACE_SYMBOL)) || LA680_0 == RIGHT_SYMBOL || LA680_0 == SINGLE_QUOTED_TEXT || LA680_0 == STDDEV_SAMP_SYMBOL || LA680_0 == STD_SYMBOL || LA680_0 == SUBSTRING_SYMBOL || ((LA680_0 >= SUM_SYMBOL) && (LA680_0 <= SYSDATE_SYMBOL)) || ((LA680_0 >= TRIM_SYMBOL) && (LA680_0 <= TRUE_SYMBOL)) || LA680_0 == ULONGLONG_NUMBER || LA680_0 == UNDERSCORE_CHARSET || ((LA680_0 >= UTC_DATE_SYMBOL) && (LA680_0 <= UTC_TIME_SYMBOL)) || LA680_0 == VALUES_SYMBOL || LA680_0 == VARIANCE_SYMBOL || LA680_0 == VAR_SAMP_SYMBOL))
                    {
                        alt680=2;
                    }
                    else if ( (LA680_0 == DISTINCT_SYMBOL))
                    {
                        alt680=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 680;
                        EXCEPTION->state        = 0;


                        goto rulecount_functionEx;

                    }
                }
                switch (alt680)
                {
            	case 1:
            	    // MySQL.g:2388:3: ( ALL_SYMBOL )? MULT_OPERATOR
            	    {
            	        // MySQL.g:2388:3: ( ALL_SYMBOL )?
            	        {
            	            int alt679=2;
            	            switch ( LA(1) )
            	            {
            	                case ALL_SYMBOL:
            	                	{
            	                		alt679=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt679)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2388:3: ALL_SYMBOL
            	        	    {
            	        	        ALL_SYMBOL2422 = (pANTLR3_COMMON_TOKEN) MATCHT(ALL_SYMBOL, &FOLLOW_ALL_SYMBOL_in_count_function12681);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecount_functionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ALL_SYMBOL2422_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALL_SYMBOL2422));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ALL_SYMBOL2422_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        MULT_OPERATOR2423 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_count_function12684);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MULT_OPERATOR2423_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR2423));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR2423_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2389:5: in_aggregate_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_in_aggregate_expression_in_count_function12690);
            	        in_aggregate_expression2424=in_aggregate_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, in_aggregate_expression2424.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:2390:5: DISTINCT_SYMBOL expression_list
            	    {
            	        DISTINCT_SYMBOL2425 = (pANTLR3_COMMON_TOKEN) MATCHT(DISTINCT_SYMBOL, &FOLLOW_DISTINCT_SYMBOL_in_count_function12696);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DISTINCT_SYMBOL2425_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DISTINCT_SYMBOL2425));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DISTINCT_SYMBOL2425_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_list_in_count_function12698);
            	        expression_list2426=expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecount_functionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2426.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2427 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_count_function12704);
            if  (HASEXCEPTION())
            {
                goto rulecount_functionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2427_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2427));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2427_tree);
            }

        }

    }

    // 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 udf_call
 * MySQL.g:2395:1: udf_call : udf_call_expression -> ^( UDF_CALL_TOKEN udf_call_expression ) ;
 */
static MySQLParser_udf_call_return
udf_call(pMySQLParser ctx)
{
    MySQLParser_udf_call_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_udf_call_expression_return udf_call_expression2428;
    #undef	RETURN_TYPE_udf_call_expression2428
    #define	RETURN_TYPE_udf_call_expression2428 MySQLParser_udf_call_expression_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_udf_call_expression;
    /* Initialize rule variables
     */

    root_0 = NULL;

    udf_call_expression2428.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_udf_call_expression   = NULL;
    #define CREATE_stream_udf_call_expression  if (stream_udf_call_expression == NULL) {stream_udf_call_expression = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule udf_call_expression"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2395:9: ( udf_call_expression -> ^( UDF_CALL_TOKEN udf_call_expression ) )
        // MySQL.g:2396:2: udf_call_expression
        {
            FOLLOWPUSH(FOLLOW_udf_call_expression_in_udf_call12713);
            udf_call_expression2428=udf_call_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleudf_callEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_udf_call_expression; stream_udf_call_expression->add(stream_udf_call_expression, udf_call_expression2428.tree, NULL); }

            /* AST REWRITE
             * elements          : udf_call_expression
             * 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;
            	// 2396:22: -> ^( UDF_CALL_TOKEN udf_call_expression )
            	{
            	    // MySQL.g:2396:25: ^( UDF_CALL_TOKEN udf_call_expression )
            	    {
            	        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, UDF_CALL_TOKEN, (pANTLR3_UINT8)"UDF_CALL_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_udf_call_expression == NULL ? NULL : stream_udf_call_expression->nextTree(stream_udf_call_expression));

            	        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 ruleudf_callEx; /* Prevent compiler warnings */
    ruleudf_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_udf_call_expression != NULL) stream_udf_call_expression->free(stream_udf_call_expression);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end udf_call */

/**
 * $ANTLR start udf_call_expression
 * MySQL.g:2399:1: udf_call_expression : ( IDENTIFIER | BACK_TICK_QUOTED_ID ) OPEN_PAR_SYMBOL ( aliased_expression_list )? CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_udf_call_expression_return
udf_call_expression(pMySQLParser ctx)
{
    MySQLParser_udf_call_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2429;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2430;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2432;
    MySQLParser_aliased_expression_list_return aliased_expression_list2431;
    #undef	RETURN_TYPE_aliased_expression_list2431
    #define	RETURN_TYPE_aliased_expression_list2431 MySQLParser_aliased_expression_list_return

    pANTLR3_BASE_TREE set2429_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2430_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2432_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2429       = NULL;
    OPEN_PAR_SYMBOL2430       = NULL;
    CLOSE_PAR_SYMBOL2432       = NULL;
    aliased_expression_list2431.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2429_tree   = NULL;
    OPEN_PAR_SYMBOL2430_tree   = NULL;
    CLOSE_PAR_SYMBOL2432_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2399:20: ( ( IDENTIFIER | BACK_TICK_QUOTED_ID ) OPEN_PAR_SYMBOL ( aliased_expression_list )? CLOSE_PAR_SYMBOL )
        // MySQL.g:2400:2: ( IDENTIFIER | BACK_TICK_QUOTED_ID ) OPEN_PAR_SYMBOL ( aliased_expression_list )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2429=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == BACK_TICK_QUOTED_ID || LA(1) == IDENTIFIER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2429))
                );
                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_call_expressionEx;
            }


            OPEN_PAR_SYMBOL2430 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_udf_call_expression12738);
            if  (HASEXCEPTION())
            {
                goto ruleudf_call_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2430_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2430));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2430_tree);
            }

            // MySQL.g:2400:53: ( aliased_expression_list )?
            {
                int alt681=2;
                {
                    int LA681_0 = LA(1);
                    if ( (((LA681_0 >= ACCOUNT_SYMBOL) && (LA681_0 <= YEAR_SYMBOL)) || ((LA681_0 >= AT_AT_SIGN_SYMBOL) && (LA681_0 <= AT_TEXT_SUFFIX)) || LA681_0 == BACK_TICK_QUOTED_ID || ((LA681_0 >= BINARY_SYMBOL) && (LA681_0 <= BIN_NUMBER)) || LA681_0 == BITWISE_NOT_OPERATOR || ((LA681_0 >= BIT_AND_SYMBOL) && (LA681_0 <= BIT_XOR_SYMBOL)) || ((LA681_0 >= CASE_SYMBOL) && (LA681_0 <= CAST_SYMBOL)) || LA681_0 == CHAR_SYMBOL || ((LA681_0 >= CONVERT_SYMBOL) && (LA681_0 <= COUNT_SYMBOL)) || LA681_0 == CURDATE_SYMBOL || LA681_0 == CURRENT_USER_SYMBOL || LA681_0 == CURTIME_SYMBOL || LA681_0 == DATABASE_SYMBOL || LA681_0 == DATE_ADD_SYMBOL || LA681_0 == DATE_SUB_SYMBOL || LA681_0 == DECIMAL_NUMBER || LA681_0 == DOT_SYMBOL || LA681_0 == DOUBLE_QUOTED_TEXT || LA681_0 == EXISTS_SYMBOL || ((LA681_0 >= EXTRACT_SYMBOL) && (LA681_0 <= FALSE_SYMBOL)) || LA681_0 == FLOAT_NUMBER || LA681_0 == GROUP_CONCAT_SYMBOL || LA681_0 == HEX_NUMBER || ((LA681_0 >= IDENTIFIER) && (LA681_0 <= IF_SYMBOL)) || LA681_0 == INSERT_SYMBOL || LA681_0 == INTERVAL_SYMBOL || LA681_0 == INT_NUMBER || LA681_0 == LEFT_SYMBOL || LA681_0 == LOGICAL_NOT_OPERATOR || LA681_0 == LONG_NUMBER || LA681_0 == MATCH_SYMBOL || LA681_0 == MAX_SYMBOL || LA681_0 == MINUS_OPERATOR || LA681_0 == MIN_SYMBOL || LA681_0 == MOD_SYMBOL || LA681_0 == NCHAR_TEXT || LA681_0 == NOT2_SYMBOL || ((LA681_0 >= NOT_SYMBOL) && (LA681_0 <= NOW_SYMBOL)) || LA681_0 == NULL2_SYMBOL || LA681_0 == NULL_SYMBOL || ((LA681_0 >= OPEN_CURLY_SYMBOL) && (LA681_0 <= OPEN_PAR_SYMBOL)) || LA681_0 == PARAM_MARKER || ((LA681_0 >= PLUS_OPERATOR) && (LA681_0 <= POSITION_SYMBOL)) || ((LA681_0 >= REPEAT_SYMBOL) && (LA681_0 <= REPLACE_SYMBOL)) || LA681_0 == RIGHT_SYMBOL || LA681_0 == SINGLE_QUOTED_TEXT || LA681_0 == STDDEV_SAMP_SYMBOL || LA681_0 == STD_SYMBOL || LA681_0 == SUBSTRING_SYMBOL || ((LA681_0 >= SUM_SYMBOL) && (LA681_0 <= SYSDATE_SYMBOL)) || ((LA681_0 >= TRIM_SYMBOL) && (LA681_0 <= TRUE_SYMBOL)) || LA681_0 == ULONGLONG_NUMBER || LA681_0 == UNDERSCORE_CHARSET || ((LA681_0 >= UTC_DATE_SYMBOL) && (LA681_0 <= UTC_TIME_SYMBOL)) || LA681_0 == VALUES_SYMBOL || LA681_0 == VARIANCE_SYMBOL || LA681_0 == VAR_SAMP_SYMBOL))
                    {
                        alt681=1;
                    }
                }
                switch (alt681)
                {
            	case 1:
            	    // MySQL.g:2400:53: aliased_expression_list
            	    {
            	        FOLLOWPUSH(FOLLOW_aliased_expression_list_in_udf_call_expression12740);
            	        aliased_expression_list2431=aliased_expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleudf_call_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aliased_expression_list2431.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2432 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_udf_call_expression12743);
            if  (HASEXCEPTION())
            {
                goto ruleudf_call_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2432_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2432));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2432_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleudf_call_expressionEx; /* Prevent compiler warnings */
    ruleudf_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 (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end udf_call_expression */

/**
 * $ANTLR start stored_function_call
 * MySQL.g:2403:1: stored_function_call : stored_function_call_expression -> ^( FUNCTION_CALL_TOKEN stored_function_call_expression ) ;
 */
static MySQLParser_stored_function_call_return
stored_function_call(pMySQLParser ctx)
{
    MySQLParser_stored_function_call_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_stored_function_call_expression_return stored_function_call_expression2433;
    #undef	RETURN_TYPE_stored_function_call_expression2433
    #define	RETURN_TYPE_stored_function_call_expression2433 MySQLParser_stored_function_call_expression_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_stored_function_call_expression;
    /* Initialize rule variables
     */

    root_0 = NULL;

    stored_function_call_expression2433.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_stored_function_call_expression   = NULL;
    #define CREATE_stream_stored_function_call_expression  if (stream_stored_function_call_expression == NULL) {stream_stored_function_call_expression = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule stored_function_call_expression"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2403:21: ( stored_function_call_expression -> ^( FUNCTION_CALL_TOKEN stored_function_call_expression ) )
        // MySQL.g:2404:2: stored_function_call_expression
        {
            FOLLOWPUSH(FOLLOW_stored_function_call_expression_in_stored_function_call12752);
            stored_function_call_expression2433=stored_function_call_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulestored_function_callEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_stored_function_call_expression; stream_stored_function_call_expression->add(stream_stored_function_call_expression, stored_function_call_expression2433.tree, NULL); }

            /* AST REWRITE
             * elements          : stored_function_call_expression
             * 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;
            	// 2404:34: -> ^( FUNCTION_CALL_TOKEN stored_function_call_expression )
            	{
            	    // MySQL.g:2404:37: ^( FUNCTION_CALL_TOKEN stored_function_call_expression )
            	    {
            	        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_TOKEN, (pANTLR3_UINT8)"FUNCTION_CALL_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_stored_function_call_expression == NULL ? NULL : stream_stored_function_call_expression->nextTree(stream_stored_function_call_expression));

            	        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 rulestored_function_callEx; /* Prevent compiler warnings */
    rulestored_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_stored_function_call_expression != NULL) stream_stored_function_call_expression->free(stream_stored_function_call_expression);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end stored_function_call */

/**
 * $ANTLR start stored_function_call_expression
 * MySQL.g:2407:1: stored_function_call_expression : qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_stored_function_call_expression_return
stored_function_call_expression(pMySQLParser ctx)
{
    MySQLParser_stored_function_call_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2435;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2437;
    MySQLParser_qualified_identifier_return qualified_identifier2434;
    #undef	RETURN_TYPE_qualified_identifier2434
    #define	RETURN_TYPE_qualified_identifier2434 MySQLParser_qualified_identifier_return

    MySQLParser_expression_list_return expression_list2436;
    #undef	RETURN_TYPE_expression_list2436
    #define	RETURN_TYPE_expression_list2436 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2435_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2437_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2435       = NULL;
    CLOSE_PAR_SYMBOL2437       = NULL;
    qualified_identifier2434.tree = NULL;

    expression_list2436.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2435_tree   = NULL;
    CLOSE_PAR_SYMBOL2437_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2407:32: ( qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )
        // MySQL.g:2408:2: qualified_identifier OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_qualified_identifier_in_stored_function_call_expression12769);
            qualified_identifier2434=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulestored_function_call_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier2434.tree);

            OPEN_PAR_SYMBOL2435 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_stored_function_call_expression12771);
            if  (HASEXCEPTION())
            {
                goto rulestored_function_call_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2435_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2435));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2435_tree);
            }

            // MySQL.g:2408:39: ( expression_list )?
            {
                int alt682=2;
                {
                    int LA682_0 = LA(1);
                    if ( (((LA682_0 >= ACCOUNT_SYMBOL) && (LA682_0 <= YEAR_SYMBOL)) || ((LA682_0 >= AT_AT_SIGN_SYMBOL) && (LA682_0 <= AT_TEXT_SUFFIX)) || LA682_0 == BACK_TICK_QUOTED_ID || ((LA682_0 >= BINARY_SYMBOL) && (LA682_0 <= BIN_NUMBER)) || LA682_0 == BITWISE_NOT_OPERATOR || ((LA682_0 >= BIT_AND_SYMBOL) && (LA682_0 <= BIT_XOR_SYMBOL)) || ((LA682_0 >= CASE_SYMBOL) && (LA682_0 <= CAST_SYMBOL)) || LA682_0 == CHAR_SYMBOL || ((LA682_0 >= CONVERT_SYMBOL) && (LA682_0 <= COUNT_SYMBOL)) || LA682_0 == CURDATE_SYMBOL || LA682_0 == CURRENT_USER_SYMBOL || LA682_0 == CURTIME_SYMBOL || LA682_0 == DATABASE_SYMBOL || LA682_0 == DATE_ADD_SYMBOL || LA682_0 == DATE_SUB_SYMBOL || LA682_0 == DECIMAL_NUMBER || LA682_0 == DOT_SYMBOL || LA682_0 == DOUBLE_QUOTED_TEXT || LA682_0 == EXISTS_SYMBOL || ((LA682_0 >= EXTRACT_SYMBOL) && (LA682_0 <= FALSE_SYMBOL)) || LA682_0 == FLOAT_NUMBER || LA682_0 == GROUP_CONCAT_SYMBOL || LA682_0 == HEX_NUMBER || ((LA682_0 >= IDENTIFIER) && (LA682_0 <= IF_SYMBOL)) || LA682_0 == INSERT_SYMBOL || LA682_0 == INTERVAL_SYMBOL || LA682_0 == INT_NUMBER || LA682_0 == LEFT_SYMBOL || LA682_0 == LOGICAL_NOT_OPERATOR || LA682_0 == LONG_NUMBER || LA682_0 == MATCH_SYMBOL || LA682_0 == MAX_SYMBOL || LA682_0 == MINUS_OPERATOR || LA682_0 == MIN_SYMBOL || LA682_0 == MOD_SYMBOL || LA682_0 == NCHAR_TEXT || LA682_0 == NOT2_SYMBOL || ((LA682_0 >= NOT_SYMBOL) && (LA682_0 <= NOW_SYMBOL)) || LA682_0 == NULL2_SYMBOL || LA682_0 == NULL_SYMBOL || ((LA682_0 >= OPEN_CURLY_SYMBOL) && (LA682_0 <= OPEN_PAR_SYMBOL)) || LA682_0 == PARAM_MARKER || ((LA682_0 >= PLUS_OPERATOR) && (LA682_0 <= POSITION_SYMBOL)) || ((LA682_0 >= REPEAT_SYMBOL) && (LA682_0 <= REPLACE_SYMBOL)) || LA682_0 == RIGHT_SYMBOL || LA682_0 == SINGLE_QUOTED_TEXT || LA682_0 == STDDEV_SAMP_SYMBOL || LA682_0 == STD_SYMBOL || LA682_0 == SUBSTRING_SYMBOL || ((LA682_0 >= SUM_SYMBOL) && (LA682_0 <= SYSDATE_SYMBOL)) || ((LA682_0 >= TRIM_SYMBOL) && (LA682_0 <= TRUE_SYMBOL)) || LA682_0 == ULONGLONG_NUMBER || LA682_0 == UNDERSCORE_CHARSET || ((LA682_0 >= UTC_DATE_SYMBOL) && (LA682_0 <= UTC_TIME_SYMBOL)) || LA682_0 == VALUES_SYMBOL || LA682_0 == VARIANCE_SYMBOL || LA682_0 == VAR_SAMP_SYMBOL))
                    {
                        alt682=1;
                    }
                }
                switch (alt682)
                {
            	case 1:
            	    // MySQL.g:2408:39: expression_list
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_list_in_stored_function_call_expression12773);
            	        expression_list2436=expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestored_function_call_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression_list2436.tree);

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2437 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_stored_function_call_expression12776);
            if  (HASEXCEPTION())
            {
                goto rulestored_function_call_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2437_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2437));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2437_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulestored_function_call_expressionEx; /* Prevent compiler warnings */
    rulestored_function_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 (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end stored_function_call_expression */

/**
 * $ANTLR start aliased_expression_list
 * MySQL.g:2411: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_SYMBOL2439;
    MySQLParser_aliased_expression_return aliased_expression2438;
    #undef	RETURN_TYPE_aliased_expression2438
    #define	RETURN_TYPE_aliased_expression2438 MySQLParser_aliased_expression_return

    MySQLParser_aliased_expression_return aliased_expression2440;
    #undef	RETURN_TYPE_aliased_expression2440
    #define	RETURN_TYPE_aliased_expression2440 MySQLParser_aliased_expression_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2439_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2439       = NULL;
    aliased_expression2438.tree = NULL;

    aliased_expression2440.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2439_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2411:24: ( aliased_expression ( COMMA_SYMBOL aliased_expression )* )
        // MySQL.g:2412:2: aliased_expression ( COMMA_SYMBOL aliased_expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_aliased_expression_in_aliased_expression_list12785);
            aliased_expression2438=aliased_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealiased_expression_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aliased_expression2438.tree);

            // MySQL.g:2412:21: ( COMMA_SYMBOL aliased_expression )*

            for (;;)
            {
                int alt683=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt683=1;
                	}
                    break;

                }

                switch (alt683)
                {
            	case 1:
            	    // MySQL.g:2412:22: COMMA_SYMBOL aliased_expression
            	    {
            	        COMMA_SYMBOL2439 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_aliased_expression_list12788);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2439_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2439));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2439_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_aliased_expression_in_aliased_expression_list12790);
            	        aliased_expression2440=aliased_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, aliased_expression2440.tree);

            	    }
            	    break;

            	default:
            	    goto loop683;	/* break out of the loop */
            	    break;
                }
            }
            loop683: ; /* 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:2415: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 expression2441;
    #undef	RETURN_TYPE_expression2441
    #define	RETURN_TYPE_expression2441 MySQLParser_expression_return

    MySQLParser_select_alias_return select_alias2442;
    #undef	RETURN_TYPE_select_alias2442
    #define	RETURN_TYPE_select_alias2442 MySQLParser_select_alias_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    expression2441.tree = NULL;

    select_alias2442.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2415:19: ( expression ( select_alias )? )
        // MySQL.g:2416:2: expression ( select_alias )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_aliased_expression12801);
            expression2441=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulealiased_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2441.tree);

            // MySQL.g:2416:13: ( select_alias )?
            {
                int alt684=2;
                {
                    int LA684_0 = LA(1);
                    if ( (((LA684_0 >= ACCOUNT_SYMBOL) && (LA684_0 <= YEAR_SYMBOL)) || LA684_0 == AS_SYMBOL || LA684_0 == BACK_TICK_QUOTED_ID || LA684_0 == BIN_NUMBER || LA684_0 == DOUBLE_QUOTED_TEXT || LA684_0 == HEX_NUMBER || LA684_0 == IDENTIFIER || LA684_0 == SINGLE_QUOTED_TEXT))
                    {
                        alt684=1;
                    }
                }
                switch (alt684)
                {
            	case 1:
            	    // MySQL.g:2416:13: select_alias
            	    {
            	        FOLLOWPUSH(FOLLOW_select_alias_in_aliased_expression12803);
            	        select_alias2442=select_alias(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulealiased_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_alias2442.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:2419: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_OPERATOR2444;
    MySQLParser_user_variable_return user_variable2443;
    #undef	RETURN_TYPE_user_variable2443
    #define	RETURN_TYPE_user_variable2443 MySQLParser_user_variable_return

    MySQLParser_expression_return expression2445;
    #undef	RETURN_TYPE_expression2445
    #define	RETURN_TYPE_expression2445 MySQLParser_expression_return

    MySQLParser_system_variable_return system_variable2446;
    #undef	RETURN_TYPE_system_variable2446
    #define	RETURN_TYPE_system_variable2446 MySQLParser_system_variable_return

    pANTLR3_BASE_TREE ASSIGN_OPERATOR2444_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ASSIGN_OPERATOR2444       = NULL;
    user_variable2443.tree = NULL;

    expression2445.tree = NULL;

    system_variable2446.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ASSIGN_OPERATOR2444_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2419:36: ( user_variable ( ASSIGN_OPERATOR ^ expression )? | system_variable )

            ANTLR3_UINT32 alt686;

            alt686=2;

            switch ( LA(1) )
            {
            case AT_SIGN_SYMBOL:
            case AT_TEXT_SUFFIX:
            	{
            		alt686=1;
            	}
                break;
            case AT_AT_SIGN_SYMBOL:
            	{
            		alt686=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 686;
                EXCEPTION->state        = 0;


                goto rulevariableEx;

            }

            switch (alt686)
            {
        	case 1:
        	    // MySQL.g:2420:2: user_variable ( ASSIGN_OPERATOR ^ expression )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_user_variable_in_variable12824);
        	        user_variable2443=user_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user_variable2443.tree);

        	        // MySQL.g:2420:16: ( ASSIGN_OPERATOR ^ expression )?
        	        {
        	            int alt685=2;
        	            switch ( LA(1) )
        	            {
        	                case ASSIGN_OPERATOR:
        	                	{
        	                		alt685=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt685)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2420:17: ASSIGN_OPERATOR ^ expression
        	        	    {
        	        	        ASSIGN_OPERATOR2444 = (pANTLR3_COMMON_TOKEN) MATCHT(ASSIGN_OPERATOR, &FOLLOW_ASSIGN_OPERATOR_in_variable12827);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ASSIGN_OPERATOR2444_tree = 
        	        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASSIGN_OPERATOR2444))
        	        	        ;
        	        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ASSIGN_OPERATOR2444_tree, root_0));
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_variable12830);
        	        	        expression2445=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariableEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2445.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2421:4: system_variable
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_system_variable_in_variable12837);
        	        system_variable2446=system_variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, system_variable2446.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:2424:1: user_variable : ( ( AT_SIGN_SYMBOL text_or_identifier ) -> AT_TEXT_SUFFIX AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX );
 */
static MySQLParser_user_variable_return
user_variable(pMySQLParser ctx)
{
    MySQLParser_user_variable_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AT_SIGN_SYMBOL2447;
    pANTLR3_COMMON_TOKEN    AT_TEXT_SUFFIX2449;
    MySQLParser_text_or_identifier_return text_or_identifier2448;
    #undef	RETURN_TYPE_text_or_identifier2448
    #define	RETURN_TYPE_text_or_identifier2448 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE AT_SIGN_SYMBOL2447_tree;
    pANTLR3_BASE_TREE AT_TEXT_SUFFIX2449_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_AT_SIGN_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_or_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_SIGN_SYMBOL2447       = NULL;
    AT_TEXT_SUFFIX2449       = NULL;
    text_or_identifier2448.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SIGN_SYMBOL2447_tree   = NULL;
    AT_TEXT_SUFFIX2449_tree   = NULL;

    stream_AT_SIGN_SYMBOL   = NULL;
    #define CREATE_stream_AT_SIGN_SYMBOL  if (stream_AT_SIGN_SYMBOL == NULL) {stream_AT_SIGN_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token AT_SIGN_SYMBOL"); } 
    stream_text_or_identifier   = NULL;
    #define CREATE_stream_text_or_identifier  if (stream_text_or_identifier == NULL) {stream_text_or_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule text_or_identifier"); }

    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2424:14: ( ( AT_SIGN_SYMBOL text_or_identifier ) -> AT_TEXT_SUFFIX AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX )

            ANTLR3_UINT32 alt687;

            alt687=2;

            switch ( LA(1) )
            {
            case AT_SIGN_SYMBOL:
            	{
            		alt687=1;
            	}
                break;
            case AT_TEXT_SUFFIX:
            	{
            		alt687=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 687;
                EXCEPTION->state        = 0;


                goto ruleuser_variableEx;

            }

            switch (alt687)
            {
        	case 1:
        	    // MySQL.g:2425:2: ( AT_SIGN_SYMBOL text_or_identifier )
        	    {
        	        // MySQL.g:2425:2: ( AT_SIGN_SYMBOL text_or_identifier )
        	        // MySQL.g:2425:3: AT_SIGN_SYMBOL text_or_identifier
        	        {
        	            AT_SIGN_SYMBOL2447 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_user_variable12847);
        	            if  (HASEXCEPTION())
        	            {
        	                goto ruleuser_variableEx;
        	            }
        	            if (HASFAILED())
        	            {
        	                return retval;
        	            }
        	             
        	            if ( BACKTRACKING==0 ) { CREATE_stream_AT_SIGN_SYMBOL; stream_AT_SIGN_SYMBOL->add(stream_AT_SIGN_SYMBOL, AT_SIGN_SYMBOL2447, NULL); }


        	            FOLLOWPUSH(FOLLOW_text_or_identifier_in_user_variable12849);
        	            text_or_identifier2448=text_or_identifier(ctx);

        	            FOLLOWPOP();
        	            if  (HASEXCEPTION())
        	            {
        	                goto ruleuser_variableEx;
        	            }
        	            if (HASFAILED())
        	            {
        	                return retval;
        	            }

        	            if ( BACKTRACKING==0 ) { CREATE_stream_text_or_identifier; stream_text_or_identifier->add(stream_text_or_identifier, text_or_identifier2448.tree, NULL); }

        	        }


        	        /* AST REWRITE
        	         * elements          : text_or_identifier, AT_SIGN_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;
        	        	// 2425:38: -> AT_TEXT_SUFFIX AT_SIGN_SYMBOL text_or_identifier
        	        	{
        	        	    ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	    (pANTLR3_BASE_TREE)ADAPTOR->createTypeText(ADAPTOR, AT_TEXT_SUFFIX, (pANTLR3_UINT8)"AT_TEXT_SUFFIX")
        	        	    );

        	        	    ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	    stream_AT_SIGN_SYMBOL == NULL ? NULL : stream_AT_SIGN_SYMBOL->nextNode(stream_AT_SIGN_SYMBOL)
        	        	    );

        	        	    ADAPTOR->addChild(ADAPTOR, root_0, stream_text_or_identifier == NULL ? NULL : stream_text_or_identifier->nextTree(stream_text_or_identifier));

        	        	}


        	        	retval.tree = root_0; // set result root
        	        	if (stream_retval != NULL) stream_retval->free(stream_retval);


        	        }
        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2426:4: AT_TEXT_SUFFIX
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AT_TEXT_SUFFIX2449 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_TEXT_SUFFIX, &FOLLOW_AT_TEXT_SUFFIX_in_user_variable12863);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleuser_variableEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AT_TEXT_SUFFIX2449_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_TEXT_SUFFIX2449));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_TEXT_SUFFIX2449_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // 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 (stream_AT_SIGN_SYMBOL != NULL) stream_AT_SIGN_SYMBOL->free(stream_AT_SIGN_SYMBOL);
        if (stream_text_or_identifier != NULL) stream_text_or_identifier->free(stream_text_or_identifier);
    }


            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:2430: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_SYMBOL2450;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2452;
    MySQLParser_option_type_return option_type2451;
    #undef	RETURN_TYPE_option_type2451
    #define	RETURN_TYPE_option_type2451 MySQLParser_option_type_return

    MySQLParser_variable_name_return variable_name2453;
    #undef	RETURN_TYPE_variable_name2453
    #define	RETURN_TYPE_variable_name2453 MySQLParser_variable_name_return

    pANTLR3_BASE_TREE AT_AT_SIGN_SYMBOL2450_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL2452_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_AT_SIGN_SYMBOL2450       = NULL;
    DOT_SYMBOL2452       = NULL;
    option_type2451.tree = NULL;

    variable_name2453.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_AT_SIGN_SYMBOL2450_tree   = NULL;
    DOT_SYMBOL2452_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2430:16: ( AT_AT_SIGN_SYMBOL ( options {greedy=true; } : option_type DOT_SYMBOL )? variable_name )
        // MySQL.g:2431: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_SYMBOL2450 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_AT_SIGN_SYMBOL, &FOLLOW_AT_AT_SIGN_SYMBOL_in_system_variable12873);
            if  (HASEXCEPTION())
            {
                goto rulesystem_variableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AT_AT_SIGN_SYMBOL2450_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_AT_SIGN_SYMBOL2450));
            ADAPTOR->addChild(ADAPTOR, root_0, AT_AT_SIGN_SYMBOL2450_tree);
            }

            // MySQL.g:2431:20: ( options {greedy=true; } : option_type DOT_SYMBOL )?
            {
                int alt688=2;
                switch ( LA(1) )
                {
                    case GLOBAL_SYMBOL:
                    case LOCAL_SYMBOL:
                    case SESSION_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case DOT_SYMBOL:
                    		    	{
                    		    		alt688=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt688)
                {
            	case 1:
            	    // MySQL.g:2431:50: option_type DOT_SYMBOL
            	    {
            	        FOLLOWPUSH(FOLLOW_option_type_in_system_variable12889);
            	        option_type2451=option_type(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesystem_variableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, option_type2451.tree);

            	        DOT_SYMBOL2452 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_system_variable12891);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesystem_variableEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL2452_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2452));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2452_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_variable_name_in_system_variable12895);
            variable_name2453=variable_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesystem_variableEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_name2453.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:2434: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_SYMBOL2455;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2457;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL2458;
    MySQLParser_identifier_return identifier2454;
    #undef	RETURN_TYPE_identifier2454
    #define	RETURN_TYPE_identifier2454 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2456;
    #undef	RETURN_TYPE_identifier2456
    #define	RETURN_TYPE_identifier2456 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier2459;
    #undef	RETURN_TYPE_identifier2459
    #define	RETURN_TYPE_identifier2459 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL2455_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2457_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL2458_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL2455       = NULL;
    DEFAULT_SYMBOL2457       = NULL;
    DOT_SYMBOL2458       = NULL;
    identifier2454.tree = NULL;

    identifier2456.tree = NULL;

    identifier2459.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL2455_tree   = NULL;
    DEFAULT_SYMBOL2457_tree   = NULL;
    DOT_SYMBOL2458_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2434:14: ( identifier ( DOT_SYMBOL identifier )? | DEFAULT_SYMBOL DOT_SYMBOL identifier )

            ANTLR3_UINT32 alt690;

            alt690=2;

            {
                int LA690_0 = LA(1);
                if ( (((LA690_0 >= ACCOUNT_SYMBOL) && (LA690_0 <= YEAR_SYMBOL)) || LA690_0 == BACK_TICK_QUOTED_ID || LA690_0 == DOUBLE_QUOTED_TEXT || LA690_0 == IDENTIFIER))
                {
                    alt690=1;
                }
                else if ( (LA690_0 == DEFAULT_SYMBOL))
                {
                    alt690=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 690;
                    EXCEPTION->state        = 0;


                    goto rulevariable_nameEx;

                }
            }
            switch (alt690)
            {
        	case 1:
        	    // MySQL.g:2435:2: identifier ( DOT_SYMBOL identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_variable_name12904);
        	        identifier2454=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2454.tree);

        	        // MySQL.g:2435:13: ( DOT_SYMBOL identifier )?
        	        {
        	            int alt689=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		alt689=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt689)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2435:14: DOT_SYMBOL identifier
        	        	    {
        	        	        DOT_SYMBOL2455 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_variable_name12907);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariable_nameEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL2455_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2455));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2455_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_variable_name12909);
        	        	        identifier2456=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulevariable_nameEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2456.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2436:4: DEFAULT_SYMBOL DOT_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2457 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_variable_name12920);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2457_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2457));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2457_tree);
        	        }

        	        DOT_SYMBOL2458 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_variable_name12922);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOT_SYMBOL2458_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL2458));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL2458_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_variable_name12924);
        	        identifier2459=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevariable_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2459.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:2439: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_SYMBOL2460;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2461;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2463;
    pANTLR3_COMMON_TOKEN    AGAINST_SYMBOL2464;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2465;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2467;
    pANTLR3_COMMON_TOKEN    BOOLEAN_SYMBOL2468;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL2469;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL2470;
    pANTLR3_COMMON_TOKEN    NATURAL_SYMBOL2471;
    pANTLR3_COMMON_TOKEN    LANGUAGE_SYMBOL2472;
    pANTLR3_COMMON_TOKEN    MODE_SYMBOL2473;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL2474;
    pANTLR3_COMMON_TOKEN    QUERY_SYMBOL2475;
    pANTLR3_COMMON_TOKEN    EXPANSION_SYMBOL2476;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2477;
    MySQLParser_field_name_list_return field_name_list2462;
    #undef	RETURN_TYPE_field_name_list2462
    #define	RETURN_TYPE_field_name_list2462 MySQLParser_field_name_list_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression2466;
    #undef	RETURN_TYPE_bitwise_or_expression2466
    #define	RETURN_TYPE_bitwise_or_expression2466 MySQLParser_bitwise_or_expression_return

    pANTLR3_BASE_TREE MATCH_SYMBOL2460_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2461_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2463_tree;
    pANTLR3_BASE_TREE AGAINST_SYMBOL2464_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2465_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2467_tree;
    pANTLR3_BASE_TREE BOOLEAN_SYMBOL2468_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL2469_tree;
    pANTLR3_BASE_TREE IN_SYMBOL2470_tree;
    pANTLR3_BASE_TREE NATURAL_SYMBOL2471_tree;
    pANTLR3_BASE_TREE LANGUAGE_SYMBOL2472_tree;
    pANTLR3_BASE_TREE MODE_SYMBOL2473_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL2474_tree;
    pANTLR3_BASE_TREE QUERY_SYMBOL2475_tree;
    pANTLR3_BASE_TREE EXPANSION_SYMBOL2476_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2477_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    MATCH_SYMBOL2460       = NULL;
    OPEN_PAR_SYMBOL2461       = NULL;
    CLOSE_PAR_SYMBOL2463       = NULL;
    AGAINST_SYMBOL2464       = NULL;
    OPEN_PAR_SYMBOL2465       = NULL;
    IN_SYMBOL2467       = NULL;
    BOOLEAN_SYMBOL2468       = NULL;
    MODE_SYMBOL2469       = NULL;
    IN_SYMBOL2470       = NULL;
    NATURAL_SYMBOL2471       = NULL;
    LANGUAGE_SYMBOL2472       = NULL;
    MODE_SYMBOL2473       = NULL;
    WITH_SYMBOL2474       = NULL;
    QUERY_SYMBOL2475       = NULL;
    EXPANSION_SYMBOL2476       = NULL;
    CLOSE_PAR_SYMBOL2477       = NULL;
    field_name_list2462.tree = NULL;

    bitwise_or_expression2466.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    MATCH_SYMBOL2460_tree   = NULL;
    OPEN_PAR_SYMBOL2461_tree   = NULL;
    CLOSE_PAR_SYMBOL2463_tree   = NULL;
    AGAINST_SYMBOL2464_tree   = NULL;
    OPEN_PAR_SYMBOL2465_tree   = NULL;
    IN_SYMBOL2467_tree   = NULL;
    BOOLEAN_SYMBOL2468_tree   = NULL;
    MODE_SYMBOL2469_tree   = NULL;
    IN_SYMBOL2470_tree   = NULL;
    NATURAL_SYMBOL2471_tree   = NULL;
    LANGUAGE_SYMBOL2472_tree   = NULL;
    MODE_SYMBOL2473_tree   = NULL;
    WITH_SYMBOL2474_tree   = NULL;
    QUERY_SYMBOL2475_tree   = NULL;
    EXPANSION_SYMBOL2476_tree   = NULL;
    CLOSE_PAR_SYMBOL2477_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2439: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:2440: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_SYMBOL2460 = (pANTLR3_COMMON_TOKEN) MATCHT(MATCH_SYMBOL, &FOLLOW_MATCH_SYMBOL_in_match_expression12933);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MATCH_SYMBOL2460_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MATCH_SYMBOL2460))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, MATCH_SYMBOL2460_tree, root_0));
            }

            OPEN_PAR_SYMBOL2461 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12936);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2461_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2461));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2461_tree);
            }

            FOLLOWPUSH(FOLLOW_field_name_list_in_match_expression12938);
            field_name_list2462=field_name_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_name_list2462.tree);

            CLOSE_PAR_SYMBOL2463 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12940);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2463_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2463));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2463_tree);
            }

            AGAINST_SYMBOL2464 = (pANTLR3_COMMON_TOKEN) MATCHT(AGAINST_SYMBOL, &FOLLOW_AGAINST_SYMBOL_in_match_expression12942);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            AGAINST_SYMBOL2464_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AGAINST_SYMBOL2464));
            ADAPTOR->addChild(ADAPTOR, root_0, AGAINST_SYMBOL2464_tree);
            }

            OPEN_PAR_SYMBOL2465 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_match_expression12944);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2465_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2465));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2465_tree);
            }

            FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_match_expression12946);
            bitwise_or_expression2466=bitwise_or_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression2466.tree);

            // MySQL.g:2441:3: ( IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL | ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )? )
            {
                int alt693=2;
                switch ( LA(1) )
                {
                case IN_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case BOOLEAN_SYMBOL:
                			{
                				alt693=1;
                			}
                		    break;
                		case NATURAL_SYMBOL:
                			{
                				alt693=2;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 693;
                		    EXCEPTION->state        = 1;


                		    goto rulematch_expressionEx;

                		}

                	}
                    break;
                case CLOSE_PAR_SYMBOL:
                case WITH_SYMBOL:
                	{
                		alt693=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 693;
                    EXCEPTION->state        = 0;


                    goto rulematch_expressionEx;

                }

                switch (alt693)
                {
            	case 1:
            	    // MySQL.g:2442:4: IN_SYMBOL BOOLEAN_SYMBOL MODE_SYMBOL
            	    {
            	        IN_SYMBOL2467 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_match_expression12955);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IN_SYMBOL2467_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2467));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2467_tree);
            	        }

            	        BOOLEAN_SYMBOL2468 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOLEAN_SYMBOL, &FOLLOW_BOOLEAN_SYMBOL_in_match_expression12957);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BOOLEAN_SYMBOL2468_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOLEAN_SYMBOL2468));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BOOLEAN_SYMBOL2468_tree);
            	        }

            	        MODE_SYMBOL2469 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_match_expression12959);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulematch_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MODE_SYMBOL2469_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL2469));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL2469_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2443:6: ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )? ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )?
            	    {
            	        // MySQL.g:2443:6: ( IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL )?
            	        {
            	            int alt691=2;
            	            switch ( LA(1) )
            	            {
            	                case IN_SYMBOL:
            	                	{
            	                		alt691=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt691)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2443:7: IN_SYMBOL NATURAL_SYMBOL LANGUAGE_SYMBOL MODE_SYMBOL
            	        	    {
            	        	        IN_SYMBOL2470 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_match_expression12967);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL2470_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL2470));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL2470_tree);
            	        	        }

            	        	        NATURAL_SYMBOL2471 = (pANTLR3_COMMON_TOKEN) MATCHT(NATURAL_SYMBOL, &FOLLOW_NATURAL_SYMBOL_in_match_expression12969);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        NATURAL_SYMBOL2471_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATURAL_SYMBOL2471));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, NATURAL_SYMBOL2471_tree);
            	        	        }

            	        	        LANGUAGE_SYMBOL2472 = (pANTLR3_COMMON_TOKEN) MATCHT(LANGUAGE_SYMBOL, &FOLLOW_LANGUAGE_SYMBOL_in_match_expression12971);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LANGUAGE_SYMBOL2472_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LANGUAGE_SYMBOL2472));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LANGUAGE_SYMBOL2472_tree);
            	        	        }

            	        	        MODE_SYMBOL2473 = (pANTLR3_COMMON_TOKEN) MATCHT(MODE_SYMBOL, &FOLLOW_MODE_SYMBOL_in_match_expression12973);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MODE_SYMBOL2473_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MODE_SYMBOL2473));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MODE_SYMBOL2473_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:2443:62: ( WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL )?
            	        {
            	            int alt692=2;
            	            switch ( LA(1) )
            	            {
            	                case WITH_SYMBOL:
            	                	{
            	                		alt692=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt692)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2443:63: WITH_SYMBOL QUERY_SYMBOL EXPANSION_SYMBOL
            	        	    {
            	        	        WITH_SYMBOL2474 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_match_expression12978);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        WITH_SYMBOL2474_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL2474));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL2474_tree);
            	        	        }

            	        	        QUERY_SYMBOL2475 = (pANTLR3_COMMON_TOKEN) MATCHT(QUERY_SYMBOL, &FOLLOW_QUERY_SYMBOL_in_match_expression12980);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        QUERY_SYMBOL2475_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, QUERY_SYMBOL2475));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, QUERY_SYMBOL2475_tree);
            	        	        }

            	        	        EXPANSION_SYMBOL2476 = (pANTLR3_COMMON_TOKEN) MATCHT(EXPANSION_SYMBOL, &FOLLOW_EXPANSION_SYMBOL_in_match_expression12982);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulematch_expressionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EXPANSION_SYMBOL2476_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXPANSION_SYMBOL2476));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EXPANSION_SYMBOL2476_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2477 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_match_expression12992);
            if  (HASEXCEPTION())
            {
                goto rulematch_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2477_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2477));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2477_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:2449: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_SYMBOL2478;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2483;
    MySQLParser_expression_return expression2479;
    #undef	RETURN_TYPE_expression2479
    #define	RETURN_TYPE_expression2479 MySQLParser_expression_return

    MySQLParser_when_expression_return when_expression2480;
    #undef	RETURN_TYPE_when_expression2480
    #define	RETURN_TYPE_when_expression2480 MySQLParser_when_expression_return

    MySQLParser_then_expression_return then_expression2481;
    #undef	RETURN_TYPE_then_expression2481
    #define	RETURN_TYPE_then_expression2481 MySQLParser_then_expression_return

    MySQLParser_else_expression_return else_expression2482;
    #undef	RETURN_TYPE_else_expression2482
    #define	RETURN_TYPE_else_expression2482 MySQLParser_else_expression_return

    pANTLR3_BASE_TREE CASE_SYMBOL2478_tree;
    pANTLR3_BASE_TREE END_SYMBOL2483_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CASE_SYMBOL2478       = NULL;
    END_SYMBOL2483       = NULL;
    expression2479.tree = NULL;

    when_expression2480.tree = NULL;

    then_expression2481.tree = NULL;

    else_expression2482.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CASE_SYMBOL2478_tree   = NULL;
    END_SYMBOL2483_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2449:16: ( CASE_SYMBOL ( expression )? ( when_expression then_expression )+ ( else_expression )? END_SYMBOL )
        // MySQL.g:2450:2: CASE_SYMBOL ( expression )? ( when_expression then_expression )+ ( else_expression )? END_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CASE_SYMBOL2478 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_expression13002);
            if  (HASEXCEPTION())
            {
                goto rulecase_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2478_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2478));
            ADAPTOR->addChild(ADAPTOR, root_0, CASE_SYMBOL2478_tree);
            }

            // MySQL.g:2450:14: ( expression )?
            {
                int alt694=2;
                {
                    int LA694_0 = LA(1);
                    if ( (((LA694_0 >= ACCOUNT_SYMBOL) && (LA694_0 <= YEAR_SYMBOL)) || ((LA694_0 >= AT_AT_SIGN_SYMBOL) && (LA694_0 <= AT_TEXT_SUFFIX)) || LA694_0 == BACK_TICK_QUOTED_ID || ((LA694_0 >= BINARY_SYMBOL) && (LA694_0 <= BIN_NUMBER)) || LA694_0 == BITWISE_NOT_OPERATOR || ((LA694_0 >= BIT_AND_SYMBOL) && (LA694_0 <= BIT_XOR_SYMBOL)) || ((LA694_0 >= CASE_SYMBOL) && (LA694_0 <= CAST_SYMBOL)) || LA694_0 == CHAR_SYMBOL || ((LA694_0 >= CONVERT_SYMBOL) && (LA694_0 <= COUNT_SYMBOL)) || LA694_0 == CURDATE_SYMBOL || LA694_0 == CURRENT_USER_SYMBOL || LA694_0 == CURTIME_SYMBOL || LA694_0 == DATABASE_SYMBOL || LA694_0 == DATE_ADD_SYMBOL || LA694_0 == DATE_SUB_SYMBOL || LA694_0 == DECIMAL_NUMBER || LA694_0 == DOT_SYMBOL || LA694_0 == DOUBLE_QUOTED_TEXT || LA694_0 == EXISTS_SYMBOL || ((LA694_0 >= EXTRACT_SYMBOL) && (LA694_0 <= FALSE_SYMBOL)) || LA694_0 == FLOAT_NUMBER || LA694_0 == GROUP_CONCAT_SYMBOL || LA694_0 == HEX_NUMBER || ((LA694_0 >= IDENTIFIER) && (LA694_0 <= IF_SYMBOL)) || LA694_0 == INSERT_SYMBOL || LA694_0 == INTERVAL_SYMBOL || LA694_0 == INT_NUMBER || LA694_0 == LEFT_SYMBOL || LA694_0 == LOGICAL_NOT_OPERATOR || LA694_0 == LONG_NUMBER || LA694_0 == MATCH_SYMBOL || LA694_0 == MAX_SYMBOL || LA694_0 == MINUS_OPERATOR || LA694_0 == MIN_SYMBOL || LA694_0 == MOD_SYMBOL || LA694_0 == NCHAR_TEXT || LA694_0 == NOT2_SYMBOL || ((LA694_0 >= NOT_SYMBOL) && (LA694_0 <= NOW_SYMBOL)) || LA694_0 == NULL2_SYMBOL || LA694_0 == NULL_SYMBOL || ((LA694_0 >= OPEN_CURLY_SYMBOL) && (LA694_0 <= OPEN_PAR_SYMBOL)) || LA694_0 == PARAM_MARKER || ((LA694_0 >= PLUS_OPERATOR) && (LA694_0 <= POSITION_SYMBOL)) || ((LA694_0 >= REPEAT_SYMBOL) && (LA694_0 <= REPLACE_SYMBOL)) || LA694_0 == RIGHT_SYMBOL || LA694_0 == SINGLE_QUOTED_TEXT || LA694_0 == STDDEV_SAMP_SYMBOL || LA694_0 == STD_SYMBOL || LA694_0 == SUBSTRING_SYMBOL || ((LA694_0 >= SUM_SYMBOL) && (LA694_0 <= SYSDATE_SYMBOL)) || ((LA694_0 >= TRIM_SYMBOL) && (LA694_0 <= TRUE_SYMBOL)) || LA694_0 == ULONGLONG_NUMBER || LA694_0 == UNDERSCORE_CHARSET || ((LA694_0 >= UTC_DATE_SYMBOL) && (LA694_0 <= UTC_TIME_SYMBOL)) || LA694_0 == VALUES_SYMBOL || LA694_0 == VARIANCE_SYMBOL || LA694_0 == VAR_SAMP_SYMBOL))
                    {
                        alt694=1;
                    }
                }
                switch (alt694)
                {
            	case 1:
            	    // MySQL.g:2450:14: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_case_expression13004);
            	        expression2479=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2479.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2450:26: ( when_expression then_expression )+
            {
                int cnt695=0;

                for (;;)
                {
                    int alt695=2;
            	switch ( LA(1) )
            	{
            	case WHEN_SYMBOL:
            		{
            			alt695=1;
            		}
            	    break;

            	}

            	switch (alt695)
            	{
            	    case 1:
            	        // MySQL.g:2450:27: when_expression then_expression
            	        {
            	            FOLLOWPUSH(FOLLOW_when_expression_in_case_expression13008);
            	            when_expression2480=when_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_expressionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, when_expression2480.tree);

            	            FOLLOWPUSH(FOLLOW_then_expression_in_case_expression13010);
            	            then_expression2481=then_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_expressionEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_expression2481.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt695 >= 1 )
            		{
            		    goto loop695;
            		}
            		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;
            	}
            	cnt695++;
                }
                loop695: ;	/* Jump to here if this rule does not match */
            }

            // MySQL.g:2450:61: ( else_expression )?
            {
                int alt696=2;
                switch ( LA(1) )
                {
                    case ELSE_SYMBOL:
                    	{
                    		alt696=1;
                    	}
                        break;
                }

                switch (alt696)
                {
            	case 1:
            	    // MySQL.g:2450:61: else_expression
            	    {
            	        FOLLOWPUSH(FOLLOW_else_expression_in_case_expression13014);
            	        else_expression2482=else_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_expressionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, else_expression2482.tree);

            	    }
            	    break;

                }
            }

            END_SYMBOL2483 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_case_expression13017);
            if  (HASEXCEPTION())
            {
                goto rulecase_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2483_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2483));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2483_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:2453: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_SYMBOL2484;
    MySQLParser_expression_return expression2485;
    #undef	RETURN_TYPE_expression2485
    #define	RETURN_TYPE_expression2485 MySQLParser_expression_return

    pANTLR3_BASE_TREE WHEN_SYMBOL2484_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHEN_SYMBOL2484       = NULL;
    expression2485.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHEN_SYMBOL2484_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2453:16: ( WHEN_SYMBOL ^ expression )
        // MySQL.g:2454:2: WHEN_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHEN_SYMBOL2484 = (pANTLR3_COMMON_TOKEN) MATCHT(WHEN_SYMBOL, &FOLLOW_WHEN_SYMBOL_in_when_expression13026);
            if  (HASEXCEPTION())
            {
                goto rulewhen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHEN_SYMBOL2484_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHEN_SYMBOL2484))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, WHEN_SYMBOL2484_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_when_expression13029);
            expression2485=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2485.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:2457: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_SYMBOL2486;
    MySQLParser_expression_return expression2487;
    #undef	RETURN_TYPE_expression2487
    #define	RETURN_TYPE_expression2487 MySQLParser_expression_return

    pANTLR3_BASE_TREE THEN_SYMBOL2486_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    THEN_SYMBOL2486       = NULL;
    expression2487.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    THEN_SYMBOL2486_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2457:16: ( THEN_SYMBOL ^ expression )
        // MySQL.g:2458:2: THEN_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            THEN_SYMBOL2486 = (pANTLR3_COMMON_TOKEN) MATCHT(THEN_SYMBOL, &FOLLOW_THEN_SYMBOL_in_then_expression13038);
            if  (HASEXCEPTION())
            {
                goto rulethen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            THEN_SYMBOL2486_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THEN_SYMBOL2486))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, THEN_SYMBOL2486_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_then_expression13041);
            expression2487=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulethen_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2487.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:2461: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_SYMBOL2488;
    MySQLParser_expression_return expression2489;
    #undef	RETURN_TYPE_expression2489
    #define	RETURN_TYPE_expression2489 MySQLParser_expression_return

    pANTLR3_BASE_TREE ELSE_SYMBOL2488_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSE_SYMBOL2488       = NULL;
    expression2489.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSE_SYMBOL2488_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2461:16: ( ELSE_SYMBOL ^ expression )
        // MySQL.g:2462:2: ELSE_SYMBOL ^ expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ELSE_SYMBOL2488 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_else_expression13050);
            if  (HASEXCEPTION())
            {
                goto ruleelse_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ELSE_SYMBOL2488_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2488))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ELSE_SYMBOL2488_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_else_expression13053);
            expression2489=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleelse_expressionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2489.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:2465: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_SYMBOL2490;
    pANTLR3_COMMON_TOKEN    CAST_SYMBOL2492;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2493;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2495;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2497;
    pANTLR3_COMMON_TOKEN    CONVERT_SYMBOL2498;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2499;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2501;
    pANTLR3_COMMON_TOKEN    USING_SYMBOL2503;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2505;
    MySQLParser_primary_return primary2491;
    #undef	RETURN_TYPE_primary2491
    #define	RETURN_TYPE_primary2491 MySQLParser_primary_return

    MySQLParser_expression_return expression2494;
    #undef	RETURN_TYPE_expression2494
    #define	RETURN_TYPE_expression2494 MySQLParser_expression_return

    MySQLParser_cast_type_return cast_type2496;
    #undef	RETURN_TYPE_cast_type2496
    #define	RETURN_TYPE_cast_type2496 MySQLParser_cast_type_return

    MySQLParser_expression_return expression2500;
    #undef	RETURN_TYPE_expression2500
    #define	RETURN_TYPE_expression2500 MySQLParser_expression_return

    MySQLParser_cast_type_return cast_type2502;
    #undef	RETURN_TYPE_cast_type2502
    #define	RETURN_TYPE_cast_type2502 MySQLParser_cast_type_return

    MySQLParser_charset_name_return charset_name2504;
    #undef	RETURN_TYPE_charset_name2504
    #define	RETURN_TYPE_charset_name2504 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE BINARY_SYMBOL2490_tree;
    pANTLR3_BASE_TREE CAST_SYMBOL2492_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2493_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2495_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2497_tree;
    pANTLR3_BASE_TREE CONVERT_SYMBOL2498_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2499_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2501_tree;
    pANTLR3_BASE_TREE USING_SYMBOL2503_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2505_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2490       = NULL;
    CAST_SYMBOL2492       = NULL;
    OPEN_PAR_SYMBOL2493       = NULL;
    AS_SYMBOL2495       = NULL;
    CLOSE_PAR_SYMBOL2497       = NULL;
    CONVERT_SYMBOL2498       = NULL;
    OPEN_PAR_SYMBOL2499       = NULL;
    COMMA_SYMBOL2501       = NULL;
    USING_SYMBOL2503       = NULL;
    CLOSE_PAR_SYMBOL2505       = NULL;
    primary2491.tree = NULL;

    expression2494.tree = NULL;

    cast_type2496.tree = NULL;

    expression2500.tree = NULL;

    cast_type2502.tree = NULL;

    charset_name2504.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2490_tree   = NULL;
    CAST_SYMBOL2492_tree   = NULL;
    OPEN_PAR_SYMBOL2493_tree   = NULL;
    AS_SYMBOL2495_tree   = NULL;
    CLOSE_PAR_SYMBOL2497_tree   = NULL;
    CONVERT_SYMBOL2498_tree   = NULL;
    OPEN_PAR_SYMBOL2499_tree   = NULL;
    COMMA_SYMBOL2501_tree   = NULL;
    USING_SYMBOL2503_tree   = NULL;
    CLOSE_PAR_SYMBOL2505_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2465: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 alt698;

            alt698=3;

            switch ( LA(1) )
            {
            case BINARY_SYMBOL:
            	{
            		alt698=1;
            	}
                break;
            case CAST_SYMBOL:
            	{
            		alt698=2;
            	}
                break;
            case CONVERT_SYMBOL:
            	{
            		alt698=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 698;
                EXCEPTION->state        = 0;


                goto rulecast_expressionEx;

            }

            switch (alt698)
            {
        	case 1:
        	    // MySQL.g:2466:2: BINARY_SYMBOL primary
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2490 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_cast_expression13062);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2490_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2490));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2490_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_primary_in_cast_expression13064);
        	        primary2491=primary(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, primary2491.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2467:4: CAST_SYMBOL OPEN_PAR_SYMBOL expression AS_SYMBOL cast_type CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CAST_SYMBOL2492 = (pANTLR3_COMMON_TOKEN) MATCHT(CAST_SYMBOL, &FOLLOW_CAST_SYMBOL_in_cast_expression13069);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CAST_SYMBOL2492_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CAST_SYMBOL2492));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CAST_SYMBOL2492_tree);
        	        }

        	        OPEN_PAR_SYMBOL2493 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13071);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2493_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2493));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2493_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_cast_expression13073);
        	        expression2494=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2494.tree);

        	        AS_SYMBOL2495 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_cast_expression13075);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AS_SYMBOL2495_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2495));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2495_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_cast_type_in_cast_expression13077);
        	        cast_type2496=cast_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cast_type2496.tree);

        	        CLOSE_PAR_SYMBOL2497 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13079);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2497_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2497));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2497_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2468: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_SYMBOL2498 = (pANTLR3_COMMON_TOKEN) MATCHT(CONVERT_SYMBOL, &FOLLOW_CONVERT_SYMBOL_in_cast_expression13084);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONVERT_SYMBOL2498_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONVERT_SYMBOL2498));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONVERT_SYMBOL2498_tree);
        	        }

        	        OPEN_PAR_SYMBOL2499 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_cast_expression13086);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2499_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2499));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2499_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_cast_expression13088);
        	        expression2500=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2500.tree);

        	        // MySQL.g:2468:46: ( COMMA_SYMBOL cast_type | USING_SYMBOL charset_name )
        	        {
        	            int alt697=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMA_SYMBOL:
        	            	{
        	            		alt697=1;
        	            	}
        	                break;
        	            case USING_SYMBOL:
        	            	{
        	            		alt697=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 697;
        	                EXCEPTION->state        = 0;


        	                goto rulecast_expressionEx;

        	            }

        	            switch (alt697)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2468:47: COMMA_SYMBOL cast_type
        	        	    {
        	        	        COMMA_SYMBOL2501 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_cast_expression13091);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COMMA_SYMBOL2501_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2501));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2501_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_cast_type_in_cast_expression13093);
        	        	        cast_type2502=cast_type(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cast_type2502.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2468:72: USING_SYMBOL charset_name
        	        	    {
        	        	        USING_SYMBOL2503 = (pANTLR3_COMMON_TOKEN) MATCHT(USING_SYMBOL, &FOLLOW_USING_SYMBOL_in_cast_expression13097);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        USING_SYMBOL2503_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, USING_SYMBOL2503));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, USING_SYMBOL2503_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_cast_expression13099);
        	        	        charset_name2504=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_expressionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2504.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        CLOSE_PAR_SYMBOL2505 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_cast_expression13102);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2505_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2505));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2505_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:2471: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 )? |{...}? JSON_SYMBOL );
 */
static MySQLParser_cast_type_return
cast_type(pMySQLParser ctx)
{
    MySQLParser_cast_type_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2506;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2508;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL2511;
    pANTLR3_COMMON_TOKEN    SIGNED_SYMBOL2513;
    pANTLR3_COMMON_TOKEN    INT_SYMBOL2514;
    pANTLR3_COMMON_TOKEN    UNSIGNED_SYMBOL2515;
    pANTLR3_COMMON_TOKEN    INT_SYMBOL2516;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2517;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2518;
    pANTLR3_COMMON_TOKEN    DATETIME_SYMBOL2520;
    pANTLR3_COMMON_TOKEN    DECIMAL_SYMBOL2522;
    pANTLR3_COMMON_TOKEN    JSON_SYMBOL2524;
    MySQLParser_field_length_return field_length2507;
    #undef	RETURN_TYPE_field_length2507
    #define	RETURN_TYPE_field_length2507 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2509;
    #undef	RETURN_TYPE_field_length2509
    #define	RETURN_TYPE_field_length2509 MySQLParser_field_length_return

    MySQLParser_encoding_return encoding2510;
    #undef	RETURN_TYPE_encoding2510
    #define	RETURN_TYPE_encoding2510 MySQLParser_encoding_return

    MySQLParser_field_length_return field_length2512;
    #undef	RETURN_TYPE_field_length2512
    #define	RETURN_TYPE_field_length2512 MySQLParser_field_length_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2519;
    #undef	RETURN_TYPE_type_datetime_precision2519
    #define	RETURN_TYPE_type_datetime_precision2519 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2521;
    #undef	RETURN_TYPE_type_datetime_precision2521
    #define	RETURN_TYPE_type_datetime_precision2521 MySQLParser_type_datetime_precision_return

    MySQLParser_float_options_return float_options2523;
    #undef	RETURN_TYPE_float_options2523
    #define	RETURN_TYPE_float_options2523 MySQLParser_float_options_return

    pANTLR3_BASE_TREE BINARY_SYMBOL2506_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2508_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL2511_tree;
    pANTLR3_BASE_TREE SIGNED_SYMBOL2513_tree;
    pANTLR3_BASE_TREE INT_SYMBOL2514_tree;
    pANTLR3_BASE_TREE UNSIGNED_SYMBOL2515_tree;
    pANTLR3_BASE_TREE INT_SYMBOL2516_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL2517_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2518_tree;
    pANTLR3_BASE_TREE DATETIME_SYMBOL2520_tree;
    pANTLR3_BASE_TREE DECIMAL_SYMBOL2522_tree;
    pANTLR3_BASE_TREE JSON_SYMBOL2524_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2506       = NULL;
    CHAR_SYMBOL2508       = NULL;
    NCHAR_SYMBOL2511       = NULL;
    SIGNED_SYMBOL2513       = NULL;
    INT_SYMBOL2514       = NULL;
    UNSIGNED_SYMBOL2515       = NULL;
    INT_SYMBOL2516       = NULL;
    DATE_SYMBOL2517       = NULL;
    TIME_SYMBOL2518       = NULL;
    DATETIME_SYMBOL2520       = NULL;
    DECIMAL_SYMBOL2522       = NULL;
    JSON_SYMBOL2524       = NULL;
    field_length2507.tree = NULL;

    field_length2509.tree = NULL;

    encoding2510.tree = NULL;

    field_length2512.tree = NULL;

    type_datetime_precision2519.tree = NULL;

    type_datetime_precision2521.tree = NULL;

    float_options2523.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2506_tree   = NULL;
    CHAR_SYMBOL2508_tree   = NULL;
    NCHAR_SYMBOL2511_tree   = NULL;
    SIGNED_SYMBOL2513_tree   = NULL;
    INT_SYMBOL2514_tree   = NULL;
    UNSIGNED_SYMBOL2515_tree   = NULL;
    INT_SYMBOL2516_tree   = NULL;
    DATE_SYMBOL2517_tree   = NULL;
    TIME_SYMBOL2518_tree   = NULL;
    DATETIME_SYMBOL2520_tree   = NULL;
    DECIMAL_SYMBOL2522_tree   = NULL;
    JSON_SYMBOL2524_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2471: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 )? |{...}? JSON_SYMBOL )

            ANTLR3_UINT32 alt708;

            alt708=10;

            switch ( LA(1) )
            {
            case BINARY_SYMBOL:
            	{
            		alt708=1;
            	}
                break;
            case CHAR_SYMBOL:
            	{
            		alt708=2;
            	}
                break;
            case NCHAR_SYMBOL:
            	{
            		alt708=3;
            	}
                break;
            case SIGNED_SYMBOL:
            	{
            		alt708=4;
            	}
                break;
            case UNSIGNED_SYMBOL:
            	{
            		alt708=5;
            	}
                break;
            case DATE_SYMBOL:
            	{
            		alt708=6;
            	}
                break;
            case TIME_SYMBOL:
            	{
            		alt708=7;
            	}
                break;
            case DATETIME_SYMBOL:
            	{
            		alt708=8;
            	}
                break;
            case DECIMAL_SYMBOL:
            	{
            		alt708=9;
            	}
                break;
            case JSON_SYMBOL:
            	{
            		alt708=10;
            	}
                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 rulecast_typeEx;

            }

            switch (alt708)
            {
        	case 1:
        	    // MySQL.g:2472:2: BINARY_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2506 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_cast_type13111);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2506_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2506));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2506_tree);
        	        }

        	        // MySQL.g:2472:16: ( field_length )?
        	        {
        	            int alt699=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt699=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt699)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2472:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type13113);
        	        	        field_length2507=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2507.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2473:4: CHAR_SYMBOL ( field_length )? ( encoding )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2508 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_cast_type13119);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2508_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2508));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2508_tree);
        	        }

        	        // MySQL.g:2473:16: ( field_length )?
        	        {
        	            int alt700=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt700=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt700)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2473:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type13121);
        	        	        field_length2509=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2509.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2473:30: ( encoding )?
        	        {
        	            int alt701=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt701=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt701)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2473:30: encoding
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_encoding_in_cast_type13124);
        	        	        encoding2510=encoding(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, encoding2510.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2474:4: NCHAR_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL2511 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_cast_type13130);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL2511_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL2511));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL2511_tree);
        	        }

        	        // MySQL.g:2474:17: ( field_length )?
        	        {
        	            int alt702=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt702=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt702)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2474:17: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_cast_type13132);
        	        	        field_length2512=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2512.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2475:4: SIGNED_SYMBOL ( INT_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SIGNED_SYMBOL2513 = (pANTLR3_COMMON_TOKEN) MATCHT(SIGNED_SYMBOL, &FOLLOW_SIGNED_SYMBOL_in_cast_type13138);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SIGNED_SYMBOL2513_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SIGNED_SYMBOL2513));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SIGNED_SYMBOL2513_tree);
        	        }

        	        // MySQL.g:2475:18: ( INT_SYMBOL )?
        	        {
        	            int alt703=2;
        	            switch ( LA(1) )
        	            {
        	                case INT_SYMBOL:
        	                	{
        	                		alt703=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt703)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2475:18: INT_SYMBOL
        	        	    {
        	        	        INT_SYMBOL2514 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_SYMBOL, &FOLLOW_INT_SYMBOL_in_cast_type13140);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INT_SYMBOL2514_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_SYMBOL2514));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_SYMBOL2514_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2476:4: UNSIGNED_SYMBOL ( INT_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNSIGNED_SYMBOL2515 = (pANTLR3_COMMON_TOKEN) MATCHT(UNSIGNED_SYMBOL, &FOLLOW_UNSIGNED_SYMBOL_in_cast_type13146);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNSIGNED_SYMBOL2515_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNSIGNED_SYMBOL2515));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNSIGNED_SYMBOL2515_tree);
        	        }

        	        // MySQL.g:2476:20: ( INT_SYMBOL )?
        	        {
        	            int alt704=2;
        	            switch ( LA(1) )
        	            {
        	                case INT_SYMBOL:
        	                	{
        	                		alt704=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt704)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2476:20: INT_SYMBOL
        	        	    {
        	        	        INT_SYMBOL2516 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_SYMBOL, &FOLLOW_INT_SYMBOL_in_cast_type13148);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        INT_SYMBOL2516_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_SYMBOL2516));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, INT_SYMBOL2516_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2477:4: DATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2517 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_cast_type13154);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2517_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2517));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2517_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2478:4: TIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2518 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_cast_type13159);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2518_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2518));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2518_tree);
        	        }

        	        // MySQL.g:2478:16: ( type_datetime_precision )?
        	        {
        	            int alt705=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt705=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt705)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2478:16: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_cast_type13161);
        	        	        type_datetime_precision2519=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2519.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2479:4: DATETIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATETIME_SYMBOL2520 = (pANTLR3_COMMON_TOKEN) MATCHT(DATETIME_SYMBOL, &FOLLOW_DATETIME_SYMBOL_in_cast_type13167);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATETIME_SYMBOL2520_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATETIME_SYMBOL2520));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATETIME_SYMBOL2520_tree);
        	        }

        	        // MySQL.g:2479:20: ( type_datetime_precision )?
        	        {
        	            int alt706=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt706=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt706)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2479:20: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_cast_type13169);
        	        	        type_datetime_precision2521=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2521.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2480:4: DECIMAL_SYMBOL ( float_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DECIMAL_SYMBOL2522 = (pANTLR3_COMMON_TOKEN) MATCHT(DECIMAL_SYMBOL, &FOLLOW_DECIMAL_SYMBOL_in_cast_type13175);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DECIMAL_SYMBOL2522_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECIMAL_SYMBOL2522));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DECIMAL_SYMBOL2522_tree);
        	        }

        	        // MySQL.g:2480:19: ( float_options )?
        	        {
        	            int alt707=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt707=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt707)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2480:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_cast_type13177);
        	        	        float_options2523=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecast_typeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2523.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2481:4: {...}? JSON_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50708)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50708";
        	                EXCEPTION->ruleName	 = (void *)"cast_type";


        	        }

        	        JSON_SYMBOL2524 = (pANTLR3_COMMON_TOKEN) MATCHT(JSON_SYMBOL, &FOLLOW_JSON_SYMBOL_in_cast_type13185);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecast_typeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JSON_SYMBOL2524_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JSON_SYMBOL2524));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JSON_SYMBOL2524_tree);
        	        }

        	    }
        	    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:2484: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_SYMBOL2525;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2526;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2527;
    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2528;
    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2529;
    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2532;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2533;
    pANTLR3_COMMON_TOKEN    BYTE_SYMBOL2534;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2537;
    MySQLParser_charset_return charset2530;
    #undef	RETURN_TYPE_charset2530
    #define	RETURN_TYPE_charset2530 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2531;
    #undef	RETURN_TYPE_charset_name2531
    #define	RETURN_TYPE_charset_name2531 MySQLParser_charset_name_return

    MySQLParser_charset_return charset2535;
    #undef	RETURN_TYPE_charset2535
    #define	RETURN_TYPE_charset2535 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2536;
    #undef	RETURN_TYPE_charset_name2536
    #define	RETURN_TYPE_charset_name2536 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE ASCII_SYMBOL2525_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2526_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2527_tree;
    pANTLR3_BASE_TREE ASCII_SYMBOL2528_tree;
    pANTLR3_BASE_TREE UNICODE_SYMBOL2529_tree;
    pANTLR3_BASE_TREE UNICODE_SYMBOL2532_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2533_tree;
    pANTLR3_BASE_TREE BYTE_SYMBOL2534_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2537_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ASCII_SYMBOL2525       = NULL;
    BINARY_SYMBOL2526       = NULL;
    BINARY_SYMBOL2527       = NULL;
    ASCII_SYMBOL2528       = NULL;
    UNICODE_SYMBOL2529       = NULL;
    UNICODE_SYMBOL2532       = NULL;
    BINARY_SYMBOL2533       = NULL;
    BYTE_SYMBOL2534       = NULL;
    BINARY_SYMBOL2537       = NULL;
    charset2530.tree = NULL;

    charset_name2531.tree = NULL;

    charset2535.tree = NULL;

    charset_name2536.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ASCII_SYMBOL2525_tree   = NULL;
    BINARY_SYMBOL2526_tree   = NULL;
    BINARY_SYMBOL2527_tree   = NULL;
    ASCII_SYMBOL2528_tree   = NULL;
    UNICODE_SYMBOL2529_tree   = NULL;
    UNICODE_SYMBOL2532_tree   = NULL;
    BINARY_SYMBOL2533_tree   = NULL;
    BYTE_SYMBOL2534_tree   = NULL;
    BINARY_SYMBOL2537_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2484: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 alt713;

            alt713=5;

            switch ( LA(1) )
            {
            case ASCII_SYMBOL:
            	{
            		alt713=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		alt713=2;
            	}
                break;
            case UNICODE_SYMBOL:
            	{
            		alt713=3;
            	}
                break;
            case BYTE_SYMBOL:
            	{
            		alt713=4;
            	}
                break;
            case CHARSET_SYMBOL:
            case CHAR_SYMBOL:
            	{
            		alt713=5;
            	}
                break;

            default:
                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 ruleencodingEx;

            }

            switch (alt713)
            {
        	case 1:
        	    // MySQL.g:2485:2: ASCII_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ASCII_SYMBOL2525 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_encoding13194);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2525_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2525));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2525_tree);
        	        }

        	        // MySQL.g:2485:15: ( BINARY_SYMBOL )?
        	        {
        	            int alt709=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt709=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt709)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2485:15: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2526 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding13196);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2526_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2526));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2526_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2486:4: BINARY_SYMBOL ( ASCII_SYMBOL | UNICODE_SYMBOL | charset charset_name )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2527 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding13202);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2527_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2527));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2527_tree);
        	        }

        	        // MySQL.g:2486:18: ( ASCII_SYMBOL | UNICODE_SYMBOL | charset charset_name )?
        	        {
        	            int alt710=4;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                	{
        	                		alt710=1;
        	                	}
        	                    break;
        	                case UNICODE_SYMBOL:
        	                	{
        	                		alt710=2;
        	                	}
        	                    break;
        	                case CHARSET_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt710=3;
        	                	}
        	                    break;
        	            }

        	            switch (alt710)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2486:19: ASCII_SYMBOL
        	        	    {
        	        	        ASCII_SYMBOL2528 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_encoding13205);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ASCII_SYMBOL2528_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2528));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2528_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2486:34: UNICODE_SYMBOL
        	        	    {
        	        	        UNICODE_SYMBOL2529 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_encoding13209);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNICODE_SYMBOL2529_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2529));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2529_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:2486:51: charset charset_name
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_in_encoding13213);
        	        	        charset2530=charset(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2530.tree);

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_encoding13215);
        	        	        charset_name2531=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2531.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2487:4: UNICODE_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNICODE_SYMBOL2532 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_encoding13222);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNICODE_SYMBOL2532_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2532));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2532_tree);
        	        }

        	        // MySQL.g:2487:19: ( BINARY_SYMBOL )?
        	        {
        	            int alt711=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt711=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt711)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2487:19: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2533 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding13224);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2533_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2533));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2533_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2488:4: BYTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BYTE_SYMBOL2534 = (pANTLR3_COMMON_TOKEN) MATCHT(BYTE_SYMBOL, &FOLLOW_BYTE_SYMBOL_in_encoding13230);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BYTE_SYMBOL2534_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BYTE_SYMBOL2534));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BYTE_SYMBOL2534_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2489:4: charset charset_name ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_in_encoding13235);
        	        charset2535=charset(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2535.tree);

        	        FOLLOWPUSH(FOLLOW_charset_name_in_encoding13237);
        	        charset_name2536=charset_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleencodingEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2536.tree);

        	        // MySQL.g:2489:25: ( BINARY_SYMBOL )?
        	        {
        	            int alt712=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt712=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt712)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2489:25: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2537 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_encoding13239);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleencodingEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2537_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2537));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2537_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:2492: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_SYMBOL2538;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2539;
    pANTLR3_COMMON_TOKEN    CHARSET_SYMBOL2540;

    pANTLR3_BASE_TREE CHAR_SYMBOL2538_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2539_tree;
    pANTLR3_BASE_TREE CHARSET_SYMBOL2540_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL2538       = NULL;
    SET_SYMBOL2539       = NULL;
    CHARSET_SYMBOL2540       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL2538_tree   = NULL;
    SET_SYMBOL2539_tree   = NULL;
    CHARSET_SYMBOL2540_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2492:8: ( CHAR_SYMBOL SET_SYMBOL | CHARSET_SYMBOL )

            ANTLR3_UINT32 alt714;

            alt714=2;

            switch ( LA(1) )
            {
            case CHAR_SYMBOL:
            	{
            		alt714=1;
            	}
                break;
            case CHARSET_SYMBOL:
            	{
            		alt714=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 714;
                EXCEPTION->state        = 0;


                goto rulecharsetEx;

            }

            switch (alt714)
            {
        	case 1:
        	    // MySQL.g:2493:2: CHAR_SYMBOL SET_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2538 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_charset13249);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2538_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2538));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2538_tree);
        	        }

        	        SET_SYMBOL2539 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_charset13251);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2539_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2539));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2539_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2493:27: CHARSET_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHARSET_SYMBOL2540 = (pANTLR3_COMMON_TOKEN) MATCHT(CHARSET_SYMBOL, &FOLLOW_CHARSET_SYMBOL_in_charset13255);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharsetEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHARSET_SYMBOL2540_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHARSET_SYMBOL2540));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHARSET_SYMBOL2540_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:2496: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    set2541;

    pANTLR3_BASE_TREE set2541_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2541       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2541_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2496:9: ( NOT_SYMBOL | NOT2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2541=(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, 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 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:2501: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    set2542;

    pANTLR3_BASE_TREE set2542_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2542       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2542_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2501:10: ( LOGICAL_NOT_OPERATOR | NOT2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2542=(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, 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 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:2506: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    set2543;

    pANTLR3_BASE_TREE set2543_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2543       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2543_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2506:8: ( OR_SYMBOL | LOGICAL_OR_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2543=(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, set2543))
                );
                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:2511: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    set2544;

    pANTLR3_BASE_TREE set2544_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2544       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2544_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2511:9: ( XOR_SYMBOL | BITWISE_XOR_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2544=(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, set2544))
                );
                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:2516: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    set2545;

    pANTLR3_BASE_TREE set2545_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2545       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2545_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2516:9: ( AND_SYMBOL | LOGICAL_AND_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2545=(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, set2545))
                );
                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:2521:1: interval : expression interval_unit ;
 */
static MySQLParser_interval_return
interval(pMySQLParser ctx)
{
    MySQLParser_interval_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_expression_return expression2546;
    #undef	RETURN_TYPE_expression2546
    #define	RETURN_TYPE_expression2546 MySQLParser_expression_return

    MySQLParser_interval_unit_return interval_unit2547;
    #undef	RETURN_TYPE_interval_unit2547
    #define	RETURN_TYPE_interval_unit2547 MySQLParser_interval_unit_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    expression2546.tree = NULL;

    interval_unit2547.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2521:9: ( expression interval_unit )
        // MySQL.g:2522:3: expression interval_unit
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_interval13336);
            expression2546=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleintervalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2546.tree);

            FOLLOWPUSH(FOLLOW_interval_unit_in_interval13338);
            interval_unit2547=interval_unit(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleintervalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_unit2547.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:2526: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_SYMBOL2549;
    pANTLR3_COMMON_TOKEN    MINUTE_MICROSECOND_SYMBOL2550;
    pANTLR3_COMMON_TOKEN    MINUTE_SECOND_SYMBOL2551;
    pANTLR3_COMMON_TOKEN    HOUR_MICROSECOND_SYMBOL2552;
    pANTLR3_COMMON_TOKEN    HOUR_SECOND_SYMBOL2553;
    pANTLR3_COMMON_TOKEN    HOUR_MINUTE_SYMBOL2554;
    pANTLR3_COMMON_TOKEN    DAY_MICROSECOND_SYMBOL2555;
    pANTLR3_COMMON_TOKEN    DAY_SECOND_SYMBOL2556;
    pANTLR3_COMMON_TOKEN    DAY_MINUTE_SYMBOL2557;
    pANTLR3_COMMON_TOKEN    DAY_HOUR_SYMBOL2558;
    pANTLR3_COMMON_TOKEN    YEAR_MONTH_SYMBOL2559;
    MySQLParser_interval_timestamp_unit_return interval_timestamp_unit2548;
    #undef	RETURN_TYPE_interval_timestamp_unit2548
    #define	RETURN_TYPE_interval_timestamp_unit2548 MySQLParser_interval_timestamp_unit_return

    pANTLR3_BASE_TREE SECOND_MICROSECOND_SYMBOL2549_tree;
    pANTLR3_BASE_TREE MINUTE_MICROSECOND_SYMBOL2550_tree;
    pANTLR3_BASE_TREE MINUTE_SECOND_SYMBOL2551_tree;
    pANTLR3_BASE_TREE HOUR_MICROSECOND_SYMBOL2552_tree;
    pANTLR3_BASE_TREE HOUR_SECOND_SYMBOL2553_tree;
    pANTLR3_BASE_TREE HOUR_MINUTE_SYMBOL2554_tree;
    pANTLR3_BASE_TREE DAY_MICROSECOND_SYMBOL2555_tree;
    pANTLR3_BASE_TREE DAY_SECOND_SYMBOL2556_tree;
    pANTLR3_BASE_TREE DAY_MINUTE_SYMBOL2557_tree;
    pANTLR3_BASE_TREE DAY_HOUR_SYMBOL2558_tree;
    pANTLR3_BASE_TREE YEAR_MONTH_SYMBOL2559_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SECOND_MICROSECOND_SYMBOL2549       = NULL;
    MINUTE_MICROSECOND_SYMBOL2550       = NULL;
    MINUTE_SECOND_SYMBOL2551       = NULL;
    HOUR_MICROSECOND_SYMBOL2552       = NULL;
    HOUR_SECOND_SYMBOL2553       = NULL;
    HOUR_MINUTE_SYMBOL2554       = NULL;
    DAY_MICROSECOND_SYMBOL2555       = NULL;
    DAY_SECOND_SYMBOL2556       = NULL;
    DAY_MINUTE_SYMBOL2557       = NULL;
    DAY_HOUR_SYMBOL2558       = NULL;
    YEAR_MONTH_SYMBOL2559       = NULL;
    interval_timestamp_unit2548.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SECOND_MICROSECOND_SYMBOL2549_tree   = NULL;
    MINUTE_MICROSECOND_SYMBOL2550_tree   = NULL;
    MINUTE_SECOND_SYMBOL2551_tree   = NULL;
    HOUR_MICROSECOND_SYMBOL2552_tree   = NULL;
    HOUR_SECOND_SYMBOL2553_tree   = NULL;
    HOUR_MINUTE_SYMBOL2554_tree   = NULL;
    DAY_MICROSECOND_SYMBOL2555_tree   = NULL;
    DAY_SECOND_SYMBOL2556_tree   = NULL;
    DAY_MINUTE_SYMBOL2557_tree   = NULL;
    DAY_HOUR_SYMBOL2558_tree   = NULL;
    YEAR_MONTH_SYMBOL2559_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2526: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 alt715;

            alt715=12;

            switch ( LA(1) )
            {
            case DAY_SYMBOL:
            case HOUR_SYMBOL:
            case MICROSECOND_SYMBOL:
            case MINUTE_SYMBOL:
            case MONTH_SYMBOL:
            case QUARTER_SYMBOL:
            case SECOND_SYMBOL:
            case WEEK_SYMBOL:
            case YEAR_SYMBOL:
            case FRAC_SECOND_SYMBOL:
            	{
            		alt715=1;
            	}
                break;
            case SECOND_MICROSECOND_SYMBOL:
            	{
            		alt715=2;
            	}
                break;
            case MINUTE_MICROSECOND_SYMBOL:
            	{
            		alt715=3;
            	}
                break;
            case MINUTE_SECOND_SYMBOL:
            	{
            		alt715=4;
            	}
                break;
            case HOUR_MICROSECOND_SYMBOL:
            	{
            		alt715=5;
            	}
                break;
            case HOUR_SECOND_SYMBOL:
            	{
            		alt715=6;
            	}
                break;
            case HOUR_MINUTE_SYMBOL:
            	{
            		alt715=7;
            	}
                break;
            case DAY_MICROSECOND_SYMBOL:
            	{
            		alt715=8;
            	}
                break;
            case DAY_SECOND_SYMBOL:
            	{
            		alt715=9;
            	}
                break;
            case DAY_MINUTE_SYMBOL:
            	{
            		alt715=10;
            	}
                break;
            case DAY_HOUR_SYMBOL:
            	{
            		alt715=11;
            	}
                break;
            case YEAR_MONTH_SYMBOL:
            	{
            		alt715=12;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 715;
                EXCEPTION->state        = 0;


                goto ruleinterval_unitEx;

            }

            switch (alt715)
            {
        	case 1:
        	    // MySQL.g:2527:2: interval_timestamp_unit
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_interval_timestamp_unit_in_interval_unit13348);
        	        interval_timestamp_unit2548=interval_timestamp_unit(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval_timestamp_unit2548.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2528:4: SECOND_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SECOND_MICROSECOND_SYMBOL2549 = (pANTLR3_COMMON_TOKEN) MATCHT(SECOND_MICROSECOND_SYMBOL, &FOLLOW_SECOND_MICROSECOND_SYMBOL_in_interval_unit13353);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SECOND_MICROSECOND_SYMBOL2549_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SECOND_MICROSECOND_SYMBOL2549));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SECOND_MICROSECOND_SYMBOL2549_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2529:4: MINUTE_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_MICROSECOND_SYMBOL2550 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_MICROSECOND_SYMBOL, &FOLLOW_MINUTE_MICROSECOND_SYMBOL_in_interval_unit13358);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_MICROSECOND_SYMBOL2550_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_MICROSECOND_SYMBOL2550));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_MICROSECOND_SYMBOL2550_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2530:4: MINUTE_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUTE_SECOND_SYMBOL2551 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUTE_SECOND_SYMBOL, &FOLLOW_MINUTE_SECOND_SYMBOL_in_interval_unit13363);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUTE_SECOND_SYMBOL2551_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUTE_SECOND_SYMBOL2551));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUTE_SECOND_SYMBOL2551_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2531:4: HOUR_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_MICROSECOND_SYMBOL2552 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_MICROSECOND_SYMBOL, &FOLLOW_HOUR_MICROSECOND_SYMBOL_in_interval_unit13368);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_MICROSECOND_SYMBOL2552_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_MICROSECOND_SYMBOL2552));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_MICROSECOND_SYMBOL2552_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2532:4: HOUR_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_SECOND_SYMBOL2553 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_SECOND_SYMBOL, &FOLLOW_HOUR_SECOND_SYMBOL_in_interval_unit13373);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_SECOND_SYMBOL2553_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_SECOND_SYMBOL2553));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_SECOND_SYMBOL2553_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2533:4: HOUR_MINUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        HOUR_MINUTE_SYMBOL2554 = (pANTLR3_COMMON_TOKEN) MATCHT(HOUR_MINUTE_SYMBOL, &FOLLOW_HOUR_MINUTE_SYMBOL_in_interval_unit13378);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HOUR_MINUTE_SYMBOL2554_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HOUR_MINUTE_SYMBOL2554));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HOUR_MINUTE_SYMBOL2554_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2534:4: DAY_MICROSECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_MICROSECOND_SYMBOL2555 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_MICROSECOND_SYMBOL, &FOLLOW_DAY_MICROSECOND_SYMBOL_in_interval_unit13383);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_MICROSECOND_SYMBOL2555_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_MICROSECOND_SYMBOL2555));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_MICROSECOND_SYMBOL2555_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2535:4: DAY_SECOND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_SECOND_SYMBOL2556 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_SECOND_SYMBOL, &FOLLOW_DAY_SECOND_SYMBOL_in_interval_unit13388);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_SECOND_SYMBOL2556_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_SECOND_SYMBOL2556));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_SECOND_SYMBOL2556_tree);
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2536:4: DAY_MINUTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_MINUTE_SYMBOL2557 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_MINUTE_SYMBOL, &FOLLOW_DAY_MINUTE_SYMBOL_in_interval_unit13393);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_MINUTE_SYMBOL2557_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_MINUTE_SYMBOL2557));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_MINUTE_SYMBOL2557_tree);
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2537:4: DAY_HOUR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DAY_HOUR_SYMBOL2558 = (pANTLR3_COMMON_TOKEN) MATCHT(DAY_HOUR_SYMBOL, &FOLLOW_DAY_HOUR_SYMBOL_in_interval_unit13398);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DAY_HOUR_SYMBOL2558_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DAY_HOUR_SYMBOL2558));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DAY_HOUR_SYMBOL2558_tree);
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2538:4: YEAR_MONTH_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_MONTH_SYMBOL2559 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_MONTH_SYMBOL, &FOLLOW_YEAR_MONTH_SYMBOL_in_interval_unit13403);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleinterval_unitEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_MONTH_SYMBOL2559_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_MONTH_SYMBOL2559));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_MONTH_SYMBOL2559_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:2542: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    set2560;

    pANTLR3_BASE_TREE set2560_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2560       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2560_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2542:24: ( MICROSECOND_SYMBOL | FRAC_SECOND_SYMBOL | SECOND_SYMBOL | MINUTE_SYMBOL | HOUR_SYMBOL | DAY_SYMBOL | WEEK_SYMBOL | MONTH_SYMBOL | QUARTER_SYMBOL | YEAR_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2560=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == DAY_SYMBOL || LA(1) == HOUR_SYMBOL || LA(1) == MICROSECOND_SYMBOL || LA(1) == MINUTE_SYMBOL || LA(1) == MONTH_SYMBOL || LA(1) == QUARTER_SYMBOL || LA(1) == SECOND_SYMBOL || LA(1) == WEEK_SYMBOL || LA(1) == YEAR_SYMBOL || LA(1) == FRAC_SECOND_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2560))
                );
                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 ruleinterval_timestamp_unitEx;
            }


        }

    }

    // 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:2555:1: expression_list_with_parentheses : OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL -> ^( PAR_EXPRESSION_TOKEN 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_SYMBOL2561;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2563;
    MySQLParser_expression_list_return expression_list2562;
    #undef	RETURN_TYPE_expression_list2562
    #define	RETURN_TYPE_expression_list2562 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2561_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2563_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_SYMBOL2561       = NULL;
    CLOSE_PAR_SYMBOL2563       = NULL;
    expression_list2562.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2561_tree   = NULL;
    CLOSE_PAR_SYMBOL2563_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:2555:33: ( OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL ) )
        // MySQL.g:2556:2: OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL2561 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_expression_list_with_parentheses13471);
            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_SYMBOL2561, NULL); }


            FOLLOWPUSH(FOLLOW_expression_list_in_expression_list_with_parentheses13473);
            expression_list2562=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_list2562.tree, NULL); }

            CLOSE_PAR_SYMBOL2563 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_expression_list_with_parentheses13475);
            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_SYMBOL2563, NULL); }


            /* AST REWRITE
             * elements          : expression_list, OPEN_PAR_SYMBOL, 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;
            	// 2556:51: -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL expression_list CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:2556:54: ^( PAR_EXPRESSION_TOKEN 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_TOKEN, (pANTLR3_UINT8)"PAR_EXPRESSION_TOKEN")
            	        , 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 optional_expression_list_with_parentheses
 * MySQL.g:2559:1: optional_expression_list_with_parentheses : OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL ) ;
 */
static MySQLParser_optional_expression_list_with_parentheses_return
optional_expression_list_with_parentheses(pMySQLParser ctx)
{
    MySQLParser_optional_expression_list_with_parentheses_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2564;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2566;
    MySQLParser_expression_list_return expression_list2565;
    #undef	RETURN_TYPE_expression_list2565
    #define	RETURN_TYPE_expression_list2565 MySQLParser_expression_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2564_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2566_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_SYMBOL2564       = NULL;
    CLOSE_PAR_SYMBOL2566       = NULL;
    expression_list2565.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2564_tree   = NULL;
    CLOSE_PAR_SYMBOL2566_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:2559:42: ( OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL ) )
        // MySQL.g:2560:2: OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL
        {
            OPEN_PAR_SYMBOL2564 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_optional_expression_list_with_parentheses13496);
            if  (HASEXCEPTION())
            {
                goto ruleoptional_expression_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_SYMBOL2564, NULL); }


            // MySQL.g:2560:18: ( expression_list )?
            {
                int alt716=2;
                {
                    int LA716_0 = LA(1);
                    if ( (((LA716_0 >= ACCOUNT_SYMBOL) && (LA716_0 <= YEAR_SYMBOL)) || ((LA716_0 >= AT_AT_SIGN_SYMBOL) && (LA716_0 <= AT_TEXT_SUFFIX)) || LA716_0 == BACK_TICK_QUOTED_ID || ((LA716_0 >= BINARY_SYMBOL) && (LA716_0 <= BIN_NUMBER)) || LA716_0 == BITWISE_NOT_OPERATOR || ((LA716_0 >= BIT_AND_SYMBOL) && (LA716_0 <= BIT_XOR_SYMBOL)) || ((LA716_0 >= CASE_SYMBOL) && (LA716_0 <= CAST_SYMBOL)) || LA716_0 == CHAR_SYMBOL || ((LA716_0 >= CONVERT_SYMBOL) && (LA716_0 <= COUNT_SYMBOL)) || LA716_0 == CURDATE_SYMBOL || LA716_0 == CURRENT_USER_SYMBOL || LA716_0 == CURTIME_SYMBOL || LA716_0 == DATABASE_SYMBOL || LA716_0 == DATE_ADD_SYMBOL || LA716_0 == DATE_SUB_SYMBOL || LA716_0 == DECIMAL_NUMBER || LA716_0 == DOT_SYMBOL || LA716_0 == DOUBLE_QUOTED_TEXT || LA716_0 == EXISTS_SYMBOL || ((LA716_0 >= EXTRACT_SYMBOL) && (LA716_0 <= FALSE_SYMBOL)) || LA716_0 == FLOAT_NUMBER || LA716_0 == GROUP_CONCAT_SYMBOL || LA716_0 == HEX_NUMBER || ((LA716_0 >= IDENTIFIER) && (LA716_0 <= IF_SYMBOL)) || LA716_0 == INSERT_SYMBOL || LA716_0 == INTERVAL_SYMBOL || LA716_0 == INT_NUMBER || LA716_0 == LEFT_SYMBOL || LA716_0 == LOGICAL_NOT_OPERATOR || LA716_0 == LONG_NUMBER || LA716_0 == MATCH_SYMBOL || LA716_0 == MAX_SYMBOL || LA716_0 == MINUS_OPERATOR || LA716_0 == MIN_SYMBOL || LA716_0 == MOD_SYMBOL || LA716_0 == NCHAR_TEXT || LA716_0 == NOT2_SYMBOL || ((LA716_0 >= NOT_SYMBOL) && (LA716_0 <= NOW_SYMBOL)) || LA716_0 == NULL2_SYMBOL || LA716_0 == NULL_SYMBOL || ((LA716_0 >= OPEN_CURLY_SYMBOL) && (LA716_0 <= OPEN_PAR_SYMBOL)) || LA716_0 == PARAM_MARKER || ((LA716_0 >= PLUS_OPERATOR) && (LA716_0 <= POSITION_SYMBOL)) || ((LA716_0 >= REPEAT_SYMBOL) && (LA716_0 <= REPLACE_SYMBOL)) || LA716_0 == RIGHT_SYMBOL || LA716_0 == SINGLE_QUOTED_TEXT || LA716_0 == STDDEV_SAMP_SYMBOL || LA716_0 == STD_SYMBOL || LA716_0 == SUBSTRING_SYMBOL || ((LA716_0 >= SUM_SYMBOL) && (LA716_0 <= SYSDATE_SYMBOL)) || ((LA716_0 >= TRIM_SYMBOL) && (LA716_0 <= TRUE_SYMBOL)) || LA716_0 == ULONGLONG_NUMBER || LA716_0 == UNDERSCORE_CHARSET || ((LA716_0 >= UTC_DATE_SYMBOL) && (LA716_0 <= UTC_TIME_SYMBOL)) || LA716_0 == VALUES_SYMBOL || LA716_0 == VARIANCE_SYMBOL || LA716_0 == VAR_SAMP_SYMBOL))
                    {
                        alt716=1;
                    }
                }
                switch (alt716)
                {
            	case 1:
            	    // MySQL.g:2560:18: expression_list
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_list_in_optional_expression_list_with_parentheses13498);
            	        expression_list2565=expression_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleoptional_expression_list_with_parenthesesEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_expression_list; stream_expression_list->add(stream_expression_list, expression_list2565.tree, NULL); }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2566 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_optional_expression_list_with_parentheses13501);
            if  (HASEXCEPTION())
            {
                goto ruleoptional_expression_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_SYMBOL2566, NULL); }


            /* AST REWRITE
             * elements          : expression_list, OPEN_PAR_SYMBOL, 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;
            	// 2560:52: -> ^( PAR_EXPRESSION_TOKEN OPEN_PAR_SYMBOL ( expression_list )? CLOSE_PAR_SYMBOL )
            	{
            	    // MySQL.g:2560:55: ^( PAR_EXPRESSION_TOKEN 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_TOKEN, (pANTLR3_UINT8)"PAR_EXPRESSION_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_OPEN_PAR_SYMBOL == NULL ? NULL : stream_OPEN_PAR_SYMBOL->nextNode(stream_OPEN_PAR_SYMBOL)
            	        );

            	        // MySQL.g:2560:94: ( 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 ruleoptional_expression_list_with_parenthesesEx; /* Prevent compiler warnings */
    ruleoptional_expression_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 optional_expression_list_with_parentheses */

/**
 * $ANTLR start expression_list
 * MySQL.g:2563: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_SYMBOL2568;
    MySQLParser_expression_return expression2567;
    #undef	RETURN_TYPE_expression2567
    #define	RETURN_TYPE_expression2567 MySQLParser_expression_return

    MySQLParser_expression_return expression2569;
    #undef	RETURN_TYPE_expression2569
    #define	RETURN_TYPE_expression2569 MySQLParser_expression_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2568_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2568       = NULL;
    expression2567.tree = NULL;

    expression2569.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2568_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2563:16: ( expression ( COMMA_SYMBOL expression )* )
        // MySQL.g:2564:2: expression ( COMMA_SYMBOL expression )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_expression_list13523);
            expression2567=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpression_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2567.tree);

            // MySQL.g:2564:13: ( COMMA_SYMBOL expression )*

            for (;;)
            {
                int alt717=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt717=1;
                	}
                    break;

                }

                switch (alt717)
                {
            	case 1:
            	    // MySQL.g:2564:14: COMMA_SYMBOL expression
            	    {
            	        COMMA_SYMBOL2568 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_expression_list13526);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2568_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2568));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2568_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_expression_list13528);
            	        expression2569=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2569.tree);

            	    }
            	    break;

            	default:
            	    goto loop717;	/* break out of the loop */
            	    break;
                }
            }
            loop717: ; /* 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:2567:1: expression_list_with_direction : expression ( direction )? ( options {greedy=true; } : 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_SYMBOL2572;
    MySQLParser_expression_return expression2570;
    #undef	RETURN_TYPE_expression2570
    #define	RETURN_TYPE_expression2570 MySQLParser_expression_return

    MySQLParser_direction_return direction2571;
    #undef	RETURN_TYPE_direction2571
    #define	RETURN_TYPE_direction2571 MySQLParser_direction_return

    MySQLParser_expression_return expression2573;
    #undef	RETURN_TYPE_expression2573
    #define	RETURN_TYPE_expression2573 MySQLParser_expression_return

    MySQLParser_direction_return direction2574;
    #undef	RETURN_TYPE_direction2574
    #define	RETURN_TYPE_direction2574 MySQLParser_direction_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2572_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2572       = NULL;
    expression2570.tree = NULL;

    direction2571.tree = NULL;

    expression2573.tree = NULL;

    direction2574.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2572_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2567:31: ( expression ( direction )? ( options {greedy=true; } : COMMA_SYMBOL expression ( direction )? )* )
        // MySQL.g:2568:2: expression ( direction )? ( options {greedy=true; } : COMMA_SYMBOL expression ( direction )? )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_expression_in_expression_list_with_direction13539);
            expression2570=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleexpression_list_with_directionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2570.tree);

            // MySQL.g:2568:13: ( direction )?
            {
                int alt718=2;
                switch ( LA(1) )
                {
                    case ASC_SYMBOL:
                    case DESC_SYMBOL:
                    	{
                    		alt718=1;
                    	}
                        break;
                }

                switch (alt718)
                {
            	case 1:
            	    // MySQL.g:2568:13: direction
            	    {
            	        FOLLOWPUSH(FOLLOW_direction_in_expression_list_with_direction13541);
            	        direction2571=direction(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2571.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2568:24: ( options {greedy=true; } : COMMA_SYMBOL expression ( direction )? )*

            for (;;)
            {
                int alt720=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA720_19 = LA(2);
                		    if ( (LA720_19 == OPEN_PAR_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == IDENTIFIER))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == BACK_TICK_QUOTED_ID))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == DOUBLE_QUOTED_TEXT))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == DATE_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == ASCII_SYMBOL || LA720_19 == BITWISE_NOT_OPERATOR || LA720_19 == DECIMAL_NUMBER || LA720_19 == FLOAT_NUMBER || LA720_19 == INTERVAL_SYMBOL || LA720_19 == INT_NUMBER || LA720_19 == LOGICAL_NOT_OPERATOR || LA720_19 == LONG_NUMBER || LA720_19 == MINUS_OPERATOR || LA720_19 == NCHAR_TEXT || LA720_19 == NOT2_SYMBOL || LA720_19 == NOT_SYMBOL || LA720_19 == PLUS_OPERATOR || LA720_19 == SINGLE_QUOTED_TEXT || LA720_19 == ULONGLONG_NUMBER || LA720_19 == UNDERSCORE_CHARSET))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == DOT_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == OPEN_CURLY_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == TIME_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == TIMESTAMP_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == DAY_SYMBOL || LA720_19 == BIN_NUMBER || LA720_19 == CHAR_SYMBOL || LA720_19 == CURRENT_USER_SYMBOL || LA720_19 == FALSE_SYMBOL || LA720_19 == HEX_NUMBER || LA720_19 == NULL2_SYMBOL || LA720_19 == NULL_SYMBOL || LA720_19 == TRUE_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == HOUR_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == MINUTE_SYMBOL || LA720_19 == INSERT_SYMBOL || LA720_19 == LEFT_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == MONTH_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == SECOND_SYMBOL || LA720_19 == RIGHT_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == USER_SYMBOL || LA720_19 == TRIM_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == YEAR_SYMBOL || LA720_19 == VALUES_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == ADDDATE_SYMBOL || LA720_19 == SUBDATE_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == GET_FORMAT_SYMBOL || LA720_19 == CURDATE_SYMBOL || LA720_19 == CURTIME_SYMBOL || LA720_19 == DATE_ADD_SYMBOL || LA720_19 == DATE_SUB_SYMBOL || LA720_19 == EXTRACT_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (((LA720_19 >= TIMESTAMP_ADD_SYMBOL) && (LA720_19 <= TIMESTAMP_DIFF_SYMBOL)) || LA720_19 == NOW_SYMBOL || LA720_19 == POSITION_SYMBOL || LA720_19 == SUBSTRING_SYMBOL || LA720_19 == SYSDATE_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == COALESCE_SYMBOL || ((LA720_19 >= UTC_DATE_SYMBOL) && (LA720_19 <= UTC_TIME_SYMBOL))))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == CHARSET_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == FORMAT_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == COLLATION_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == MICROSECOND_SYMBOL || LA720_19 == DATABASE_SYMBOL || LA720_19 == IF_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == TRUNCATE_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == OLD_PASSWORD_SYMBOL || LA720_19 == MOD_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == PASSWORD_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == QUARTER_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == REVERSE_SYMBOL || ((LA720_19 >= REPEAT_SYMBOL) && (LA720_19 <= REPLACE_SYMBOL))))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == ROW_COUNT_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == WEEK_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == CONTAINS_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == WEIGHT_STRING_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == GEOMETRYCOLLECTION_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == LINESTRING_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == MULTILINESTRING_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == MULTIPOINT_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == MULTIPOLYGON_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == POINT_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == POLYGON_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == AVG_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == ACCOUNT_SYMBOL || ((LA720_19 >= ALWAYS_SYMBOL) && (LA720_19 <= CACHE_SYMBOL)) || ((LA720_19 >= CHECKSUM_SYMBOL) && (LA720_19 <= COMMIT_SYMBOL)) || ((LA720_19 >= DEALLOCATE_SYMBOL) && (LA720_19 <= FOLLOWS_SYMBOL)) || ((LA720_19 >= GROUP_REPLICATION_SYMBOL) && (LA720_19 <= STOP_SYMBOL)) || ((LA720_19 >= UNICODE_SYMBOL) && (LA720_19 <= XA_SYMBOL)) || LA720_19 == SHUTDOWN_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == ROW_SYMBOL || ((LA720_19 >= AT_AT_SIGN_SYMBOL) && (LA720_19 <= AT_TEXT_SUFFIX)) || ((LA720_19 >= BIT_AND_SYMBOL) && (LA720_19 <= BIT_XOR_SYMBOL)) || LA720_19 == COUNT_SYMBOL || LA720_19 == EXISTS_SYMBOL || LA720_19 == GROUP_CONCAT_SYMBOL || LA720_19 == MAX_SYMBOL || LA720_19 == MIN_SYMBOL || LA720_19 == PARAM_MARKER || LA720_19 == STDDEV_SAMP_SYMBOL || LA720_19 == STD_SYMBOL || LA720_19 == SUM_SYMBOL || LA720_19 == VARIANCE_SYMBOL || LA720_19 == VAR_SAMP_SYMBOL))
                		    {
                		        alt720=1;
                		    }
                		    else if ( (LA720_19 == ACTION_SYMBOL || ((LA720_19 >= AFTER_SYMBOL) && (LA720_19 <= AVG_ROW_LENGTH_SYMBOL)) || ((LA720_19 >= BINLOG_SYMBOL) && (LA720_19 <= CLASS_ORIGIN_SYMBOL)) || LA720_19 == CODE_SYMBOL || ((LA720_19 >= COLUMN_NAME_SYMBOL) && (LA720_19 <= DATETIME_SYMBOL)) || ((LA720_19 >= DEFAULT_AUTH_SYMBOL) && (LA720_19 <= GEOMETRY_SYMBOL)) || ((LA720_19 >= GRANTS_SYMBOL) && (LA720_19 <= HOSTS_SYMBOL)) || ((LA720_19 >= IDENTIFIED_SYMBOL) && (LA720_19 <= LEVEL_SYMBOL)) || ((LA720_19 >= LIST_SYMBOL) && (LA720_19 <= MESSAGE_TEXT_SYMBOL)) || LA720_19 == MIGRATE_SYMBOL || ((LA720_19 >= MIN_ROWS_SYMBOL) && (LA720_19 <= MODE_SYMBOL)) || ((LA720_19 >= MUTEX_SYMBOL) && (LA720_19 <= OFFSET_SYMBOL)) || ((LA720_19 >= ONE_SHOT_SYMBOL) && (LA720_19 <= PARTITIONS_SYMBOL)) || ((LA720_19 >= PHASE_SYMBOL) && (LA720_19 <= PLUGINS_SYMBOL)) || ((LA720_19 >= PRESERVE_SYMBOL) && (LA720_19 <= PROXY_SYMBOL)) || ((LA720_19 >= QUERY_SYMBOL) && (LA720_19 <= RETURNS_SYMBOL)) || ((LA720_19 >= ROLLUP_SYMBOL) && (LA720_19 <= ROWS_SYMBOL)) || LA720_19 == ROW_FORMAT_SYMBOL || ((LA720_19 >= RTREE_SYMBOL) && (LA720_19 <= SCHEMA_NAME_SYMBOL)) || ((LA720_19 >= SERIAL_SYMBOL) && (LA720_19 <= SHARE_SYMBOL)) || ((LA720_19 >= SLOW_SYMBOL) && (LA720_19 <= SUBCLASS_ORIGIN_SYMBOL)) || ((LA720_19 >= SUBJECT_SYMBOL) && (LA720_19 <= TRIGGERS_SYMBOL)) || ((LA720_19 >= TYPES_SYMBOL) && (LA720_19 <= USER_RESOURCES_SYMBOL)) || ((LA720_19 >= USE_FRM_SYMBOL) && (LA720_19 <= WAIT_SYMBOL)) || LA720_19 == WORK_SYMBOL || ((LA720_19 >= X509_SYMBOL) && (LA720_19 <= XML_SYMBOL)) || LA720_19 == BINARY_SYMBOL || ((LA720_19 >= CASE_SYMBOL) && (LA720_19 <= CAST_SYMBOL)) || LA720_19 == CONVERT_SYMBOL || LA720_19 == MATCH_SYMBOL))
                		    {
                		        alt720=1;
                		    }

                		}
                	}
                    break;

                }

                switch (alt720)
                {
            	case 1:
            	    // MySQL.g:2568:54: COMMA_SYMBOL expression ( direction )?
            	    {
            	        COMMA_SYMBOL2572 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_expression_list_with_direction13558);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2572_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2572));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2572_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_expression_list_with_direction13560);
            	        expression2573=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleexpression_list_with_directionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2573.tree);

            	        // MySQL.g:2568:78: ( direction )?
            	        {
            	            int alt719=2;
            	            switch ( LA(1) )
            	            {
            	                case ASC_SYMBOL:
            	                case DESC_SYMBOL:
            	                	{
            	                		alt719=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt719)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2568:78: direction
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_direction_in_expression_list_with_direction13562);
            	        	        direction2574=direction(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleexpression_list_with_directionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2574.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop720;	/* break out of the loop */
            	    break;
                }
            }
            loop720: ; /* 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 channel
 * MySQL.g:2571:1: channel :{...}? => FOR_SYMBOL CHANNEL_SYMBOL text_string_no_linebreak ;
 */
static MySQLParser_channel_return
channel(pMySQLParser ctx)
{
    MySQLParser_channel_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2575;
    pANTLR3_COMMON_TOKEN    CHANNEL_SYMBOL2576;
    MySQLParser_text_string_no_linebreak_return text_string_no_linebreak2577;
    #undef	RETURN_TYPE_text_string_no_linebreak2577
    #define	RETURN_TYPE_text_string_no_linebreak2577 MySQLParser_text_string_no_linebreak_return

    pANTLR3_BASE_TREE FOR_SYMBOL2575_tree;
    pANTLR3_BASE_TREE CHANNEL_SYMBOL2576_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FOR_SYMBOL2575       = NULL;
    CHANNEL_SYMBOL2576       = NULL;
    text_string_no_linebreak2577.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FOR_SYMBOL2575_tree   = NULL;
    CHANNEL_SYMBOL2576_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2571:8: ({...}? => FOR_SYMBOL CHANNEL_SYMBOL text_string_no_linebreak )
        // MySQL.g:2572:2: {...}? => FOR_SYMBOL CHANNEL_SYMBOL text_string_no_linebreak
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50706)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50706";
                    EXCEPTION->ruleName	 = (void *)"channel";


            }

            FOR_SYMBOL2575 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_channel13578);
            if  (HASEXCEPTION())
            {
                goto rulechannelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2575_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2575));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2575_tree);
            }

            CHANNEL_SYMBOL2576 = (pANTLR3_COMMON_TOKEN) MATCHT(CHANNEL_SYMBOL, &FOLLOW_CHANNEL_SYMBOL_in_channel13580);
            if  (HASEXCEPTION())
            {
                goto rulechannelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CHANNEL_SYMBOL2576_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHANNEL_SYMBOL2576));
            ADAPTOR->addChild(ADAPTOR, root_0, CHANNEL_SYMBOL2576_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_no_linebreak_in_channel13582);
            text_string_no_linebreak2577=text_string_no_linebreak(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulechannelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string_no_linebreak2577.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulechannelEx; /* Prevent compiler warnings */
    rulechannelEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end channel */

/**
 * $ANTLR start compound_statement
 * MySQL.g:2578:1: compound_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 | statement |{...}? 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_label_return label2578;
    #undef	RETURN_TYPE_label2578
    #define	RETURN_TYPE_label2578 MySQLParser_label_return

    MySQLParser_begin_end_block_return begin_end_block2579;
    #undef	RETURN_TYPE_begin_end_block2579
    #define	RETURN_TYPE_begin_end_block2579 MySQLParser_begin_end_block_return

    MySQLParser_loop_block_return loop_block2580;
    #undef	RETURN_TYPE_loop_block2580
    #define	RETURN_TYPE_loop_block2580 MySQLParser_loop_block_return

    MySQLParser_repeat_until_block_return repeat_until_block2581;
    #undef	RETURN_TYPE_repeat_until_block2581
    #define	RETURN_TYPE_repeat_until_block2581 MySQLParser_repeat_until_block_return

    MySQLParser_while_do_block_return while_do_block2582;
    #undef	RETURN_TYPE_while_do_block2582
    #define	RETURN_TYPE_while_do_block2582 MySQLParser_while_do_block_return

    MySQLParser_case_statement_return case_statement2583;
    #undef	RETURN_TYPE_case_statement2583
    #define	RETURN_TYPE_case_statement2583 MySQLParser_case_statement_return

    MySQLParser_if_statement_return if_statement2584;
    #undef	RETURN_TYPE_if_statement2584
    #define	RETURN_TYPE_if_statement2584 MySQLParser_if_statement_return

    MySQLParser_iterate_statement_return iterate_statement2585;
    #undef	RETURN_TYPE_iterate_statement2585
    #define	RETURN_TYPE_iterate_statement2585 MySQLParser_iterate_statement_return

    MySQLParser_leave_statement_return leave_statement2586;
    #undef	RETURN_TYPE_leave_statement2586
    #define	RETURN_TYPE_leave_statement2586 MySQLParser_leave_statement_return

    MySQLParser_return_statement_return return_statement2587;
    #undef	RETURN_TYPE_return_statement2587
    #define	RETURN_TYPE_return_statement2587 MySQLParser_return_statement_return

    MySQLParser_cursor_open_return cursor_open2588;
    #undef	RETURN_TYPE_cursor_open2588
    #define	RETURN_TYPE_cursor_open2588 MySQLParser_cursor_open_return

    MySQLParser_cursor_fetch_return cursor_fetch2589;
    #undef	RETURN_TYPE_cursor_fetch2589
    #define	RETURN_TYPE_cursor_fetch2589 MySQLParser_cursor_fetch_return

    MySQLParser_cursor_close_return cursor_close2590;
    #undef	RETURN_TYPE_cursor_close2590
    #define	RETURN_TYPE_cursor_close2590 MySQLParser_cursor_close_return

    MySQLParser_statement_return statement2591;
    #undef	RETURN_TYPE_statement2591
    #define	RETURN_TYPE_statement2591 MySQLParser_statement_return

    MySQLParser_get_diagnostics_return get_diagnostics2592;
    #undef	RETURN_TYPE_get_diagnostics2592
    #define	RETURN_TYPE_get_diagnostics2592 MySQLParser_get_diagnostics_return

    MySQLParser_signal_statement_return signal_statement2593;
    #undef	RETURN_TYPE_signal_statement2593
    #define	RETURN_TYPE_signal_statement2593 MySQLParser_signal_statement_return

    MySQLParser_resignal_statement_return resignal_statement2594;
    #undef	RETURN_TYPE_resignal_statement2594
    #define	RETURN_TYPE_resignal_statement2594 MySQLParser_resignal_statement_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    label2578.tree = NULL;

    begin_end_block2579.tree = NULL;

    loop_block2580.tree = NULL;

    repeat_until_block2581.tree = NULL;

    while_do_block2582.tree = NULL;

    case_statement2583.tree = NULL;

    if_statement2584.tree = NULL;

    iterate_statement2585.tree = NULL;

    leave_statement2586.tree = NULL;

    return_statement2587.tree = NULL;

    cursor_open2588.tree = NULL;

    cursor_fetch2589.tree = NULL;

    cursor_close2590.tree = NULL;

    statement2591.tree = NULL;

    get_diagnostics2592.tree = NULL;

    signal_statement2593.tree = NULL;

    resignal_statement2594.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2578:19: ( ( 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 | statement |{...}? get_diagnostics |{...}? signal_statement |{...}? resignal_statement )

            ANTLR3_UINT32 alt723;

            alt723=13;

            {
                int LA723_0 = LA(1);
                if ( (((LA723_0 >= ACTION_SYMBOL) && (LA723_0 <= ALGORITHM_SYMBOL)) || ((LA723_0 >= ANY_SYMBOL) && (LA723_0 <= AVG_SYMBOL)) || ((LA723_0 >= BIT_SYMBOL) && (LA723_0 <= SHARE_SYMBOL)) || ((LA723_0 >= SLOW_SYMBOL) && (LA723_0 <= YEAR_SYMBOL)) || LA723_0 == BACK_TICK_QUOTED_ID || LA723_0 == DOUBLE_QUOTED_TEXT || LA723_0 == IDENTIFIER || LA723_0 == LOOP_SYMBOL || LA723_0 == REPEAT_SYMBOL || LA723_0 == WHILE_SYMBOL))
                {
                    alt723=1;
                }
                else if ( (LA723_0 == ANALYZE_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case COLON_SYMBOL:
                    	{
                    		alt723=1;
                    	}
                        break;
                    case LOCAL_SYMBOL:
                    case NO_WRITE_TO_BINLOG_SYMBOL:
                    case TABLE_SYMBOL:
                    	{
                    		alt723=10;
                    	}
                        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        = 4;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA723_0 == BEGIN_SYMBOL))
                {
                    {
                        int LA723_5 = LA(2);
                        if ( (((LA723_5 >= BACKUP_SYMBOL) && (LA723_5 <= BEGIN_SYMBOL)) || LA723_5 == CACHE_SYMBOL || ((LA723_5 >= CHECKSUM_SYMBOL) && (LA723_5 <= CLOSE_SYMBOL)) || LA723_5 == COMMIT_SYMBOL || ((LA723_5 >= DEALLOCATE_SYMBOL) && (LA723_5 <= FLUSH_SYMBOL)) || ((LA723_5 >= HANDLER_SYMBOL) && (LA723_5 <= HELP_SYMBOL)) || LA723_5 == INSTALL_SYMBOL || LA723_5 == OPEN_SYMBOL || LA723_5 == PARTITION_SYMBOL || LA723_5 == PREPARE_SYMBOL || ((LA723_5 >= REPAIR_SYMBOL) && (LA723_5 <= SAVEPOINT_SYMBOL)) || ((LA723_5 >= START_SYMBOL) && (LA723_5 <= TRUNCATE_SYMBOL)) || LA723_5 == UNINSTALL_SYMBOL || ((LA723_5 >= XA_SYMBOL) && (LA723_5 <= WEEK_SYMBOL)) || ((LA723_5 >= WEIGHT_STRING_SYMBOL) && (LA723_5 <= YEAR_SYMBOL)) || LA723_5 == ALTER_SYMBOL || LA723_5 == BACK_TICK_QUOTED_ID || LA723_5 == CALL_SYMBOL || LA723_5 == CASE_SYMBOL || LA723_5 == CHANGE_SYMBOL || LA723_5 == CHECK_SYMBOL || LA723_5 == CREATE_SYMBOL || LA723_5 == DECLARE_SYMBOL || ((LA723_5 >= DELETE_SYMBOL) && (LA723_5 <= DESC_SYMBOL)) || LA723_5 == DOUBLE_QUOTED_TEXT || LA723_5 == DROP_SYMBOL || LA723_5 == FETCH_SYMBOL || ((LA723_5 >= GET_SYMBOL) && (LA723_5 <= GRANT_SYMBOL)) || ((LA723_5 >= IDENTIFIER) && (LA723_5 <= IF_SYMBOL)) || LA723_5 == INSERT_SYMBOL || LA723_5 == ITERATE_SYMBOL || LA723_5 == KILL_SYMBOL || LA723_5 == LEAVE_SYMBOL || LA723_5 == LOAD_SYMBOL || LA723_5 == LOCK_SYMBOL || LA723_5 == LOOP_SYMBOL || LA723_5 == OPEN_PAR_SYMBOL || LA723_5 == OPTIMIZE_SYMBOL || LA723_5 == PURGE_SYMBOL || ((LA723_5 >= RELEASE_SYMBOL) && (LA723_5 <= REPLACE_SYMBOL)) || LA723_5 == RESIGNAL_SYMBOL || ((LA723_5 >= RETURN_SYMBOL) && (LA723_5 <= REVOKE_SYMBOL)) || LA723_5 == SELECT_SYMBOL || LA723_5 == SET_SYMBOL || ((LA723_5 >= SHOW_SYMBOL) && (LA723_5 <= SIGNAL_SYMBOL)) || LA723_5 == UNLOCK_SYMBOL || LA723_5 == UPDATE_SYMBOL || LA723_5 == USE_SYMBOL || LA723_5 == WHILE_SYMBOL))
                        {
                            alt723=1;
                        }
                        else if ( (LA723_5 == WORK_SYMBOL))
                        {
                            {
                                int LA723_137 = LA(3);
                                if ( ((LA(2) != WORK_SYMBOL)))
                                {
                                    alt723=1;
                                }
                                else if ( (ANTLR3_TRUE))
                                {
                                    alt723=10;
                                }
                                else
                                {
                                    if (BACKTRACKING>0)
                                    {
                                        FAILEDFLAG = ANTLR3_TRUE;
                                        return retval;
                                    }


                                    CONSTRUCTEX();
                                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                    EXCEPTION->message      = (void *)"";
                                    EXCEPTION->decisionNum  = 723;
                                    EXCEPTION->state        = 137;


                                    goto rulecompound_statementEx;

                                }
                            }
                        }
                        else if ( (LA723_5 == EOF || LA723_5 == SEMICOLON_SYMBOL))
                        {
                            alt723=10;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 723;
                            EXCEPTION->state        = 5;


                            goto rulecompound_statementEx;

                        }
                    }
                }
                else if ( (LA723_0 == CASE_SYMBOL))
                {
                    alt723=2;
                }
                else if ( (LA723_0 == IF_SYMBOL))
                {
                    alt723=3;
                }
                else if ( (LA723_0 == ITERATE_SYMBOL))
                {
                    alt723=4;
                }
                else if ( (LA723_0 == LEAVE_SYMBOL))
                {
                    alt723=5;
                }
                else if ( (LA723_0 == RETURN_SYMBOL))
                {
                    alt723=6;
                }
                else if ( (LA723_0 == OPEN_SYMBOL))
                {
                    alt723=7;
                }
                else if ( (LA723_0 == FETCH_SYMBOL))
                {
                    alt723=8;
                }
                else if ( (LA723_0 == CLOSE_SYMBOL))
                {
                    alt723=9;
                }
                else if ( (LA723_0 == BACKUP_SYMBOL || LA723_0 == CACHE_SYMBOL || LA723_0 == CHECKSUM_SYMBOL || LA723_0 == COMMIT_SYMBOL || ((LA723_0 >= DEALLOCATE_SYMBOL) && (LA723_0 <= DO_SYMBOL)) || ((LA723_0 >= EXECUTE_SYMBOL) && (LA723_0 <= FLUSH_SYMBOL)) || ((LA723_0 >= HANDLER_SYMBOL) && (LA723_0 <= HELP_SYMBOL)) || LA723_0 == INSTALL_SYMBOL || LA723_0 == PARTITION_SYMBOL || LA723_0 == PREPARE_SYMBOL || ((LA723_0 >= REPAIR_SYMBOL) && (LA723_0 <= SAVEPOINT_SYMBOL)) || ((LA723_0 >= START_SYMBOL) && (LA723_0 <= TRUNCATE_SYMBOL)) || LA723_0 == UNINSTALL_SYMBOL || LA723_0 == XA_SYMBOL || LA723_0 == SHUTDOWN_SYMBOL || LA723_0 == ALTER_SYMBOL || LA723_0 == CALL_SYMBOL || LA723_0 == CHANGE_SYMBOL || LA723_0 == CHECK_SYMBOL || LA723_0 == CREATE_SYMBOL || ((LA723_0 >= DELETE_SYMBOL) && (LA723_0 <= DESC_SYMBOL)) || LA723_0 == DROP_SYMBOL || LA723_0 == GRANT_SYMBOL || LA723_0 == INSERT_SYMBOL || LA723_0 == KILL_SYMBOL || LA723_0 == LOAD_SYMBOL || LA723_0 == LOCK_SYMBOL || LA723_0 == OPEN_PAR_SYMBOL || LA723_0 == OPTIMIZE_SYMBOL || LA723_0 == PURGE_SYMBOL || ((LA723_0 >= RELEASE_SYMBOL) && (LA723_0 <= RENAME_SYMBOL)) || LA723_0 == REPLACE_SYMBOL || LA723_0 == REVOKE_SYMBOL || LA723_0 == SELECT_SYMBOL || LA723_0 == SET_SYMBOL || LA723_0 == SHOW_SYMBOL || LA723_0 == UNLOCK_SYMBOL || LA723_0 == UPDATE_SYMBOL || LA723_0 == USE_SYMBOL))
                {
                    alt723=10;
                }
                else if ( (LA723_0 == BINLOG_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case COLON_SYMBOL:
                    	{
                    		alt723=1;
                    	}
                        break;
                    case DOUBLE_QUOTED_TEXT:
                    case NCHAR_TEXT:
                    case SINGLE_QUOTED_TEXT:
                    case UNDERSCORE_CHARSET:
                    	{
                    		alt723=10;
                    	}
                        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        = 50;


                        goto rulecompound_statementEx;

                    }

                }
                else if ( (LA723_0 == GET_SYMBOL))
                {
                    alt723=11;
                }
                else if ( (LA723_0 == SIGNAL_SYMBOL))
                {
                    alt723=12;
                }
                else if ( (LA723_0 == RESIGNAL_SYMBOL))
                {
                    alt723=13;
                }
                else
                {
                    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 rulecompound_statementEx;

                }
            }
            switch (alt723)
            {
        	case 1:
        	    // MySQL.g:2579:2: ( label )? ({...}? begin_end_block | loop_block | repeat_until_block | while_do_block )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2579:2: ( label )?
        	        {
        	            int alt721=2;
        	            {
        	                int LA721_0 = LA(1);
        	                if ( (((LA721_0 >= ACTION_SYMBOL) && (LA721_0 <= SHARE_SYMBOL)) || ((LA721_0 >= SLOW_SYMBOL) && (LA721_0 <= YEAR_SYMBOL)) || LA721_0 == BACK_TICK_QUOTED_ID || LA721_0 == DOUBLE_QUOTED_TEXT || LA721_0 == IDENTIFIER))
        	                {
        	                    alt721=1;
        	                }
        	            }
        	            switch (alt721)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2579:2: label
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_label_in_compound_statement13594);
        	        	        label2578=label(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label2578.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2580:3: ({...}? begin_end_block | loop_block | repeat_until_block | while_do_block )
        	        {
        	            int alt722=4;
        	            switch ( LA(1) )
        	            {
        	            case BEGIN_SYMBOL:
        	            	{
        	            		alt722=1;
        	            	}
        	                break;
        	            case LOOP_SYMBOL:
        	            	{
        	            		alt722=2;
        	            	}
        	                break;
        	            case REPEAT_SYMBOL:
        	            	{
        	            		alt722=3;
        	            	}
        	                break;
        	            case WHILE_SYMBOL:
        	            	{
        	            		alt722=4;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 722;
        	                EXCEPTION->state        = 0;


        	                goto rulecompound_statementEx;

        	            }

        	            switch (alt722)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2581: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_statement13606);
        	        	        begin_end_block2579=begin_end_block(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, begin_end_block2579.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2582:6: loop_block
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_loop_block_in_compound_statement13613);
        	        	        loop_block2580=loop_block(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, loop_block2580.tree);

        	        	    }
        	        	    break;
        	        	case 3:
        	        	    // MySQL.g:2583:6: repeat_until_block
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_repeat_until_block_in_compound_statement13620);
        	        	        repeat_until_block2581=repeat_until_block(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, repeat_until_block2581.tree);

        	        	    }
        	        	    break;
        	        	case 4:
        	        	    // MySQL.g:2584:6: while_do_block
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_while_do_block_in_compound_statement13627);
        	        	        while_do_block2582=while_do_block(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecompound_statementEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, while_do_block2582.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2586:4: case_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_case_statement_in_compound_statement13636);
        	        case_statement2583=case_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, case_statement2583.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2587:4: if_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_if_statement_in_compound_statement13641);
        	        if_statement2584=if_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_statement2584.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2588:4: iterate_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_iterate_statement_in_compound_statement13646);
        	        iterate_statement2585=iterate_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, iterate_statement2585.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2589:4: leave_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_leave_statement_in_compound_statement13651);
        	        leave_statement2586=leave_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, leave_statement2586.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2590:4: return_statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_return_statement_in_compound_statement13656);
        	        return_statement2587=return_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, return_statement2587.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2592:4: cursor_open
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_open_in_compound_statement13663);
        	        cursor_open2588=cursor_open(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_open2588.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2593:4: cursor_fetch
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_fetch_in_compound_statement13668);
        	        cursor_fetch2589=cursor_fetch(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_fetch2589.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2594:4: cursor_close
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_cursor_close_in_compound_statement13673);
        	        cursor_close2590=cursor_close(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_close2590.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2596:4: statement
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_statement_in_compound_statement13680);
        	        statement2591=statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement2591.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2597:4: {...}? get_diagnostics
        	    {
        	        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 *)"compound_statement";


        	        }

        	        FOLLOWPUSH(FOLLOW_get_diagnostics_in_compound_statement13687);
        	        get_diagnostics2592=get_diagnostics(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, get_diagnostics2592.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2598: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_statement13694);
        	        signal_statement2593=signal_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_statement2593.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2599: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_statement13701);
        	        resignal_statement2594=resignal_statement(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecompound_statementEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, resignal_statement2594.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:2602: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_SYMBOL2596;
    MySQLParser_compound_statement_return compound_statement2595;
    #undef	RETURN_TYPE_compound_statement2595
    #define	RETURN_TYPE_compound_statement2595 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2596_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SEMICOLON_SYMBOL2596       = NULL;
    compound_statement2595.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SEMICOLON_SYMBOL2596_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2602:24: ( ( compound_statement SEMICOLON_SYMBOL )+ )
        // MySQL.g:2603:2: ( compound_statement SEMICOLON_SYMBOL )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2603:2: ( compound_statement SEMICOLON_SYMBOL )+
            {
                int cnt724=0;

                for (;;)
                {
                    int alt724=2;
            	{
            	   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
            	    */
            	    int LA724_0 = LA(1);
            	    if ( (LA724_0 == UNTIL_SYMBOL))
            	    {
            	        switch ( LA(2) )
            	        {
            	        case COLON_SYMBOL:
            	        	{
            	        		alt724=1;
            	        	}
            	            break;

            	        }

            	    }
            	    else if ( (((LA724_0 >= BACKUP_SYMBOL) && (LA724_0 <= BEGIN_SYMBOL)) || LA724_0 == CACHE_SYMBOL || ((LA724_0 >= CHECKSUM_SYMBOL) && (LA724_0 <= CLOSE_SYMBOL)) || LA724_0 == COMMIT_SYMBOL || ((LA724_0 >= DEALLOCATE_SYMBOL) && (LA724_0 <= DO_SYMBOL)) || ((LA724_0 >= EXECUTE_SYMBOL) && (LA724_0 <= FLUSH_SYMBOL)) || ((LA724_0 >= HANDLER_SYMBOL) && (LA724_0 <= HELP_SYMBOL)) || LA724_0 == INSTALL_SYMBOL || LA724_0 == OPEN_SYMBOL || LA724_0 == PARTITION_SYMBOL || LA724_0 == PREPARE_SYMBOL || ((LA724_0 >= REPAIR_SYMBOL) && (LA724_0 <= SAVEPOINT_SYMBOL)) || ((LA724_0 >= START_SYMBOL) && (LA724_0 <= TRUNCATE_SYMBOL)) || LA724_0 == UNINSTALL_SYMBOL || ((LA724_0 >= XA_SYMBOL) && (LA724_0 <= UNKNOWN_SYMBOL)) || ((LA724_0 >= USER_RESOURCES_SYMBOL) && (LA724_0 <= YEAR_SYMBOL)) || LA724_0 == ALTER_SYMBOL || LA724_0 == BACK_TICK_QUOTED_ID || LA724_0 == CALL_SYMBOL || LA724_0 == CASE_SYMBOL || LA724_0 == CHANGE_SYMBOL || LA724_0 == CHECK_SYMBOL || LA724_0 == CREATE_SYMBOL || ((LA724_0 >= DELETE_SYMBOL) && (LA724_0 <= DESC_SYMBOL)) || LA724_0 == DOUBLE_QUOTED_TEXT || LA724_0 == DROP_SYMBOL || LA724_0 == FETCH_SYMBOL || ((LA724_0 >= GET_SYMBOL) && (LA724_0 <= GRANT_SYMBOL)) || ((LA724_0 >= IDENTIFIER) && (LA724_0 <= IF_SYMBOL)) || LA724_0 == INSERT_SYMBOL || LA724_0 == ITERATE_SYMBOL || LA724_0 == KILL_SYMBOL || LA724_0 == LEAVE_SYMBOL || LA724_0 == LOAD_SYMBOL || LA724_0 == LOCK_SYMBOL || LA724_0 == LOOP_SYMBOL || LA724_0 == OPEN_PAR_SYMBOL || LA724_0 == OPTIMIZE_SYMBOL || LA724_0 == PURGE_SYMBOL || ((LA724_0 >= RELEASE_SYMBOL) && (LA724_0 <= REPLACE_SYMBOL)) || LA724_0 == RESIGNAL_SYMBOL || ((LA724_0 >= RETURN_SYMBOL) && (LA724_0 <= REVOKE_SYMBOL)) || LA724_0 == SELECT_SYMBOL || LA724_0 == SET_SYMBOL || ((LA724_0 >= SHOW_SYMBOL) && (LA724_0 <= SIGNAL_SYMBOL)) || LA724_0 == UNLOCK_SYMBOL || LA724_0 == UPDATE_SYMBOL || LA724_0 == USE_SYMBOL || LA724_0 == WHILE_SYMBOL))
            	    {
            	        alt724=1;
            	    }

            	}
            	switch (alt724)
            	{
            	    case 1:
            	        // MySQL.g:2603:3: compound_statement SEMICOLON_SYMBOL
            	        {
            	            FOLLOWPUSH(FOLLOW_compound_statement_in_compound_statement_list13711);
            	            compound_statement2595=compound_statement(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecompound_statement_listEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement2595.tree);

            	            SEMICOLON_SYMBOL2596 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_compound_statement_list13713);
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecompound_statement_listEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) {
            	            SEMICOLON_SYMBOL2596_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2596));
            	            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2596_tree);
            	            }

            	        }
            	        break;

            	    default:

            		if ( cnt724 >= 1 )
            		{
            		    goto loop724;
            		}
            		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;
            	}
            	cnt724++;
                }
                loop724: ;	/* 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:2606:1: label : label_identifier COLON_SYMBOL -> ^( LABEL_TOKEN label_identifier COLON_SYMBOL ) ;
 */
static MySQLParser_label_return
label(pMySQLParser ctx)
{
    MySQLParser_label_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COLON_SYMBOL2598;
    MySQLParser_label_identifier_return label_identifier2597;
    #undef	RETURN_TYPE_label_identifier2597
    #define	RETURN_TYPE_label_identifier2597 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE COLON_SYMBOL2598_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COLON_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_label_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COLON_SYMBOL2598       = NULL;
    label_identifier2597.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLON_SYMBOL2598_tree   = NULL;

    stream_COLON_SYMBOL   = NULL;
    #define CREATE_stream_COLON_SYMBOL  if (stream_COLON_SYMBOL == NULL) {stream_COLON_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token COLON_SYMBOL"); } 
    stream_label_identifier   = NULL;
    #define CREATE_stream_label_identifier  if (stream_label_identifier == NULL) {stream_label_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule label_identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2606:6: ( label_identifier COLON_SYMBOL -> ^( LABEL_TOKEN label_identifier COLON_SYMBOL ) )
        // MySQL.g:2608:2: label_identifier COLON_SYMBOL
        {
            FOLLOWPUSH(FOLLOW_label_identifier_in_label13726);
            label_identifier2597=label_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelabelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_label_identifier; stream_label_identifier->add(stream_label_identifier, label_identifier2597.tree, NULL); }

            COLON_SYMBOL2598 = (pANTLR3_COMMON_TOKEN) MATCHT(COLON_SYMBOL, &FOLLOW_COLON_SYMBOL_in_label13728);
            if  (HASEXCEPTION())
            {
                goto rulelabelEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_COLON_SYMBOL; stream_COLON_SYMBOL->add(stream_COLON_SYMBOL, COLON_SYMBOL2598, NULL); }


            /* AST REWRITE
             * elements          : label_identifier, COLON_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;
            	// 2608:32: -> ^( LABEL_TOKEN label_identifier COLON_SYMBOL )
            	{
            	    // MySQL.g:2608:35: ^( LABEL_TOKEN label_identifier COLON_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, LABEL_TOKEN, (pANTLR3_UINT8)"LABEL_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_label_identifier == NULL ? NULL : stream_label_identifier->nextTree(stream_label_identifier));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_COLON_SYMBOL == NULL ? NULL : stream_COLON_SYMBOL->nextNode(stream_COLON_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 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 (stream_COLON_SYMBOL != NULL) stream_COLON_SYMBOL->free(stream_COLON_SYMBOL);
        if (stream_label_identifier != NULL) stream_label_identifier->free(stream_label_identifier);
    }


            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:2611: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_identifier2599;
    #undef	RETURN_TYPE_pure_identifier2599
    #define	RETURN_TYPE_pure_identifier2599 MySQLParser_pure_identifier_return

    MySQLParser_keyword_sp_return keyword_sp2600;
    #undef	RETURN_TYPE_keyword_sp2600
    #define	RETURN_TYPE_keyword_sp2600 MySQLParser_keyword_sp_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    pure_identifier2599.tree = NULL;

    keyword_sp2600.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2611:17: ( pure_identifier | keyword_sp )

            ANTLR3_UINT32 alt725;

            alt725=2;

            {
                int LA725_0 = LA(1);
                if ( (LA725_0 == BACK_TICK_QUOTED_ID || LA725_0 == DOUBLE_QUOTED_TEXT || LA725_0 == IDENTIFIER))
                {
                    alt725=1;
                }
                else if ( (((LA725_0 >= ACTION_SYMBOL) && (LA725_0 <= SHARE_SYMBOL)) || ((LA725_0 >= SLOW_SYMBOL) && (LA725_0 <= YEAR_SYMBOL))))
                {
                    alt725=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 725;
                    EXCEPTION->state        = 0;


                    goto rulelabel_identifierEx;

                }
            }
            switch (alt725)
            {
        	case 1:
        	    // MySQL.g:2612:2: pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_label_identifier13747);
        	        pure_identifier2599=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelabel_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier2599.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2612:20: keyword_sp
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_sp_in_label_identifier13751);
        	        keyword_sp2600=keyword_sp(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelabel_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword_sp2600.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:2615: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_SYMBOL2601;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2604;
    MySQLParser_declarations_return declarations2602;
    #undef	RETURN_TYPE_declarations2602
    #define	RETURN_TYPE_declarations2602 MySQLParser_declarations_return

    MySQLParser_compound_statement_list_return compound_statement_list2603;
    #undef	RETURN_TYPE_compound_statement_list2603
    #define	RETURN_TYPE_compound_statement_list2603 MySQLParser_compound_statement_list_return

    MySQLParser_label_identifier_return label_identifier2605;
    #undef	RETURN_TYPE_label_identifier2605
    #define	RETURN_TYPE_label_identifier2605 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE BEGIN_SYMBOL2601_tree;
    pANTLR3_BASE_TREE END_SYMBOL2604_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BEGIN_SYMBOL2601       = NULL;
    END_SYMBOL2604       = NULL;
    declarations2602.tree = NULL;

    compound_statement_list2603.tree = NULL;

    label_identifier2605.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BEGIN_SYMBOL2601_tree   = NULL;
    END_SYMBOL2604_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2615:16: ( BEGIN_SYMBOL ^ declarations ( compound_statement_list )? END_SYMBOL ( label_identifier )? )
        // MySQL.g:2616:2: BEGIN_SYMBOL ^ declarations ( compound_statement_list )? END_SYMBOL ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            BEGIN_SYMBOL2601 = (pANTLR3_COMMON_TOKEN) MATCHT(BEGIN_SYMBOL, &FOLLOW_BEGIN_SYMBOL_in_begin_end_block13761);
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BEGIN_SYMBOL2601_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BEGIN_SYMBOL2601))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, BEGIN_SYMBOL2601_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_declarations_in_begin_end_block13764);
            declarations2602=declarations(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, declarations2602.tree);

            // MySQL.g:2616:29: ( compound_statement_list )?
            {
                int alt726=2;
                {
                    int LA726_0 = LA(1);
                    if ( (((LA726_0 >= BACKUP_SYMBOL) && (LA726_0 <= BEGIN_SYMBOL)) || LA726_0 == CACHE_SYMBOL || ((LA726_0 >= CHECKSUM_SYMBOL) && (LA726_0 <= CLOSE_SYMBOL)) || LA726_0 == COMMIT_SYMBOL || ((LA726_0 >= DEALLOCATE_SYMBOL) && (LA726_0 <= DO_SYMBOL)) || ((LA726_0 >= EXECUTE_SYMBOL) && (LA726_0 <= FLUSH_SYMBOL)) || ((LA726_0 >= HANDLER_SYMBOL) && (LA726_0 <= HELP_SYMBOL)) || LA726_0 == INSTALL_SYMBOL || LA726_0 == OPEN_SYMBOL || LA726_0 == PARTITION_SYMBOL || LA726_0 == PREPARE_SYMBOL || ((LA726_0 >= REPAIR_SYMBOL) && (LA726_0 <= SAVEPOINT_SYMBOL)) || ((LA726_0 >= START_SYMBOL) && (LA726_0 <= TRUNCATE_SYMBOL)) || LA726_0 == UNINSTALL_SYMBOL || ((LA726_0 >= XA_SYMBOL) && (LA726_0 <= YEAR_SYMBOL)) || LA726_0 == ALTER_SYMBOL || LA726_0 == BACK_TICK_QUOTED_ID || LA726_0 == CALL_SYMBOL || LA726_0 == CASE_SYMBOL || LA726_0 == CHANGE_SYMBOL || LA726_0 == CHECK_SYMBOL || LA726_0 == CREATE_SYMBOL || ((LA726_0 >= DELETE_SYMBOL) && (LA726_0 <= DESC_SYMBOL)) || LA726_0 == DOUBLE_QUOTED_TEXT || LA726_0 == DROP_SYMBOL || LA726_0 == FETCH_SYMBOL || ((LA726_0 >= GET_SYMBOL) && (LA726_0 <= GRANT_SYMBOL)) || ((LA726_0 >= IDENTIFIER) && (LA726_0 <= IF_SYMBOL)) || LA726_0 == INSERT_SYMBOL || LA726_0 == ITERATE_SYMBOL || LA726_0 == KILL_SYMBOL || LA726_0 == LEAVE_SYMBOL || LA726_0 == LOAD_SYMBOL || LA726_0 == LOCK_SYMBOL || LA726_0 == LOOP_SYMBOL || LA726_0 == OPEN_PAR_SYMBOL || LA726_0 == OPTIMIZE_SYMBOL || LA726_0 == PURGE_SYMBOL || ((LA726_0 >= RELEASE_SYMBOL) && (LA726_0 <= REPLACE_SYMBOL)) || LA726_0 == RESIGNAL_SYMBOL || ((LA726_0 >= RETURN_SYMBOL) && (LA726_0 <= REVOKE_SYMBOL)) || LA726_0 == SELECT_SYMBOL || LA726_0 == SET_SYMBOL || ((LA726_0 >= SHOW_SYMBOL) && (LA726_0 <= SIGNAL_SYMBOL)) || LA726_0 == UNLOCK_SYMBOL || LA726_0 == UPDATE_SYMBOL || LA726_0 == USE_SYMBOL || LA726_0 == WHILE_SYMBOL))
                    {
                        alt726=1;
                    }
                }
                switch (alt726)
                {
            	case 1:
            	    // MySQL.g:2616:29: compound_statement_list
            	    {
            	        FOLLOWPUSH(FOLLOW_compound_statement_list_in_begin_end_block13766);
            	        compound_statement_list2603=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_list2603.tree);

            	    }
            	    break;

                }
            }

            END_SYMBOL2604 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_begin_end_block13769);
            if  (HASEXCEPTION())
            {
                goto rulebegin_end_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2604_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2604));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2604_tree);
            }

            // MySQL.g:2616:65: ( label_identifier )?
            {
                int alt727=2;
                {
                    int LA727_0 = LA(1);
                    if ( (((LA727_0 >= ACTION_SYMBOL) && (LA727_0 <= SHARE_SYMBOL)) || ((LA727_0 >= SLOW_SYMBOL) && (LA727_0 <= YEAR_SYMBOL)) || LA727_0 == BACK_TICK_QUOTED_ID || LA727_0 == DOUBLE_QUOTED_TEXT || LA727_0 == IDENTIFIER))
                    {
                        alt727=1;
                    }
                }
                switch (alt727)
                {
            	case 1:
            	    // MySQL.g:2616:65: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_begin_end_block13771);
            	        label_identifier2605=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulebegin_end_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2605.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:2619: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_SYMBOL2606;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2608;
    pANTLR3_COMMON_TOKEN    LOOP_SYMBOL2609;
    MySQLParser_compound_statement_list_return compound_statement_list2607;
    #undef	RETURN_TYPE_compound_statement_list2607
    #define	RETURN_TYPE_compound_statement_list2607 MySQLParser_compound_statement_list_return

    MySQLParser_label_identifier_return label_identifier2610;
    #undef	RETURN_TYPE_label_identifier2610
    #define	RETURN_TYPE_label_identifier2610 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE LOOP_SYMBOL2606_tree;
    pANTLR3_BASE_TREE END_SYMBOL2608_tree;
    pANTLR3_BASE_TREE LOOP_SYMBOL2609_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOOP_SYMBOL2606       = NULL;
    END_SYMBOL2608       = NULL;
    LOOP_SYMBOL2609       = NULL;
    compound_statement_list2607.tree = NULL;

    label_identifier2610.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOOP_SYMBOL2606_tree   = NULL;
    END_SYMBOL2608_tree   = NULL;
    LOOP_SYMBOL2609_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2619:11: ( LOOP_SYMBOL ^ compound_statement_list END_SYMBOL LOOP_SYMBOL ( label_identifier )? )
        // MySQL.g:2620:2: LOOP_SYMBOL ^ compound_statement_list END_SYMBOL LOOP_SYMBOL ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LOOP_SYMBOL2606 = (pANTLR3_COMMON_TOKEN) MATCHT(LOOP_SYMBOL, &FOLLOW_LOOP_SYMBOL_in_loop_block13781);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOOP_SYMBOL2606_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOOP_SYMBOL2606))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, LOOP_SYMBOL2606_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_loop_block13784);
            compound_statement_list2607=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2607.tree);

            END_SYMBOL2608 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_loop_block13786);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2608_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2608));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2608_tree);
            }

            LOOP_SYMBOL2609 = (pANTLR3_COMMON_TOKEN) MATCHT(LOOP_SYMBOL, &FOLLOW_LOOP_SYMBOL_in_loop_block13788);
            if  (HASEXCEPTION())
            {
                goto ruleloop_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LOOP_SYMBOL2609_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOOP_SYMBOL2609));
            ADAPTOR->addChild(ADAPTOR, root_0, LOOP_SYMBOL2609_tree);
            }

            // MySQL.g:2620:62: ( label_identifier )?
            {
                int alt728=2;
                {
                    int LA728_0 = LA(1);
                    if ( (((LA728_0 >= ACTION_SYMBOL) && (LA728_0 <= SHARE_SYMBOL)) || ((LA728_0 >= SLOW_SYMBOL) && (LA728_0 <= YEAR_SYMBOL)) || LA728_0 == BACK_TICK_QUOTED_ID || LA728_0 == DOUBLE_QUOTED_TEXT || LA728_0 == IDENTIFIER))
                    {
                        alt728=1;
                    }
                }
                switch (alt728)
                {
            	case 1:
            	    // MySQL.g:2620:62: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_loop_block13790);
            	        label_identifier2610=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleloop_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2610.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:2623: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_SYMBOL2611;
    pANTLR3_COMMON_TOKEN    UNTIL_SYMBOL2613;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2615;
    pANTLR3_COMMON_TOKEN    REPEAT_SYMBOL2616;
    MySQLParser_compound_statement_list_return compound_statement_list2612;
    #undef	RETURN_TYPE_compound_statement_list2612
    #define	RETURN_TYPE_compound_statement_list2612 MySQLParser_compound_statement_list_return

    MySQLParser_expression_return expression2614;
    #undef	RETURN_TYPE_expression2614
    #define	RETURN_TYPE_expression2614 MySQLParser_expression_return

    MySQLParser_label_identifier_return label_identifier2617;
    #undef	RETURN_TYPE_label_identifier2617
    #define	RETURN_TYPE_label_identifier2617 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE REPEAT_SYMBOL2611_tree;
    pANTLR3_BASE_TREE UNTIL_SYMBOL2613_tree;
    pANTLR3_BASE_TREE END_SYMBOL2615_tree;
    pANTLR3_BASE_TREE REPEAT_SYMBOL2616_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REPEAT_SYMBOL2611       = NULL;
    UNTIL_SYMBOL2613       = NULL;
    END_SYMBOL2615       = NULL;
    REPEAT_SYMBOL2616       = NULL;
    compound_statement_list2612.tree = NULL;

    expression2614.tree = NULL;

    label_identifier2617.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REPEAT_SYMBOL2611_tree   = NULL;
    UNTIL_SYMBOL2613_tree   = NULL;
    END_SYMBOL2615_tree   = NULL;
    REPEAT_SYMBOL2616_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2623:19: ( REPEAT_SYMBOL ^ compound_statement_list UNTIL_SYMBOL expression END_SYMBOL REPEAT_SYMBOL ( label_identifier )? )
        // MySQL.g:2624:2: REPEAT_SYMBOL ^ compound_statement_list UNTIL_SYMBOL expression END_SYMBOL REPEAT_SYMBOL ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REPEAT_SYMBOL2611 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13800);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPEAT_SYMBOL2611_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL2611))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REPEAT_SYMBOL2611_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_repeat_until_block13803);
            compound_statement_list2612=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_list2612.tree);

            UNTIL_SYMBOL2613 = (pANTLR3_COMMON_TOKEN) MATCHT(UNTIL_SYMBOL, &FOLLOW_UNTIL_SYMBOL_in_repeat_until_block13805);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            UNTIL_SYMBOL2613_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNTIL_SYMBOL2613));
            ADAPTOR->addChild(ADAPTOR, root_0, UNTIL_SYMBOL2613_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_repeat_until_block13807);
            expression2614=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2614.tree);

            END_SYMBOL2615 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_repeat_until_block13809);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2615_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2615));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2615_tree);
            }

            REPEAT_SYMBOL2616 = (pANTLR3_COMMON_TOKEN) MATCHT(REPEAT_SYMBOL, &FOLLOW_REPEAT_SYMBOL_in_repeat_until_block13811);
            if  (HASEXCEPTION())
            {
                goto rulerepeat_until_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REPEAT_SYMBOL2616_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REPEAT_SYMBOL2616));
            ADAPTOR->addChild(ADAPTOR, root_0, REPEAT_SYMBOL2616_tree);
            }

            // MySQL.g:2624:90: ( label_identifier )?
            {
                int alt729=2;
                {
                    int LA729_0 = LA(1);
                    if ( (((LA729_0 >= ACTION_SYMBOL) && (LA729_0 <= SHARE_SYMBOL)) || ((LA729_0 >= SLOW_SYMBOL) && (LA729_0 <= YEAR_SYMBOL)) || LA729_0 == BACK_TICK_QUOTED_ID || LA729_0 == DOUBLE_QUOTED_TEXT || LA729_0 == IDENTIFIER))
                    {
                        alt729=1;
                    }
                }
                switch (alt729)
                {
            	case 1:
            	    // MySQL.g:2624:90: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_repeat_until_block13813);
            	        label_identifier2617=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulerepeat_until_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2617.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:2627: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_SYMBOL2618;
    pANTLR3_COMMON_TOKEN    DO_SYMBOL2620;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2622;
    pANTLR3_COMMON_TOKEN    WHILE_SYMBOL2623;
    MySQLParser_expression_return expression2619;
    #undef	RETURN_TYPE_expression2619
    #define	RETURN_TYPE_expression2619 MySQLParser_expression_return

    MySQLParser_compound_statement_list_return compound_statement_list2621;
    #undef	RETURN_TYPE_compound_statement_list2621
    #define	RETURN_TYPE_compound_statement_list2621 MySQLParser_compound_statement_list_return

    MySQLParser_label_identifier_return label_identifier2624;
    #undef	RETURN_TYPE_label_identifier2624
    #define	RETURN_TYPE_label_identifier2624 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE WHILE_SYMBOL2618_tree;
    pANTLR3_BASE_TREE DO_SYMBOL2620_tree;
    pANTLR3_BASE_TREE END_SYMBOL2622_tree;
    pANTLR3_BASE_TREE WHILE_SYMBOL2623_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WHILE_SYMBOL2618       = NULL;
    DO_SYMBOL2620       = NULL;
    END_SYMBOL2622       = NULL;
    WHILE_SYMBOL2623       = NULL;
    expression2619.tree = NULL;

    compound_statement_list2621.tree = NULL;

    label_identifier2624.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WHILE_SYMBOL2618_tree   = NULL;
    DO_SYMBOL2620_tree   = NULL;
    END_SYMBOL2622_tree   = NULL;
    WHILE_SYMBOL2623_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2627:15: ( WHILE_SYMBOL ^ expression DO_SYMBOL compound_statement_list END_SYMBOL WHILE_SYMBOL ( label_identifier )? )
        // MySQL.g:2628:2: WHILE_SYMBOL ^ expression DO_SYMBOL compound_statement_list END_SYMBOL WHILE_SYMBOL ( label_identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            WHILE_SYMBOL2618 = (pANTLR3_COMMON_TOKEN) MATCHT(WHILE_SYMBOL, &FOLLOW_WHILE_SYMBOL_in_while_do_block13823);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHILE_SYMBOL2618_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHILE_SYMBOL2618))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, WHILE_SYMBOL2618_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_expression_in_while_do_block13826);
            expression2619=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2619.tree);

            DO_SYMBOL2620 = (pANTLR3_COMMON_TOKEN) MATCHT(DO_SYMBOL, &FOLLOW_DO_SYMBOL_in_while_do_block13828);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DO_SYMBOL2620_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DO_SYMBOL2620));
            ADAPTOR->addChild(ADAPTOR, root_0, DO_SYMBOL2620_tree);
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_while_do_block13830);
            compound_statement_list2621=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_list2621.tree);

            END_SYMBOL2622 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_while_do_block13832);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2622_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2622));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2622_tree);
            }

            WHILE_SYMBOL2623 = (pANTLR3_COMMON_TOKEN) MATCHT(WHILE_SYMBOL, &FOLLOW_WHILE_SYMBOL_in_while_do_block13834);
            if  (HASEXCEPTION())
            {
                goto rulewhile_do_blockEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            WHILE_SYMBOL2623_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WHILE_SYMBOL2623));
            ADAPTOR->addChild(ADAPTOR, root_0, WHILE_SYMBOL2623_tree);
            }

            // MySQL.g:2628:85: ( label_identifier )?
            {
                int alt730=2;
                {
                    int LA730_0 = LA(1);
                    if ( (((LA730_0 >= ACTION_SYMBOL) && (LA730_0 <= SHARE_SYMBOL)) || ((LA730_0 >= SLOW_SYMBOL) && (LA730_0 <= YEAR_SYMBOL)) || LA730_0 == BACK_TICK_QUOTED_ID || LA730_0 == DOUBLE_QUOTED_TEXT || LA730_0 == IDENTIFIER))
                    {
                        alt730=1;
                    }
                }
                switch (alt730)
                {
            	case 1:
            	    // MySQL.g:2628:85: label_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_label_identifier_in_while_do_block13836);
            	        label_identifier2624=label_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulewhile_do_blockEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2624.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:2631:1: declarations : ( options {k=3; } : 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_SYMBOL2625;
    MySQLParser_identifier_return identifier2626;
    #undef	RETURN_TYPE_identifier2626
    #define	RETURN_TYPE_identifier2626 MySQLParser_identifier_return

    MySQLParser_variable_declaration_return variable_declaration2627;
    #undef	RETURN_TYPE_variable_declaration2627
    #define	RETURN_TYPE_variable_declaration2627 MySQLParser_variable_declaration_return

    MySQLParser_condition_declaration_return condition_declaration2628;
    #undef	RETURN_TYPE_condition_declaration2628
    #define	RETURN_TYPE_condition_declaration2628 MySQLParser_condition_declaration_return

    MySQLParser_cursor_declaration_return cursor_declaration2629;
    #undef	RETURN_TYPE_cursor_declaration2629
    #define	RETURN_TYPE_cursor_declaration2629 MySQLParser_cursor_declaration_return

    MySQLParser_handler_declaration_return handler_declaration2630;
    #undef	RETURN_TYPE_handler_declaration2630
    #define	RETURN_TYPE_handler_declaration2630 MySQLParser_handler_declaration_return

    pANTLR3_BASE_TREE DECLARE_SYMBOL2625_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DECLARE_SYMBOL2625       = NULL;
    identifier2626.tree = NULL;

    variable_declaration2627.tree = NULL;

    condition_declaration2628.tree = NULL;

    cursor_declaration2629.tree = NULL;

    handler_declaration2630.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DECLARE_SYMBOL2625_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2631:13: ( ( options {k=3; } : DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration ) )* ( cursor_declaration )* ( handler_declaration )* )
        // MySQL.g:2632:2: ( options {k=3; } : DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration ) )* ( cursor_declaration )* ( handler_declaration )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2632:2: ( options {k=3; } : DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration ) )*

            for (;;)
            {
                int alt732=2;
                switch ( LA(1) )
                {
                case DECLARE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA732_1 = LA(2);
                		    if ( (LA732_1 == IDENTIFIER))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA732_76 = LA(3);
                		            if ( (LA732_76 == BIT_SYMBOL || ((LA732_76 >= BOOL_SYMBOL) && (LA732_76 <= BOOLEAN_SYMBOL)) || ((LA732_76 >= DATETIME_SYMBOL) && (LA732_76 <= DATE_SYMBOL)) || LA732_76 == ENUM_SYMBOL || LA732_76 == FIXED_SYMBOL || ((LA732_76 >= GEOMETRY_SYMBOL) && (LA732_76 <= GEOMETRYCOLLECTION_SYMBOL)) || LA732_76 == JSON_SYMBOL || LA732_76 == LINESTRING_SYMBOL || ((LA732_76 >= MULTILINESTRING_SYMBOL) && (LA732_76 <= MULTIPOLYGON_SYMBOL)) || ((LA732_76 >= NATIONAL_SYMBOL) && (LA732_76 <= NCHAR_SYMBOL)) || LA732_76 == NVARCHAR_SYMBOL || ((LA732_76 >= POINT_SYMBOL) && (LA732_76 <= POLYGON_SYMBOL)) || LA732_76 == SERIAL_SYMBOL || LA732_76 == TEXT_SYMBOL || LA732_76 == TIMESTAMP_SYMBOL || LA732_76 == TIME_SYMBOL || LA732_76 == YEAR_SYMBOL || ((LA732_76 >= BIGINT_SYMBOL) && (LA732_76 <= BINARY_SYMBOL)) || LA732_76 == BLOB_SYMBOL || LA732_76 == CHAR_SYMBOL || LA732_76 == COMMA_SYMBOL || LA732_76 == CONDITION_SYMBOL || LA732_76 == DECIMAL_SYMBOL || LA732_76 == DOUBLE_SYMBOL || LA732_76 == FLOAT_SYMBOL || LA732_76 == INT_SYMBOL || ((LA732_76 >= LONGBLOB_SYMBOL) && (LA732_76 <= LONGTEXT_SYMBOL)) || LA732_76 == LONG_SYMBOL || ((LA732_76 >= MEDIUMBLOB_SYMBOL) && (LA732_76 <= MEDIUMTEXT_SYMBOL)) || LA732_76 == NUMERIC_SYMBOL || LA732_76 == REAL_SYMBOL || LA732_76 == SET_SYMBOL || LA732_76 == SMALLINT_SYMBOL || ((LA732_76 >= TINYBLOB_SYMBOL) && (LA732_76 <= TINYTEXT_SYMBOL)) || LA732_76 == VARBINARY_SYMBOL || LA732_76 == VARCHAR_SYMBOL))
                		            {
                		                alt732=1;
                		            }

                		        }
                		    }
                		    else if ( (LA732_1 == BACK_TICK_QUOTED_ID))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA732_77 = LA(3);
                		            if ( (LA732_77 == BIT_SYMBOL || ((LA732_77 >= BOOL_SYMBOL) && (LA732_77 <= BOOLEAN_SYMBOL)) || ((LA732_77 >= DATETIME_SYMBOL) && (LA732_77 <= DATE_SYMBOL)) || LA732_77 == ENUM_SYMBOL || LA732_77 == FIXED_SYMBOL || ((LA732_77 >= GEOMETRY_SYMBOL) && (LA732_77 <= GEOMETRYCOLLECTION_SYMBOL)) || LA732_77 == JSON_SYMBOL || LA732_77 == LINESTRING_SYMBOL || ((LA732_77 >= MULTILINESTRING_SYMBOL) && (LA732_77 <= MULTIPOLYGON_SYMBOL)) || ((LA732_77 >= NATIONAL_SYMBOL) && (LA732_77 <= NCHAR_SYMBOL)) || LA732_77 == NVARCHAR_SYMBOL || ((LA732_77 >= POINT_SYMBOL) && (LA732_77 <= POLYGON_SYMBOL)) || LA732_77 == SERIAL_SYMBOL || LA732_77 == TEXT_SYMBOL || LA732_77 == TIMESTAMP_SYMBOL || LA732_77 == TIME_SYMBOL || LA732_77 == YEAR_SYMBOL || ((LA732_77 >= BIGINT_SYMBOL) && (LA732_77 <= BINARY_SYMBOL)) || LA732_77 == BLOB_SYMBOL || LA732_77 == CHAR_SYMBOL || LA732_77 == COMMA_SYMBOL || LA732_77 == CONDITION_SYMBOL || LA732_77 == DECIMAL_SYMBOL || LA732_77 == DOUBLE_SYMBOL || LA732_77 == FLOAT_SYMBOL || LA732_77 == INT_SYMBOL || ((LA732_77 >= LONGBLOB_SYMBOL) && (LA732_77 <= LONGTEXT_SYMBOL)) || LA732_77 == LONG_SYMBOL || ((LA732_77 >= MEDIUMBLOB_SYMBOL) && (LA732_77 <= MEDIUMTEXT_SYMBOL)) || LA732_77 == NUMERIC_SYMBOL || LA732_77 == REAL_SYMBOL || LA732_77 == SET_SYMBOL || LA732_77 == SMALLINT_SYMBOL || ((LA732_77 >= TINYBLOB_SYMBOL) && (LA732_77 <= TINYTEXT_SYMBOL)) || LA732_77 == VARBINARY_SYMBOL || LA732_77 == VARCHAR_SYMBOL))
                		            {
                		                alt732=1;
                		            }

                		        }
                		    }
                		    else if ( (LA732_1 == DOUBLE_QUOTED_TEXT))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA732_78 = LA(3);
                		            if ( (LA732_78 == BIT_SYMBOL || ((LA732_78 >= BOOL_SYMBOL) && (LA732_78 <= BOOLEAN_SYMBOL)) || ((LA732_78 >= DATETIME_SYMBOL) && (LA732_78 <= DATE_SYMBOL)) || LA732_78 == ENUM_SYMBOL || LA732_78 == FIXED_SYMBOL || ((LA732_78 >= GEOMETRY_SYMBOL) && (LA732_78 <= GEOMETRYCOLLECTION_SYMBOL)) || LA732_78 == JSON_SYMBOL || LA732_78 == LINESTRING_SYMBOL || ((LA732_78 >= MULTILINESTRING_SYMBOL) && (LA732_78 <= MULTIPOLYGON_SYMBOL)) || ((LA732_78 >= NATIONAL_SYMBOL) && (LA732_78 <= NCHAR_SYMBOL)) || LA732_78 == NVARCHAR_SYMBOL || ((LA732_78 >= POINT_SYMBOL) && (LA732_78 <= POLYGON_SYMBOL)) || LA732_78 == SERIAL_SYMBOL || LA732_78 == TEXT_SYMBOL || LA732_78 == TIMESTAMP_SYMBOL || LA732_78 == TIME_SYMBOL || LA732_78 == YEAR_SYMBOL || ((LA732_78 >= BIGINT_SYMBOL) && (LA732_78 <= BINARY_SYMBOL)) || LA732_78 == BLOB_SYMBOL || LA732_78 == CHAR_SYMBOL || LA732_78 == COMMA_SYMBOL || LA732_78 == CONDITION_SYMBOL || LA732_78 == DECIMAL_SYMBOL || LA732_78 == DOUBLE_SYMBOL || LA732_78 == FLOAT_SYMBOL || LA732_78 == INT_SYMBOL || ((LA732_78 >= LONGBLOB_SYMBOL) && (LA732_78 <= LONGTEXT_SYMBOL)) || LA732_78 == LONG_SYMBOL || ((LA732_78 >= MEDIUMBLOB_SYMBOL) && (LA732_78 <= MEDIUMTEXT_SYMBOL)) || LA732_78 == NUMERIC_SYMBOL || LA732_78 == REAL_SYMBOL || LA732_78 == SET_SYMBOL || LA732_78 == SMALLINT_SYMBOL || ((LA732_78 >= TINYBLOB_SYMBOL) && (LA732_78 <= TINYTEXT_SYMBOL)) || LA732_78 == VARBINARY_SYMBOL || LA732_78 == VARCHAR_SYMBOL))
                		            {
                		                alt732=1;
                		            }

                		        }
                		    }
                		    else if ( (((LA732_1 >= ACTION_SYMBOL) && (LA732_1 <= SHARE_SYMBOL)) || ((LA732_1 >= SLOW_SYMBOL) && (LA732_1 <= YEAR_SYMBOL))))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA732_79 = LA(3);
                		            if ( (LA732_79 == BIT_SYMBOL || ((LA732_79 >= BOOL_SYMBOL) && (LA732_79 <= BOOLEAN_SYMBOL)) || ((LA732_79 >= DATETIME_SYMBOL) && (LA732_79 <= DATE_SYMBOL)) || LA732_79 == ENUM_SYMBOL || LA732_79 == FIXED_SYMBOL || ((LA732_79 >= GEOMETRY_SYMBOL) && (LA732_79 <= GEOMETRYCOLLECTION_SYMBOL)) || LA732_79 == JSON_SYMBOL || LA732_79 == LINESTRING_SYMBOL || ((LA732_79 >= MULTILINESTRING_SYMBOL) && (LA732_79 <= MULTIPOLYGON_SYMBOL)) || ((LA732_79 >= NATIONAL_SYMBOL) && (LA732_79 <= NCHAR_SYMBOL)) || LA732_79 == NVARCHAR_SYMBOL || ((LA732_79 >= POINT_SYMBOL) && (LA732_79 <= POLYGON_SYMBOL)) || LA732_79 == SERIAL_SYMBOL || LA732_79 == TEXT_SYMBOL || LA732_79 == TIMESTAMP_SYMBOL || LA732_79 == TIME_SYMBOL || LA732_79 == YEAR_SYMBOL || ((LA732_79 >= BIGINT_SYMBOL) && (LA732_79 <= BINARY_SYMBOL)) || LA732_79 == BLOB_SYMBOL || LA732_79 == CHAR_SYMBOL || LA732_79 == COMMA_SYMBOL || LA732_79 == CONDITION_SYMBOL || LA732_79 == DECIMAL_SYMBOL || LA732_79 == DOUBLE_SYMBOL || LA732_79 == FLOAT_SYMBOL || LA732_79 == INT_SYMBOL || ((LA732_79 >= LONGBLOB_SYMBOL) && (LA732_79 <= LONGTEXT_SYMBOL)) || LA732_79 == LONG_SYMBOL || ((LA732_79 >= MEDIUMBLOB_SYMBOL) && (LA732_79 <= MEDIUMTEXT_SYMBOL)) || LA732_79 == NUMERIC_SYMBOL || LA732_79 == REAL_SYMBOL || LA732_79 == SET_SYMBOL || LA732_79 == SMALLINT_SYMBOL || ((LA732_79 >= TINYBLOB_SYMBOL) && (LA732_79 <= TINYTEXT_SYMBOL)) || LA732_79 == VARBINARY_SYMBOL || LA732_79 == VARCHAR_SYMBOL))
                		            {
                		                alt732=1;
                		            }

                		        }
                		    }
                		    else if ( (((LA732_1 >= ACCOUNT_SYMBOL) && (LA732_1 <= XA_SYMBOL)) || LA732_1 == SHUTDOWN_SYMBOL))
                		    {
                		        {
                		           /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		            */
                		            int LA732_80 = LA(3);
                		            if ( (LA732_80 == BIT_SYMBOL || ((LA732_80 >= BOOL_SYMBOL) && (LA732_80 <= BOOLEAN_SYMBOL)) || ((LA732_80 >= DATETIME_SYMBOL) && (LA732_80 <= DATE_SYMBOL)) || LA732_80 == ENUM_SYMBOL || LA732_80 == FIXED_SYMBOL || ((LA732_80 >= GEOMETRY_SYMBOL) && (LA732_80 <= GEOMETRYCOLLECTION_SYMBOL)) || LA732_80 == JSON_SYMBOL || LA732_80 == LINESTRING_SYMBOL || ((LA732_80 >= MULTILINESTRING_SYMBOL) && (LA732_80 <= MULTIPOLYGON_SYMBOL)) || ((LA732_80 >= NATIONAL_SYMBOL) && (LA732_80 <= NCHAR_SYMBOL)) || LA732_80 == NVARCHAR_SYMBOL || ((LA732_80 >= POINT_SYMBOL) && (LA732_80 <= POLYGON_SYMBOL)) || LA732_80 == SERIAL_SYMBOL || LA732_80 == TEXT_SYMBOL || LA732_80 == TIMESTAMP_SYMBOL || LA732_80 == TIME_SYMBOL || LA732_80 == YEAR_SYMBOL || ((LA732_80 >= BIGINT_SYMBOL) && (LA732_80 <= BINARY_SYMBOL)) || LA732_80 == BLOB_SYMBOL || LA732_80 == CHAR_SYMBOL || LA732_80 == COMMA_SYMBOL || LA732_80 == CONDITION_SYMBOL || LA732_80 == DECIMAL_SYMBOL || LA732_80 == DOUBLE_SYMBOL || LA732_80 == FLOAT_SYMBOL || LA732_80 == INT_SYMBOL || ((LA732_80 >= LONGBLOB_SYMBOL) && (LA732_80 <= LONGTEXT_SYMBOL)) || LA732_80 == LONG_SYMBOL || ((LA732_80 >= MEDIUMBLOB_SYMBOL) && (LA732_80 <= MEDIUMTEXT_SYMBOL)) || LA732_80 == NUMERIC_SYMBOL || LA732_80 == REAL_SYMBOL || LA732_80 == SET_SYMBOL || LA732_80 == SMALLINT_SYMBOL || ((LA732_80 >= TINYBLOB_SYMBOL) && (LA732_80 <= TINYTEXT_SYMBOL)) || LA732_80 == VARBINARY_SYMBOL || LA732_80 == VARCHAR_SYMBOL))
                		            {
                		                alt732=1;
                		            }

                		        }
                		    }

                		}
                	}
                    break;

                }

                switch (alt732)
                {
            	case 1:
            	    // MySQL.g:2632:24: DECLARE_SYMBOL identifier ( variable_declaration | condition_declaration )
            	    {
            	        DECLARE_SYMBOL2625 = (pANTLR3_COMMON_TOKEN) MATCHT(DECLARE_SYMBOL, &FOLLOW_DECLARE_SYMBOL_in_declarations13861);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledeclarationsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DECLARE_SYMBOL2625_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECLARE_SYMBOL2625));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DECLARE_SYMBOL2625_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_declarations13863);
            	        identifier2626=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledeclarationsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2626.tree);

            	        // MySQL.g:2632:50: ( variable_declaration | condition_declaration )
            	        {
            	            int alt731=2;
            	            {
            	                int LA731_0 = LA(1);
            	                if ( (LA731_0 == BIT_SYMBOL || ((LA731_0 >= BOOL_SYMBOL) && (LA731_0 <= BOOLEAN_SYMBOL)) || ((LA731_0 >= DATETIME_SYMBOL) && (LA731_0 <= DATE_SYMBOL)) || LA731_0 == ENUM_SYMBOL || LA731_0 == FIXED_SYMBOL || ((LA731_0 >= GEOMETRY_SYMBOL) && (LA731_0 <= GEOMETRYCOLLECTION_SYMBOL)) || LA731_0 == JSON_SYMBOL || LA731_0 == LINESTRING_SYMBOL || ((LA731_0 >= MULTILINESTRING_SYMBOL) && (LA731_0 <= MULTIPOLYGON_SYMBOL)) || ((LA731_0 >= NATIONAL_SYMBOL) && (LA731_0 <= NCHAR_SYMBOL)) || LA731_0 == NVARCHAR_SYMBOL || ((LA731_0 >= POINT_SYMBOL) && (LA731_0 <= POLYGON_SYMBOL)) || LA731_0 == SERIAL_SYMBOL || LA731_0 == TEXT_SYMBOL || LA731_0 == TIMESTAMP_SYMBOL || LA731_0 == TIME_SYMBOL || LA731_0 == YEAR_SYMBOL || ((LA731_0 >= BIGINT_SYMBOL) && (LA731_0 <= BINARY_SYMBOL)) || LA731_0 == BLOB_SYMBOL || LA731_0 == CHAR_SYMBOL || LA731_0 == COMMA_SYMBOL || LA731_0 == DECIMAL_SYMBOL || LA731_0 == DOUBLE_SYMBOL || LA731_0 == FLOAT_SYMBOL || LA731_0 == INT_SYMBOL || ((LA731_0 >= LONGBLOB_SYMBOL) && (LA731_0 <= LONGTEXT_SYMBOL)) || LA731_0 == LONG_SYMBOL || ((LA731_0 >= MEDIUMBLOB_SYMBOL) && (LA731_0 <= MEDIUMTEXT_SYMBOL)) || LA731_0 == NUMERIC_SYMBOL || LA731_0 == REAL_SYMBOL || LA731_0 == SET_SYMBOL || LA731_0 == SMALLINT_SYMBOL || ((LA731_0 >= TINYBLOB_SYMBOL) && (LA731_0 <= TINYTEXT_SYMBOL)) || LA731_0 == VARBINARY_SYMBOL || LA731_0 == VARCHAR_SYMBOL))
            	                {
            	                    alt731=1;
            	                }
            	                else if ( (LA731_0 == CONDITION_SYMBOL))
            	                {
            	                    alt731=2;
            	                }
            	                else
            	                {
            	                    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 ruledeclarationsEx;

            	                }
            	            }
            	            switch (alt731)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2632:51: variable_declaration
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_variable_declaration_in_declarations13866);
            	        	        variable_declaration2627=variable_declaration(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledeclarationsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable_declaration2627.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:2632:74: condition_declaration
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_condition_declaration_in_declarations13870);
            	        	        condition_declaration2628=condition_declaration(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledeclarationsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_declaration2628.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop732;	/* break out of the loop */
            	    break;
                }
            }
            loop732: ; /* Jump out to here if this rule does not match */


            // MySQL.g:2633:3: ( cursor_declaration )*

            for (;;)
            {
                int alt733=2;
                switch ( LA(1) )
                {
                case DECLARE_SYMBOL:
                	{
                		{
                		   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
                		    */
                		    int LA733_1 = LA(2);
                		    if ( (((LA733_1 >= ACCOUNT_SYMBOL) && (LA733_1 <= YEAR_SYMBOL)) || LA733_1 == BACK_TICK_QUOTED_ID || LA733_1 == DOUBLE_QUOTED_TEXT || LA733_1 == IDENTIFIER))
                		    {
                		        alt733=1;
                		    }

                		}
                	}
                    break;

                }

                switch (alt733)
                {
            	case 1:
            	    // MySQL.g:2633:3: cursor_declaration
            	    {
            	        FOLLOWPUSH(FOLLOW_cursor_declaration_in_declarations13877);
            	        cursor_declaration2629=cursor_declaration(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledeclarationsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, cursor_declaration2629.tree);

            	    }
            	    break;

            	default:
            	    goto loop733;	/* break out of the loop */
            	    break;
                }
            }
            loop733: ; /* Jump out to here if this rule does not match */


            // MySQL.g:2633:23: ( handler_declaration )*

            for (;;)
            {
                int alt734=2;
                switch ( LA(1) )
                {
                case DECLARE_SYMBOL:
                	{
                		alt734=1;
                	}
                    break;

                }

                switch (alt734)
                {
            	case 1:
            	    // MySQL.g:2633:23: handler_declaration
            	    {
            	        FOLLOWPUSH(FOLLOW_handler_declaration_in_declarations13880);
            	        handler_declaration2630=handler_declaration(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledeclarationsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_declaration2630.tree);

            	    }
            	    break;

            	default:
            	    goto loop734;	/* break out of the loop */
            	    break;
                }
            }
            loop734: ; /* 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:2636: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_SYMBOL2631;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2634;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2636;
    MySQLParser_identifier_return identifier2632;
    #undef	RETURN_TYPE_identifier2632
    #define	RETURN_TYPE_identifier2632 MySQLParser_identifier_return

    MySQLParser_data_type_return data_type2633;
    #undef	RETURN_TYPE_data_type2633
    #define	RETURN_TYPE_data_type2633 MySQLParser_data_type_return

    MySQLParser_expression_return expression2635;
    #undef	RETURN_TYPE_expression2635
    #define	RETURN_TYPE_expression2635 MySQLParser_expression_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2631_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2634_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2636_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2631       = NULL;
    DEFAULT_SYMBOL2634       = NULL;
    SEMICOLON_SYMBOL2636       = NULL;
    identifier2632.tree = NULL;

    data_type2633.tree = NULL;

    expression2635.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2631_tree   = NULL;
    DEFAULT_SYMBOL2634_tree   = NULL;
    SEMICOLON_SYMBOL2636_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2636:21: ( ( COMMA_SYMBOL identifier )* data_type ( DEFAULT_SYMBOL expression )? SEMICOLON_SYMBOL )
        // MySQL.g:2637:2: ( COMMA_SYMBOL identifier )* data_type ( DEFAULT_SYMBOL expression )? SEMICOLON_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2637:2: ( COMMA_SYMBOL identifier )*

            for (;;)
            {
                int alt735=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt735=1;
                	}
                    break;

                }

                switch (alt735)
                {
            	case 1:
            	    // MySQL.g:2637:3: COMMA_SYMBOL identifier
            	    {
            	        COMMA_SYMBOL2631 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_variable_declaration13891);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2631_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2631));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2631_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_variable_declaration13893);
            	        identifier2632=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2632.tree);

            	    }
            	    break;

            	default:
            	    goto loop735;	/* break out of the loop */
            	    break;
                }
            }
            loop735: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_data_type_in_variable_declaration13897);
            data_type2633=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulevariable_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type2633.tree);

            // MySQL.g:2637:39: ( DEFAULT_SYMBOL expression )?
            {
                int alt736=2;
                switch ( LA(1) )
                {
                    case DEFAULT_SYMBOL:
                    	{
                    		alt736=1;
                    	}
                        break;
                }

                switch (alt736)
                {
            	case 1:
            	    // MySQL.g:2637:40: DEFAULT_SYMBOL expression
            	    {
            	        DEFAULT_SYMBOL2634 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_variable_declaration13900);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL2634_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2634));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2634_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_variable_declaration13902);
            	        expression2635=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulevariable_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2635.tree);

            	    }
            	    break;

                }
            }

            SEMICOLON_SYMBOL2636 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_variable_declaration13906);
            if  (HASEXCEPTION())
            {
                goto rulevariable_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SEMICOLON_SYMBOL2636_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2636));
            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2636_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:2640:1: condition_declaration : CONDITION_SYMBOL FOR_SYMBOL sp_condition 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_SYMBOL2637;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2638;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2640;
    MySQLParser_sp_condition_return sp_condition2639;
    #undef	RETURN_TYPE_sp_condition2639
    #define	RETURN_TYPE_sp_condition2639 MySQLParser_sp_condition_return

    pANTLR3_BASE_TREE CONDITION_SYMBOL2637_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2638_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2640_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CONDITION_SYMBOL2637       = NULL;
    FOR_SYMBOL2638       = NULL;
    SEMICOLON_SYMBOL2640       = NULL;
    sp_condition2639.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CONDITION_SYMBOL2637_tree   = NULL;
    FOR_SYMBOL2638_tree   = NULL;
    SEMICOLON_SYMBOL2640_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2640:22: ( CONDITION_SYMBOL FOR_SYMBOL sp_condition SEMICOLON_SYMBOL )
        // MySQL.g:2641:2: CONDITION_SYMBOL FOR_SYMBOL sp_condition SEMICOLON_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CONDITION_SYMBOL2637 = (pANTLR3_COMMON_TOKEN) MATCHT(CONDITION_SYMBOL, &FOLLOW_CONDITION_SYMBOL_in_condition_declaration13915);
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CONDITION_SYMBOL2637_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONDITION_SYMBOL2637));
            ADAPTOR->addChild(ADAPTOR, root_0, CONDITION_SYMBOL2637_tree);
            }

            FOR_SYMBOL2638 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_condition_declaration13917);
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2638_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2638));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2638_tree);
            }

            FOLLOWPUSH(FOLLOW_sp_condition_in_condition_declaration13919);
            sp_condition2639=sp_condition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sp_condition2639.tree);

            SEMICOLON_SYMBOL2640 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_condition_declaration13921);
            if  (HASEXCEPTION())
            {
                goto rulecondition_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SEMICOLON_SYMBOL2640_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2640));
            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2640_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 sp_condition
 * MySQL.g:2644:1: sp_condition : ( ulong_number | sqlstate );
 */
static MySQLParser_sp_condition_return
sp_condition(pMySQLParser ctx)
{
    MySQLParser_sp_condition_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_ulong_number_return ulong_number2641;
    #undef	RETURN_TYPE_ulong_number2641
    #define	RETURN_TYPE_ulong_number2641 MySQLParser_ulong_number_return

    MySQLParser_sqlstate_return sqlstate2642;
    #undef	RETURN_TYPE_sqlstate2642
    #define	RETURN_TYPE_sqlstate2642 MySQLParser_sqlstate_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    ulong_number2641.tree = NULL;

    sqlstate2642.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2644:13: ( ulong_number | sqlstate )

            ANTLR3_UINT32 alt737;

            alt737=2;

            switch ( LA(1) )
            {
            case DECIMAL_NUMBER:
            case FLOAT_NUMBER:
            case HEX_NUMBER:
            case INT_NUMBER:
            case LONG_NUMBER:
            case ULONGLONG_NUMBER:
            	{
            		alt737=1;
            	}
                break;
            case SQLSTATE_SYMBOL:
            	{
            		alt737=2;
            	}
                break;

            default:
                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 rulesp_conditionEx;

            }

            switch (alt737)
            {
        	case 1:
        	    // MySQL.g:2645:2: ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_ulong_number_in_sp_condition13930);
        	        ulong_number2641=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesp_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2641.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2646:4: sqlstate
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_sqlstate_in_sp_condition13935);
        	        sqlstate2642=sqlstate(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesp_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sqlstate2642.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulesp_conditionEx; /* Prevent compiler warnings */
    rulesp_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 sp_condition */

/**
 * $ANTLR start sqlstate
 * MySQL.g:2649:1: sqlstate : SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal ;
 */
static MySQLParser_sqlstate_return
sqlstate(pMySQLParser ctx)
{
    MySQLParser_sqlstate_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SQLSTATE_SYMBOL2643;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2644;
    MySQLParser_string_literal_return string_literal2645;
    #undef	RETURN_TYPE_string_literal2645
    #define	RETURN_TYPE_string_literal2645 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE SQLSTATE_SYMBOL2643_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2644_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQLSTATE_SYMBOL2643       = NULL;
    VALUE_SYMBOL2644       = NULL;
    string_literal2645.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQLSTATE_SYMBOL2643_tree   = NULL;
    VALUE_SYMBOL2644_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2649:9: ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal )
        // MySQL.g:2650:2: SQLSTATE_SYMBOL ( VALUE_SYMBOL )? string_literal
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SQLSTATE_SYMBOL2643 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLSTATE_SYMBOL, &FOLLOW_SQLSTATE_SYMBOL_in_sqlstate13944);
            if  (HASEXCEPTION())
            {
                goto rulesqlstateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SQLSTATE_SYMBOL2643_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLSTATE_SYMBOL2643));
            ADAPTOR->addChild(ADAPTOR, root_0, SQLSTATE_SYMBOL2643_tree);
            }

            // MySQL.g:2650:18: ( VALUE_SYMBOL )?
            {
                int alt738=2;
                switch ( LA(1) )
                {
                    case VALUE_SYMBOL:
                    	{
                    		alt738=1;
                    	}
                        break;
                }

                switch (alt738)
                {
            	case 1:
            	    // MySQL.g:2650:18: VALUE_SYMBOL
            	    {
            	        VALUE_SYMBOL2644 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_sqlstate13946);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesqlstateEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        VALUE_SYMBOL2644_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2644));
            	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2644_tree);
            	        }

            	    }
            	    break;

                }
            }

            FOLLOWPUSH(FOLLOW_string_literal_in_sqlstate13949);
            string_literal2645=string_literal(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesqlstateEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2645.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulesqlstateEx; /* Prevent compiler warnings */
    rulesqlstateEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end sqlstate */

/**
 * $ANTLR start cursor_declaration
 * MySQL.g:2653:1: cursor_declaration : DECLARE_SYMBOL identifier CURSOR_SYMBOL FOR_SYMBOL select_statement 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_SYMBOL2646;
    pANTLR3_COMMON_TOKEN    CURSOR_SYMBOL2648;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2649;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2651;
    MySQLParser_identifier_return identifier2647;
    #undef	RETURN_TYPE_identifier2647
    #define	RETURN_TYPE_identifier2647 MySQLParser_identifier_return

    MySQLParser_select_statement_return select_statement2650;
    #undef	RETURN_TYPE_select_statement2650
    #define	RETURN_TYPE_select_statement2650 MySQLParser_select_statement_return

    pANTLR3_BASE_TREE DECLARE_SYMBOL2646_tree;
    pANTLR3_BASE_TREE CURSOR_SYMBOL2648_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2649_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2651_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DECLARE_SYMBOL2646       = NULL;
    CURSOR_SYMBOL2648       = NULL;
    FOR_SYMBOL2649       = NULL;
    SEMICOLON_SYMBOL2651       = NULL;
    identifier2647.tree = NULL;

    select_statement2650.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DECLARE_SYMBOL2646_tree   = NULL;
    CURSOR_SYMBOL2648_tree   = NULL;
    FOR_SYMBOL2649_tree   = NULL;
    SEMICOLON_SYMBOL2651_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2653:19: ( DECLARE_SYMBOL identifier CURSOR_SYMBOL FOR_SYMBOL select_statement SEMICOLON_SYMBOL )
        // MySQL.g:2654:2: DECLARE_SYMBOL identifier CURSOR_SYMBOL FOR_SYMBOL select_statement SEMICOLON_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DECLARE_SYMBOL2646 = (pANTLR3_COMMON_TOKEN) MATCHT(DECLARE_SYMBOL, &FOLLOW_DECLARE_SYMBOL_in_cursor_declaration13958);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DECLARE_SYMBOL2646_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECLARE_SYMBOL2646));
            ADAPTOR->addChild(ADAPTOR, root_0, DECLARE_SYMBOL2646_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_declaration13960);
            identifier2647=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2647.tree);

            CURSOR_SYMBOL2648 = (pANTLR3_COMMON_TOKEN) MATCHT(CURSOR_SYMBOL, &FOLLOW_CURSOR_SYMBOL_in_cursor_declaration13962);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CURSOR_SYMBOL2648_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURSOR_SYMBOL2648));
            ADAPTOR->addChild(ADAPTOR, root_0, CURSOR_SYMBOL2648_tree);
            }

            FOR_SYMBOL2649 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_cursor_declaration13964);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2649_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2649));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2649_tree);
            }

            FOLLOWPUSH(FOLLOW_select_statement_in_cursor_declaration13966);
            select_statement2650=select_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, select_statement2650.tree);

            SEMICOLON_SYMBOL2651 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_cursor_declaration13968);
            if  (HASEXCEPTION())
            {
                goto rulecursor_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SEMICOLON_SYMBOL2651_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2651));
            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2651_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:2657: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_SYMBOL2652;
    pANTLR3_COMMON_TOKEN    set2653;
    pANTLR3_COMMON_TOKEN    HANDLER_SYMBOL2654;
    pANTLR3_COMMON_TOKEN    FOR_SYMBOL2655;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2657;
    pANTLR3_COMMON_TOKEN    SEMICOLON_SYMBOL2660;
    MySQLParser_handler_condition_return handler_condition2656;
    #undef	RETURN_TYPE_handler_condition2656
    #define	RETURN_TYPE_handler_condition2656 MySQLParser_handler_condition_return

    MySQLParser_handler_condition_return handler_condition2658;
    #undef	RETURN_TYPE_handler_condition2658
    #define	RETURN_TYPE_handler_condition2658 MySQLParser_handler_condition_return

    MySQLParser_compound_statement_return compound_statement2659;
    #undef	RETURN_TYPE_compound_statement2659
    #define	RETURN_TYPE_compound_statement2659 MySQLParser_compound_statement_return

    pANTLR3_BASE_TREE DECLARE_SYMBOL2652_tree;
    pANTLR3_BASE_TREE set2653_tree;
    pANTLR3_BASE_TREE HANDLER_SYMBOL2654_tree;
    pANTLR3_BASE_TREE FOR_SYMBOL2655_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2657_tree;
    pANTLR3_BASE_TREE SEMICOLON_SYMBOL2660_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DECLARE_SYMBOL2652       = NULL;
    set2653       = NULL;
    HANDLER_SYMBOL2654       = NULL;
    FOR_SYMBOL2655       = NULL;
    COMMA_SYMBOL2657       = NULL;
    SEMICOLON_SYMBOL2660       = NULL;
    handler_condition2656.tree = NULL;

    handler_condition2658.tree = NULL;

    compound_statement2659.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DECLARE_SYMBOL2652_tree   = NULL;
    set2653_tree   = NULL;
    HANDLER_SYMBOL2654_tree   = NULL;
    FOR_SYMBOL2655_tree   = NULL;
    COMMA_SYMBOL2657_tree   = NULL;
    SEMICOLON_SYMBOL2660_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2657: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:2658: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_SYMBOL2652 = (pANTLR3_COMMON_TOKEN) MATCHT(DECLARE_SYMBOL, &FOLLOW_DECLARE_SYMBOL_in_handler_declaration13977);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DECLARE_SYMBOL2652_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECLARE_SYMBOL2652));
            ADAPTOR->addChild(ADAPTOR, root_0, DECLARE_SYMBOL2652_tree);
            }

            set2653=(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, set2653))
                );
                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_SYMBOL2654 = (pANTLR3_COMMON_TOKEN) MATCHT(HANDLER_SYMBOL, &FOLLOW_HANDLER_SYMBOL_in_handler_declaration13991);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            HANDLER_SYMBOL2654_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HANDLER_SYMBOL2654));
            ADAPTOR->addChild(ADAPTOR, root_0, HANDLER_SYMBOL2654_tree);
            }

            FOR_SYMBOL2655 = (pANTLR3_COMMON_TOKEN) MATCHT(FOR_SYMBOL, &FOLLOW_FOR_SYMBOL_in_handler_declaration13995);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FOR_SYMBOL2655_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOR_SYMBOL2655));
            ADAPTOR->addChild(ADAPTOR, root_0, FOR_SYMBOL2655_tree);
            }

            FOLLOWPUSH(FOLLOW_handler_condition_in_handler_declaration13997);
            handler_condition2656=handler_condition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_condition2656.tree);

            // MySQL.g:2659:32: ( COMMA_SYMBOL handler_condition )*

            for (;;)
            {
                int alt739=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt739=1;
                	}
                    break;

                }

                switch (alt739)
                {
            	case 1:
            	    // MySQL.g:2659:33: COMMA_SYMBOL handler_condition
            	    {
            	        COMMA_SYMBOL2657 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_handler_declaration14000);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2657_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2657));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2657_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_handler_condition_in_handler_declaration14002);
            	        handler_condition2658=handler_condition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulehandler_declarationEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, handler_condition2658.tree);

            	    }
            	    break;

            	default:
            	    goto loop739;	/* break out of the loop */
            	    break;
                }
            }
            loop739: ; /* Jump out to here if this rule does not match */


            FOLLOWPUSH(FOLLOW_compound_statement_in_handler_declaration14006);
            compound_statement2659=compound_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement2659.tree);

            SEMICOLON_SYMBOL2660 = (pANTLR3_COMMON_TOKEN) MATCHT(SEMICOLON_SYMBOL, &FOLLOW_SEMICOLON_SYMBOL_in_handler_declaration14008);
            if  (HASEXCEPTION())
            {
                goto rulehandler_declarationEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SEMICOLON_SYMBOL2660_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SEMICOLON_SYMBOL2660));
            ADAPTOR->addChild(ADAPTOR, root_0, SEMICOLON_SYMBOL2660_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:2662:1: handler_condition : ( sp_condition | 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    SQLWARNING_SYMBOL2663;
    pANTLR3_COMMON_TOKEN    NOT_SYMBOL2664;
    pANTLR3_COMMON_TOKEN    FOUND_SYMBOL2665;
    pANTLR3_COMMON_TOKEN    SQLEXCEPTION_SYMBOL2666;
    MySQLParser_sp_condition_return sp_condition2661;
    #undef	RETURN_TYPE_sp_condition2661
    #define	RETURN_TYPE_sp_condition2661 MySQLParser_sp_condition_return

    MySQLParser_identifier_return identifier2662;
    #undef	RETURN_TYPE_identifier2662
    #define	RETURN_TYPE_identifier2662 MySQLParser_identifier_return

    pANTLR3_BASE_TREE SQLWARNING_SYMBOL2663_tree;
    pANTLR3_BASE_TREE NOT_SYMBOL2664_tree;
    pANTLR3_BASE_TREE FOUND_SYMBOL2665_tree;
    pANTLR3_BASE_TREE SQLEXCEPTION_SYMBOL2666_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SQLWARNING_SYMBOL2663       = NULL;
    NOT_SYMBOL2664       = NULL;
    FOUND_SYMBOL2665       = NULL;
    SQLEXCEPTION_SYMBOL2666       = NULL;
    sp_condition2661.tree = NULL;

    identifier2662.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SQLWARNING_SYMBOL2663_tree   = NULL;
    NOT_SYMBOL2664_tree   = NULL;
    FOUND_SYMBOL2665_tree   = NULL;
    SQLEXCEPTION_SYMBOL2666_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2662:18: ( sp_condition | identifier | SQLWARNING_SYMBOL | NOT_SYMBOL FOUND_SYMBOL | SQLEXCEPTION_SYMBOL )

            ANTLR3_UINT32 alt740;

            alt740=5;

            {
                int LA740_0 = LA(1);
                if ( (LA740_0 == DECIMAL_NUMBER || LA740_0 == FLOAT_NUMBER || LA740_0 == HEX_NUMBER || LA740_0 == INT_NUMBER || LA740_0 == LONG_NUMBER || LA740_0 == SQLSTATE_SYMBOL || LA740_0 == ULONGLONG_NUMBER))
                {
                    alt740=1;
                }
                else if ( (((LA740_0 >= ACCOUNT_SYMBOL) && (LA740_0 <= YEAR_SYMBOL)) || LA740_0 == BACK_TICK_QUOTED_ID || LA740_0 == DOUBLE_QUOTED_TEXT || LA740_0 == IDENTIFIER))
                {
                    alt740=2;
                }
                else if ( (LA740_0 == SQLWARNING_SYMBOL))
                {
                    alt740=3;
                }
                else if ( (LA740_0 == NOT_SYMBOL))
                {
                    alt740=4;
                }
                else if ( (LA740_0 == SQLEXCEPTION_SYMBOL))
                {
                    alt740=5;
                }
                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 rulehandler_conditionEx;

                }
            }
            switch (alt740)
            {
        	case 1:
        	    // MySQL.g:2663:2: sp_condition
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_sp_condition_in_handler_condition14017);
        	        sp_condition2661=sp_condition(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sp_condition2661.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2664:4: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_handler_condition14022);
        	        identifier2662=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2662.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2665:4: SQLWARNING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQLWARNING_SYMBOL2663 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLWARNING_SYMBOL, &FOLLOW_SQLWARNING_SYMBOL_in_handler_condition14027);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQLWARNING_SYMBOL2663_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLWARNING_SYMBOL2663));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQLWARNING_SYMBOL2663_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2666:4: NOT_SYMBOL FOUND_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NOT_SYMBOL2664 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_handler_condition14032);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOT_SYMBOL2664_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL2664));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL2664_tree);
        	        }

        	        FOUND_SYMBOL2665 = (pANTLR3_COMMON_TOKEN) MATCHT(FOUND_SYMBOL, &FOLLOW_FOUND_SYMBOL_in_handler_condition14034);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FOUND_SYMBOL2665_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FOUND_SYMBOL2665));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FOUND_SYMBOL2665_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2667:4: SQLEXCEPTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SQLEXCEPTION_SYMBOL2666 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLEXCEPTION_SYMBOL, &FOLLOW_SQLEXCEPTION_SYMBOL_in_handler_condition14039);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulehandler_conditionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SQLEXCEPTION_SYMBOL2666_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLEXCEPTION_SYMBOL2666));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SQLEXCEPTION_SYMBOL2666_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:2671: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_SYMBOL2667;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2672;
    pANTLR3_COMMON_TOKEN    CASE_SYMBOL2673;
    MySQLParser_expression_return expression2668;
    #undef	RETURN_TYPE_expression2668
    #define	RETURN_TYPE_expression2668 MySQLParser_expression_return

    MySQLParser_when_expression_return when_expression2669;
    #undef	RETURN_TYPE_when_expression2669
    #define	RETURN_TYPE_when_expression2669 MySQLParser_when_expression_return

    MySQLParser_then_statement_return then_statement2670;
    #undef	RETURN_TYPE_then_statement2670
    #define	RETURN_TYPE_then_statement2670 MySQLParser_then_statement_return

    MySQLParser_else_statement_return else_statement2671;
    #undef	RETURN_TYPE_else_statement2671
    #define	RETURN_TYPE_else_statement2671 MySQLParser_else_statement_return

    pANTLR3_BASE_TREE CASE_SYMBOL2667_tree;
    pANTLR3_BASE_TREE END_SYMBOL2672_tree;
    pANTLR3_BASE_TREE CASE_SYMBOL2673_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CASE_SYMBOL2667       = NULL;
    END_SYMBOL2672       = NULL;
    CASE_SYMBOL2673       = NULL;
    expression2668.tree = NULL;

    when_expression2669.tree = NULL;

    then_statement2670.tree = NULL;

    else_statement2671.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CASE_SYMBOL2667_tree   = NULL;
    END_SYMBOL2672_tree   = NULL;
    CASE_SYMBOL2673_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2671:15: ( CASE_SYMBOL ^ ( expression )? ( when_expression then_statement )+ ( else_statement )? END_SYMBOL CASE_SYMBOL )
        // MySQL.g:2672:2: CASE_SYMBOL ^ ( expression )? ( when_expression then_statement )+ ( else_statement )? END_SYMBOL CASE_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CASE_SYMBOL2667 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_statement14049);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2667_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2667))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, CASE_SYMBOL2667_tree, root_0));
            }

            // MySQL.g:2672:15: ( expression )?
            {
                int alt741=2;
                {
                    int LA741_0 = LA(1);
                    if ( (((LA741_0 >= ACCOUNT_SYMBOL) && (LA741_0 <= YEAR_SYMBOL)) || ((LA741_0 >= AT_AT_SIGN_SYMBOL) && (LA741_0 <= AT_TEXT_SUFFIX)) || LA741_0 == BACK_TICK_QUOTED_ID || ((LA741_0 >= BINARY_SYMBOL) && (LA741_0 <= BIN_NUMBER)) || LA741_0 == BITWISE_NOT_OPERATOR || ((LA741_0 >= BIT_AND_SYMBOL) && (LA741_0 <= BIT_XOR_SYMBOL)) || ((LA741_0 >= CASE_SYMBOL) && (LA741_0 <= CAST_SYMBOL)) || LA741_0 == CHAR_SYMBOL || ((LA741_0 >= CONVERT_SYMBOL) && (LA741_0 <= COUNT_SYMBOL)) || LA741_0 == CURDATE_SYMBOL || LA741_0 == CURRENT_USER_SYMBOL || LA741_0 == CURTIME_SYMBOL || LA741_0 == DATABASE_SYMBOL || LA741_0 == DATE_ADD_SYMBOL || LA741_0 == DATE_SUB_SYMBOL || LA741_0 == DECIMAL_NUMBER || LA741_0 == DOT_SYMBOL || LA741_0 == DOUBLE_QUOTED_TEXT || LA741_0 == EXISTS_SYMBOL || ((LA741_0 >= EXTRACT_SYMBOL) && (LA741_0 <= FALSE_SYMBOL)) || LA741_0 == FLOAT_NUMBER || LA741_0 == GROUP_CONCAT_SYMBOL || LA741_0 == HEX_NUMBER || ((LA741_0 >= IDENTIFIER) && (LA741_0 <= IF_SYMBOL)) || LA741_0 == INSERT_SYMBOL || LA741_0 == INTERVAL_SYMBOL || LA741_0 == INT_NUMBER || LA741_0 == LEFT_SYMBOL || LA741_0 == LOGICAL_NOT_OPERATOR || LA741_0 == LONG_NUMBER || LA741_0 == MATCH_SYMBOL || LA741_0 == MAX_SYMBOL || LA741_0 == MINUS_OPERATOR || LA741_0 == MIN_SYMBOL || LA741_0 == MOD_SYMBOL || LA741_0 == NCHAR_TEXT || LA741_0 == NOT2_SYMBOL || ((LA741_0 >= NOT_SYMBOL) && (LA741_0 <= NOW_SYMBOL)) || LA741_0 == NULL2_SYMBOL || LA741_0 == NULL_SYMBOL || ((LA741_0 >= OPEN_CURLY_SYMBOL) && (LA741_0 <= OPEN_PAR_SYMBOL)) || LA741_0 == PARAM_MARKER || ((LA741_0 >= PLUS_OPERATOR) && (LA741_0 <= POSITION_SYMBOL)) || ((LA741_0 >= REPEAT_SYMBOL) && (LA741_0 <= REPLACE_SYMBOL)) || LA741_0 == RIGHT_SYMBOL || LA741_0 == SINGLE_QUOTED_TEXT || LA741_0 == STDDEV_SAMP_SYMBOL || LA741_0 == STD_SYMBOL || LA741_0 == SUBSTRING_SYMBOL || ((LA741_0 >= SUM_SYMBOL) && (LA741_0 <= SYSDATE_SYMBOL)) || ((LA741_0 >= TRIM_SYMBOL) && (LA741_0 <= TRUE_SYMBOL)) || LA741_0 == ULONGLONG_NUMBER || LA741_0 == UNDERSCORE_CHARSET || ((LA741_0 >= UTC_DATE_SYMBOL) && (LA741_0 <= UTC_TIME_SYMBOL)) || LA741_0 == VALUES_SYMBOL || LA741_0 == VARIANCE_SYMBOL || LA741_0 == VAR_SAMP_SYMBOL))
                    {
                        alt741=1;
                    }
                }
                switch (alt741)
                {
            	case 1:
            	    // MySQL.g:2672:15: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_case_statement14052);
            	        expression2668=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2668.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2672:27: ( when_expression then_statement )+
            {
                int cnt742=0;

                for (;;)
                {
                    int alt742=2;
            	switch ( LA(1) )
            	{
            	case WHEN_SYMBOL:
            		{
            			alt742=1;
            		}
            	    break;

            	}

            	switch (alt742)
            	{
            	    case 1:
            	        // MySQL.g:2672:28: when_expression then_statement
            	        {
            	            FOLLOWPUSH(FOLLOW_when_expression_in_case_statement14056);
            	            when_expression2669=when_expression(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_statementEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, when_expression2669.tree);

            	            FOLLOWPUSH(FOLLOW_then_statement_in_case_statement14058);
            	            then_statement2670=then_statement(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulecase_statementEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_statement2670.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt742 >= 1 )
            		{
            		    goto loop742;
            		}
            		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;
            	}
            	cnt742++;
                }
                loop742: ;	/* Jump to here if this rule does not match */
            }

            // MySQL.g:2672:61: ( else_statement )?
            {
                int alt743=2;
                switch ( LA(1) )
                {
                    case ELSE_SYMBOL:
                    	{
                    		alt743=1;
                    	}
                        break;
                }

                switch (alt743)
                {
            	case 1:
            	    // MySQL.g:2672:61: else_statement
            	    {
            	        FOLLOWPUSH(FOLLOW_else_statement_in_case_statement14062);
            	        else_statement2671=else_statement(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecase_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, else_statement2671.tree);

            	    }
            	    break;

                }
            }

            END_SYMBOL2672 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_case_statement14065);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2672_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2672));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2672_tree);
            }

            CASE_SYMBOL2673 = (pANTLR3_COMMON_TOKEN) MATCHT(CASE_SYMBOL, &FOLLOW_CASE_SYMBOL_in_case_statement14067);
            if  (HASEXCEPTION())
            {
                goto rulecase_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CASE_SYMBOL2673_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASE_SYMBOL2673));
            ADAPTOR->addChild(ADAPTOR, root_0, CASE_SYMBOL2673_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:2675: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_SYMBOL2674;
    MySQLParser_compound_statement_list_return compound_statement_list2675;
    #undef	RETURN_TYPE_compound_statement_list2675
    #define	RETURN_TYPE_compound_statement_list2675 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE THEN_SYMBOL2674_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    THEN_SYMBOL2674       = NULL;
    compound_statement_list2675.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    THEN_SYMBOL2674_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2675:15: ( THEN_SYMBOL ^ compound_statement_list )
        // MySQL.g:2676:2: THEN_SYMBOL ^ compound_statement_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            THEN_SYMBOL2674 = (pANTLR3_COMMON_TOKEN) MATCHT(THEN_SYMBOL, &FOLLOW_THEN_SYMBOL_in_then_statement14076);
            if  (HASEXCEPTION())
            {
                goto rulethen_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            THEN_SYMBOL2674_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THEN_SYMBOL2674))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, THEN_SYMBOL2674_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_then_statement14079);
            compound_statement_list2675=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulethen_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2675.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:2679: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_SYMBOL2676;
    MySQLParser_compound_statement_list_return compound_statement_list2677;
    #undef	RETURN_TYPE_compound_statement_list2677
    #define	RETURN_TYPE_compound_statement_list2677 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE ELSE_SYMBOL2676_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSE_SYMBOL2676       = NULL;
    compound_statement_list2677.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSE_SYMBOL2676_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2679:15: ( ELSE_SYMBOL ^ compound_statement_list )
        // MySQL.g:2680:2: ELSE_SYMBOL ^ compound_statement_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ELSE_SYMBOL2676 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_else_statement14088);
            if  (HASEXCEPTION())
            {
                goto ruleelse_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ELSE_SYMBOL2676_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2676))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, ELSE_SYMBOL2676_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_compound_statement_list_in_else_statement14091);
            compound_statement_list2677=compound_statement_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleelse_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2677.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:2683: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_SYMBOL2678;
    pANTLR3_COMMON_TOKEN    END_SYMBOL2680;
    pANTLR3_COMMON_TOKEN    IF_SYMBOL2681;
    MySQLParser_if_body_return if_body2679;
    #undef	RETURN_TYPE_if_body2679
    #define	RETURN_TYPE_if_body2679 MySQLParser_if_body_return

    pANTLR3_BASE_TREE IF_SYMBOL2678_tree;
    pANTLR3_BASE_TREE END_SYMBOL2680_tree;
    pANTLR3_BASE_TREE IF_SYMBOL2681_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IF_SYMBOL2678       = NULL;
    END_SYMBOL2680       = NULL;
    IF_SYMBOL2681       = NULL;
    if_body2679.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IF_SYMBOL2678_tree   = NULL;
    END_SYMBOL2680_tree   = NULL;
    IF_SYMBOL2681_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2683:13: ( IF_SYMBOL ^ if_body END_SYMBOL IF_SYMBOL )
        // MySQL.g:2684:2: IF_SYMBOL ^ if_body END_SYMBOL IF_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            IF_SYMBOL2678 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_statement14100);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL2678_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2678))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, IF_SYMBOL2678_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_if_body_in_if_statement14103);
            if_body2679=if_body(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_body2679.tree);

            END_SYMBOL2680 = (pANTLR3_COMMON_TOKEN) MATCHT(END_SYMBOL, &FOLLOW_END_SYMBOL_in_if_statement14105);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            END_SYMBOL2680_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, END_SYMBOL2680));
            ADAPTOR->addChild(ADAPTOR, root_0, END_SYMBOL2680_tree);
            }

            IF_SYMBOL2681 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_statement14107);
            if  (HASEXCEPTION())
            {
                goto ruleif_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL2681_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL2681));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL2681_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:2687: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_SYMBOL2684;
    pANTLR3_COMMON_TOKEN    ELSE_SYMBOL2686;
    MySQLParser_expression_return expression2682;
    #undef	RETURN_TYPE_expression2682
    #define	RETURN_TYPE_expression2682 MySQLParser_expression_return

    MySQLParser_then_statement_return then_statement2683;
    #undef	RETURN_TYPE_then_statement2683
    #define	RETURN_TYPE_then_statement2683 MySQLParser_then_statement_return

    MySQLParser_if_body_return if_body2685;
    #undef	RETURN_TYPE_if_body2685
    #define	RETURN_TYPE_if_body2685 MySQLParser_if_body_return

    MySQLParser_compound_statement_list_return compound_statement_list2687;
    #undef	RETURN_TYPE_compound_statement_list2687
    #define	RETURN_TYPE_compound_statement_list2687 MySQLParser_compound_statement_list_return

    pANTLR3_BASE_TREE ELSEIF_SYMBOL2684_tree;
    pANTLR3_BASE_TREE ELSE_SYMBOL2686_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ELSEIF_SYMBOL2684       = NULL;
    ELSE_SYMBOL2686       = NULL;
    expression2682.tree = NULL;

    then_statement2683.tree = NULL;

    if_body2685.tree = NULL;

    compound_statement_list2687.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ELSEIF_SYMBOL2684_tree   = NULL;
    ELSE_SYMBOL2686_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2687:8: ( expression then_statement ( ELSEIF_SYMBOL if_body | ELSE_SYMBOL compound_statement_list )? )
        // MySQL.g:2688: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_body14116);
            expression2682=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2682.tree);

            FOLLOWPUSH(FOLLOW_then_statement_in_if_body14118);
            then_statement2683=then_statement(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_bodyEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, then_statement2683.tree);

            // MySQL.g:2688:28: ( ELSEIF_SYMBOL if_body | ELSE_SYMBOL compound_statement_list )?
            {
                int alt744=3;
                switch ( LA(1) )
                {
                    case ELSEIF_SYMBOL:
                    	{
                    		alt744=1;
                    	}
                        break;
                    case ELSE_SYMBOL:
                    	{
                    		alt744=2;
                    	}
                        break;
                }

                switch (alt744)
                {
            	case 1:
            	    // MySQL.g:2688:29: ELSEIF_SYMBOL if_body
            	    {
            	        ELSEIF_SYMBOL2684 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSEIF_SYMBOL, &FOLLOW_ELSEIF_SYMBOL_in_if_body14121);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ELSEIF_SYMBOL2684_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSEIF_SYMBOL2684));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ELSEIF_SYMBOL2684_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_if_body_in_if_body14123);
            	        if_body2685=if_body(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, if_body2685.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2688:53: ELSE_SYMBOL compound_statement_list
            	    {
            	        ELSE_SYMBOL2686 = (pANTLR3_COMMON_TOKEN) MATCHT(ELSE_SYMBOL, &FOLLOW_ELSE_SYMBOL_in_if_body14127);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ELSE_SYMBOL2686_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ELSE_SYMBOL2686));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ELSE_SYMBOL2686_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_compound_statement_list_in_if_body14129);
            	        compound_statement_list2687=compound_statement_list(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleif_bodyEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, compound_statement_list2687.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:2691: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_SYMBOL2688;
    MySQLParser_label_identifier_return label_identifier2689;
    #undef	RETURN_TYPE_label_identifier2689
    #define	RETURN_TYPE_label_identifier2689 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE ITERATE_SYMBOL2688_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ITERATE_SYMBOL2688       = NULL;
    label_identifier2689.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ITERATE_SYMBOL2688_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2691:18: ( ITERATE_SYMBOL label_identifier )
        // MySQL.g:2692:2: ITERATE_SYMBOL label_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            ITERATE_SYMBOL2688 = (pANTLR3_COMMON_TOKEN) MATCHT(ITERATE_SYMBOL, &FOLLOW_ITERATE_SYMBOL_in_iterate_statement14140);
            if  (HASEXCEPTION())
            {
                goto ruleiterate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ITERATE_SYMBOL2688_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ITERATE_SYMBOL2688));
            ADAPTOR->addChild(ADAPTOR, root_0, ITERATE_SYMBOL2688_tree);
            }

            FOLLOWPUSH(FOLLOW_label_identifier_in_iterate_statement14142);
            label_identifier2689=label_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleiterate_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2689.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:2695: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_SYMBOL2690;
    MySQLParser_label_identifier_return label_identifier2691;
    #undef	RETURN_TYPE_label_identifier2691
    #define	RETURN_TYPE_label_identifier2691 MySQLParser_label_identifier_return

    pANTLR3_BASE_TREE LEAVE_SYMBOL2690_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LEAVE_SYMBOL2690       = NULL;
    label_identifier2691.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LEAVE_SYMBOL2690_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2695:16: ( LEAVE_SYMBOL label_identifier )
        // MySQL.g:2696:2: LEAVE_SYMBOL label_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LEAVE_SYMBOL2690 = (pANTLR3_COMMON_TOKEN) MATCHT(LEAVE_SYMBOL, &FOLLOW_LEAVE_SYMBOL_in_leave_statement14151);
            if  (HASEXCEPTION())
            {
                goto ruleleave_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LEAVE_SYMBOL2690_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LEAVE_SYMBOL2690));
            ADAPTOR->addChild(ADAPTOR, root_0, LEAVE_SYMBOL2690_tree);
            }

            FOLLOWPUSH(FOLLOW_label_identifier_in_leave_statement14153);
            label_identifier2691=label_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleleave_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, label_identifier2691.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:2699: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_SYMBOL2692;
    MySQLParser_expression_return expression2693;
    #undef	RETURN_TYPE_expression2693
    #define	RETURN_TYPE_expression2693 MySQLParser_expression_return

    pANTLR3_BASE_TREE RETURN_SYMBOL2692_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RETURN_SYMBOL2692       = NULL;
    expression2693.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RETURN_SYMBOL2692_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2699:17: ( RETURN_SYMBOL expression )
        // MySQL.g:2700:2: RETURN_SYMBOL expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            RETURN_SYMBOL2692 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURN_SYMBOL, &FOLLOW_RETURN_SYMBOL_in_return_statement14162);
            if  (HASEXCEPTION())
            {
                goto rulereturn_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RETURN_SYMBOL2692_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURN_SYMBOL2692));
            ADAPTOR->addChild(ADAPTOR, root_0, RETURN_SYMBOL2692_tree);
            }

            FOLLOWPUSH(FOLLOW_expression_in_return_statement14164);
            expression2693=expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereturn_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2693.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:2703:1: get_diagnostics : GET_SYMBOL ( CURRENT_SYMBOL |{...}? STACKED_SYMBOL )? DIAGNOSTICS_SYMBOL ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL signal_allowed_expression 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_SYMBOL2694;
    pANTLR3_COMMON_TOKEN    CURRENT_SYMBOL2695;
    pANTLR3_COMMON_TOKEN    STACKED_SYMBOL2696;
    pANTLR3_COMMON_TOKEN    DIAGNOSTICS_SYMBOL2697;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2699;
    pANTLR3_COMMON_TOKEN    CONDITION_SYMBOL2701;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2704;
    MySQLParser_statement_information_item_return statement_information_item2698;
    #undef	RETURN_TYPE_statement_information_item2698
    #define	RETURN_TYPE_statement_information_item2698 MySQLParser_statement_information_item_return

    MySQLParser_statement_information_item_return statement_information_item2700;
    #undef	RETURN_TYPE_statement_information_item2700
    #define	RETURN_TYPE_statement_information_item2700 MySQLParser_statement_information_item_return

    MySQLParser_signal_allowed_expression_return signal_allowed_expression2702;
    #undef	RETURN_TYPE_signal_allowed_expression2702
    #define	RETURN_TYPE_signal_allowed_expression2702 MySQLParser_signal_allowed_expression_return

    MySQLParser_condition_information_item_return condition_information_item2703;
    #undef	RETURN_TYPE_condition_information_item2703
    #define	RETURN_TYPE_condition_information_item2703 MySQLParser_condition_information_item_return

    MySQLParser_condition_information_item_return condition_information_item2705;
    #undef	RETURN_TYPE_condition_information_item2705
    #define	RETURN_TYPE_condition_information_item2705 MySQLParser_condition_information_item_return

    pANTLR3_BASE_TREE GET_SYMBOL2694_tree;
    pANTLR3_BASE_TREE CURRENT_SYMBOL2695_tree;
    pANTLR3_BASE_TREE STACKED_SYMBOL2696_tree;
    pANTLR3_BASE_TREE DIAGNOSTICS_SYMBOL2697_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2699_tree;
    pANTLR3_BASE_TREE CONDITION_SYMBOL2701_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2704_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    GET_SYMBOL2694       = NULL;
    CURRENT_SYMBOL2695       = NULL;
    STACKED_SYMBOL2696       = NULL;
    DIAGNOSTICS_SYMBOL2697       = NULL;
    COMMA_SYMBOL2699       = NULL;
    CONDITION_SYMBOL2701       = NULL;
    COMMA_SYMBOL2704       = NULL;
    statement_information_item2698.tree = NULL;

    statement_information_item2700.tree = NULL;

    signal_allowed_expression2702.tree = NULL;

    condition_information_item2703.tree = NULL;

    condition_information_item2705.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    GET_SYMBOL2694_tree   = NULL;
    CURRENT_SYMBOL2695_tree   = NULL;
    STACKED_SYMBOL2696_tree   = NULL;
    DIAGNOSTICS_SYMBOL2697_tree   = NULL;
    COMMA_SYMBOL2699_tree   = NULL;
    CONDITION_SYMBOL2701_tree   = NULL;
    COMMA_SYMBOL2704_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2703:16: ( GET_SYMBOL ( CURRENT_SYMBOL |{...}? STACKED_SYMBOL )? DIAGNOSTICS_SYMBOL ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL signal_allowed_expression condition_information_item ( COMMA_SYMBOL condition_information_item )* ) )
        // MySQL.g:2704:2: GET_SYMBOL ( CURRENT_SYMBOL |{...}? STACKED_SYMBOL )? DIAGNOSTICS_SYMBOL ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL signal_allowed_expression condition_information_item ( COMMA_SYMBOL condition_information_item )* )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            GET_SYMBOL2694 = (pANTLR3_COMMON_TOKEN) MATCHT(GET_SYMBOL, &FOLLOW_GET_SYMBOL_in_get_diagnostics14173);
            if  (HASEXCEPTION())
            {
                goto ruleget_diagnosticsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            GET_SYMBOL2694_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GET_SYMBOL2694));
            ADAPTOR->addChild(ADAPTOR, root_0, GET_SYMBOL2694_tree);
            }

            // MySQL.g:2705:2: ( CURRENT_SYMBOL |{...}? STACKED_SYMBOL )?
            {
                int alt745=3;
                switch ( LA(1) )
                {
                    case CURRENT_SYMBOL:
                    	{
                    		alt745=1;
                    	}
                        break;
                    case STACKED_SYMBOL:
                    	{
                    		alt745=2;
                    	}
                        break;
                }

                switch (alt745)
                {
            	case 1:
            	    // MySQL.g:2706:3: CURRENT_SYMBOL
            	    {
            	        CURRENT_SYMBOL2695 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_SYMBOL, &FOLLOW_CURRENT_SYMBOL_in_get_diagnostics14180);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CURRENT_SYMBOL2695_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_SYMBOL2695));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_SYMBOL2695_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2707:5: {...}? STACKED_SYMBOL
            	    {
            	        if ( !((SERVER_VERSION >= 50700)) )
            	        {
            	            if (BACKTRACKING>0)
            	            {
            	                FAILEDFLAG = ANTLR3_TRUE;
            	                return retval;
            	            }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50700";
            	                EXCEPTION->ruleName	 = (void *)"get_diagnostics";


            	        }

            	        STACKED_SYMBOL2696 = (pANTLR3_COMMON_TOKEN) MATCHT(STACKED_SYMBOL, &FOLLOW_STACKED_SYMBOL_in_get_diagnostics14188);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        STACKED_SYMBOL2696_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STACKED_SYMBOL2696));
            	        ADAPTOR->addChild(ADAPTOR, root_0, STACKED_SYMBOL2696_tree);
            	        }

            	    }
            	    break;

                }
            }

            DIAGNOSTICS_SYMBOL2697 = (pANTLR3_COMMON_TOKEN) MATCHT(DIAGNOSTICS_SYMBOL, &FOLLOW_DIAGNOSTICS_SYMBOL_in_get_diagnostics14194);
            if  (HASEXCEPTION())
            {
                goto ruleget_diagnosticsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DIAGNOSTICS_SYMBOL2697_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIAGNOSTICS_SYMBOL2697));
            ADAPTOR->addChild(ADAPTOR, root_0, DIAGNOSTICS_SYMBOL2697_tree);
            }

            // MySQL.g:2709:2: ( statement_information_item ( COMMA_SYMBOL statement_information_item )* | CONDITION_SYMBOL signal_allowed_expression condition_information_item ( COMMA_SYMBOL condition_information_item )* )
            {
                int alt748=2;
                {
                    int LA748_0 = LA(1);
                    if ( (((LA748_0 >= ACCOUNT_SYMBOL) && (LA748_0 <= YEAR_SYMBOL)) || ((LA748_0 >= AT_AT_SIGN_SYMBOL) && (LA748_0 <= AT_TEXT_SUFFIX)) || LA748_0 == BACK_TICK_QUOTED_ID || LA748_0 == DOUBLE_QUOTED_TEXT || LA748_0 == IDENTIFIER))
                    {
                        alt748=1;
                    }
                    else if ( (LA748_0 == CONDITION_SYMBOL))
                    {
                        alt748=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 748;
                        EXCEPTION->state        = 0;


                        goto ruleget_diagnosticsEx;

                    }
                }
                switch (alt748)
                {
            	case 1:
            	    // MySQL.g:2710:3: statement_information_item ( COMMA_SYMBOL statement_information_item )*
            	    {
            	        FOLLOWPUSH(FOLLOW_statement_information_item_in_get_diagnostics14201);
            	        statement_information_item2698=statement_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement_information_item2698.tree);

            	        // MySQL.g:2710:30: ( COMMA_SYMBOL statement_information_item )*

            	        for (;;)
            	        {
            	            int alt746=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt746=1;
            	            	}
            	                break;

            	            }

            	            switch (alt746)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2710:31: COMMA_SYMBOL statement_information_item
            	        	    {
            	        	        COMMA_SYMBOL2699 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_get_diagnostics14204);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2699_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2699));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2699_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_statement_information_item_in_get_diagnostics14206);
            	        	        statement_information_item2700=statement_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, statement_information_item2700.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop746;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop746: ; /* Jump out to here if this rule does not match */


            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2711:5: CONDITION_SYMBOL signal_allowed_expression condition_information_item ( COMMA_SYMBOL condition_information_item )*
            	    {
            	        CONDITION_SYMBOL2701 = (pANTLR3_COMMON_TOKEN) MATCHT(CONDITION_SYMBOL, &FOLLOW_CONDITION_SYMBOL_in_get_diagnostics14214);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CONDITION_SYMBOL2701_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONDITION_SYMBOL2701));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CONDITION_SYMBOL2701_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_signal_allowed_expression_in_get_diagnostics14216);
            	        signal_allowed_expression2702=signal_allowed_expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_allowed_expression2702.tree);

            	        FOLLOWPUSH(FOLLOW_condition_information_item_in_get_diagnostics14218);
            	        condition_information_item2703=condition_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleget_diagnosticsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_information_item2703.tree);

            	        // MySQL.g:2711:75: ( COMMA_SYMBOL condition_information_item )*

            	        for (;;)
            	        {
            	            int alt747=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt747=1;
            	            	}
            	                break;

            	            }

            	            switch (alt747)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2711:76: COMMA_SYMBOL condition_information_item
            	        	    {
            	        	        COMMA_SYMBOL2704 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_get_diagnostics14221);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2704_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2704));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2704_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_condition_information_item_in_get_diagnostics14223);
            	        	        condition_information_item2705=condition_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleget_diagnosticsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, condition_information_item2705.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop747;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop747: ; /* 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 signal_allowed_expression
 * MySQL.g:2716:1: signal_allowed_expression : ( literal | variable | qualified_identifier );
 */
static MySQLParser_signal_allowed_expression_return
signal_allowed_expression(pMySQLParser ctx)
{
    MySQLParser_signal_allowed_expression_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_literal_return literal2706;
    #undef	RETURN_TYPE_literal2706
    #define	RETURN_TYPE_literal2706 MySQLParser_literal_return

    MySQLParser_variable_return variable2707;
    #undef	RETURN_TYPE_variable2707
    #define	RETURN_TYPE_variable2707 MySQLParser_variable_return

    MySQLParser_qualified_identifier_return qualified_identifier2708;
    #undef	RETURN_TYPE_qualified_identifier2708
    #define	RETURN_TYPE_qualified_identifier2708 MySQLParser_qualified_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    literal2706.tree = NULL;

    variable2707.tree = NULL;

    qualified_identifier2708.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2716:26: ( literal | variable | qualified_identifier )

            ANTLR3_UINT32 alt749;

            alt749=3;

            {
                int LA749_0 = LA(1);
                if ( (LA749_0 == BIN_NUMBER || LA749_0 == DECIMAL_NUMBER || LA749_0 == FALSE_SYMBOL || LA749_0 == FLOAT_NUMBER || LA749_0 == HEX_NUMBER || LA749_0 == INT_NUMBER || LA749_0 == LONG_NUMBER || LA749_0 == NCHAR_TEXT || LA749_0 == NULL2_SYMBOL || LA749_0 == NULL_SYMBOL || LA749_0 == SINGLE_QUOTED_TEXT || LA749_0 == TRUE_SYMBOL || LA749_0 == ULONGLONG_NUMBER || LA749_0 == UNDERSCORE_CHARSET))
                {
                    alt749=1;
                }
                else if ( (LA749_0 == DOUBLE_QUOTED_TEXT))
                {
                    {
                        int LA749_4 = LA(2);
                        if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                        {
                            alt749=1;
                        }
                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
                        {
                            alt749=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 749;
                            EXCEPTION->state        = 4;


                            goto rulesignal_allowed_expressionEx;

                        }
                    }
                }
                else if ( (LA749_0 == DATE_SYMBOL))
                {
                    {
                        int LA749_6 = LA(2);
                        if ( (LA749_6 == SINGLE_QUOTED_TEXT))
                        {
                            alt749=1;
                        }
                        else if ( (LA749_6 == EOF || ((LA749_6 >= ACCOUNT_SYMBOL) && (LA749_6 <= YEAR_SYMBOL)) || ((LA749_6 >= AT_AT_SIGN_SYMBOL) && (LA749_6 <= AT_TEXT_SUFFIX)) || LA749_6 == BACK_TICK_QUOTED_ID || LA749_6 == COMMA_SYMBOL || LA749_6 == DOT_SYMBOL || LA749_6 == DOUBLE_QUOTED_TEXT || LA749_6 == IDENTIFIER || LA749_6 == SEMICOLON_SYMBOL))
                        {
                            alt749=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 749;
                            EXCEPTION->state        = 6;


                            goto rulesignal_allowed_expressionEx;

                        }
                    }
                }
                else if ( (LA749_0 == TIME_SYMBOL))
                {
                    {
                        int LA749_7 = LA(2);
                        if ( (LA749_7 == SINGLE_QUOTED_TEXT))
                        {
                            alt749=1;
                        }
                        else if ( (LA749_7 == EOF || ((LA749_7 >= ACCOUNT_SYMBOL) && (LA749_7 <= YEAR_SYMBOL)) || ((LA749_7 >= AT_AT_SIGN_SYMBOL) && (LA749_7 <= AT_TEXT_SUFFIX)) || LA749_7 == BACK_TICK_QUOTED_ID || LA749_7 == COMMA_SYMBOL || LA749_7 == DOT_SYMBOL || LA749_7 == DOUBLE_QUOTED_TEXT || LA749_7 == IDENTIFIER || LA749_7 == SEMICOLON_SYMBOL))
                        {
                            alt749=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 749;
                            EXCEPTION->state        = 7;


                            goto rulesignal_allowed_expressionEx;

                        }
                    }
                }
                else if ( (LA749_0 == TIMESTAMP_SYMBOL))
                {
                    {
                        int LA749_8 = LA(2);
                        if ( (LA749_8 == SINGLE_QUOTED_TEXT))
                        {
                            alt749=1;
                        }
                        else if ( (LA749_8 == EOF || ((LA749_8 >= ACCOUNT_SYMBOL) && (LA749_8 <= YEAR_SYMBOL)) || ((LA749_8 >= AT_AT_SIGN_SYMBOL) && (LA749_8 <= AT_TEXT_SUFFIX)) || LA749_8 == BACK_TICK_QUOTED_ID || LA749_8 == COMMA_SYMBOL || LA749_8 == DOT_SYMBOL || LA749_8 == DOUBLE_QUOTED_TEXT || LA749_8 == IDENTIFIER || LA749_8 == SEMICOLON_SYMBOL))
                        {
                            alt749=3;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 749;
                            EXCEPTION->state        = 8;


                            goto rulesignal_allowed_expressionEx;

                        }
                    }
                }
                else if ( (((LA749_0 >= AT_AT_SIGN_SYMBOL) && (LA749_0 <= AT_TEXT_SUFFIX))))
                {
                    alt749=2;
                }
                else if ( (((LA749_0 >= ACCOUNT_SYMBOL) && (LA749_0 <= DATETIME_SYMBOL)) || ((LA749_0 >= DAY_SYMBOL) && (LA749_0 <= TRIGGERS_SYMBOL)) || ((LA749_0 >= TIMESTAMP_ADD_SYMBOL) && (LA749_0 <= TIMESTAMP_DIFF_SYMBOL)) || ((LA749_0 >= TYPES_SYMBOL) && (LA749_0 <= YEAR_SYMBOL)) || LA749_0 == BACK_TICK_QUOTED_ID || LA749_0 == IDENTIFIER))
                {
                    alt749=3;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 749;
                    EXCEPTION->state        = 0;


                    goto rulesignal_allowed_expressionEx;

                }
            }
            switch (alt749)
            {
        	case 1:
        	    // MySQL.g:2717:2: literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_literal_in_signal_allowed_expression14238);
        	        literal2706=literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesignal_allowed_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal2706.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2718:4: variable
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_variable_in_signal_allowed_expression14243);
        	        variable2707=variable(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesignal_allowed_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2707.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2719:4: qualified_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_signal_allowed_expression14248);
        	        qualified_identifier2708=qualified_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesignal_allowed_expressionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier2708.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulesignal_allowed_expressionEx; /* Prevent compiler warnings */
    rulesignal_allowed_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 signal_allowed_expression */

/**
 * $ANTLR start statement_information_item
 * MySQL.g:2722: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_OPERATOR2711;
    pANTLR3_COMMON_TOKEN    set2712;
    MySQLParser_variable_return variable2709;
    #undef	RETURN_TYPE_variable2709
    #define	RETURN_TYPE_variable2709 MySQLParser_variable_return

    MySQLParser_identifier_return identifier2710;
    #undef	RETURN_TYPE_identifier2710
    #define	RETURN_TYPE_identifier2710 MySQLParser_identifier_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2711_tree;
    pANTLR3_BASE_TREE set2712_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2711       = NULL;
    set2712       = NULL;
    variable2709.tree = NULL;

    identifier2710.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2711_tree   = NULL;
    set2712_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2722:27: ( ( variable | identifier ) EQUAL_OPERATOR ( NUMBER_SYMBOL | ROW_COUNT_SYMBOL ) )
        // MySQL.g:2723:2: ( variable | identifier ) EQUAL_OPERATOR ( NUMBER_SYMBOL | ROW_COUNT_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2723:2: ( variable | identifier )
            {
                int alt750=2;
                {
                    int LA750_0 = LA(1);
                    if ( (((LA750_0 >= AT_AT_SIGN_SYMBOL) && (LA750_0 <= AT_TEXT_SUFFIX))))
                    {
                        alt750=1;
                    }
                    else if ( (((LA750_0 >= ACCOUNT_SYMBOL) && (LA750_0 <= YEAR_SYMBOL)) || LA750_0 == BACK_TICK_QUOTED_ID || LA750_0 == DOUBLE_QUOTED_TEXT || LA750_0 == IDENTIFIER))
                    {
                        alt750=2;
                    }
                    else
                    {
                        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 rulestatement_information_itemEx;

                    }
                }
                switch (alt750)
                {
            	case 1:
            	    // MySQL.g:2723:3: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_statement_information_item14258);
            	        variable2709=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestatement_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2709.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2723:14: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_statement_information_item14262);
            	        identifier2710=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestatement_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2710.tree);

            	    }
            	    break;

                }
            }

            EQUAL_OPERATOR2711 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_statement_information_item14265);
            if  (HASEXCEPTION())
            {
                goto rulestatement_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2711_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2711));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2711_tree);
            }

            set2712=(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, 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 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:2726:1: condition_information_item : ( variable | identifier ) EQUAL_OPERATOR ( signal_information_item_name | RETURNED_SQLSTATE_SYMBOL ) ;
 */
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_OPERATOR2715;
    pANTLR3_COMMON_TOKEN    RETURNED_SQLSTATE_SYMBOL2717;
    MySQLParser_variable_return variable2713;
    #undef	RETURN_TYPE_variable2713
    #define	RETURN_TYPE_variable2713 MySQLParser_variable_return

    MySQLParser_identifier_return identifier2714;
    #undef	RETURN_TYPE_identifier2714
    #define	RETURN_TYPE_identifier2714 MySQLParser_identifier_return

    MySQLParser_signal_information_item_name_return signal_information_item_name2716;
    #undef	RETURN_TYPE_signal_information_item_name2716
    #define	RETURN_TYPE_signal_information_item_name2716 MySQLParser_signal_information_item_name_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2715_tree;
    pANTLR3_BASE_TREE RETURNED_SQLSTATE_SYMBOL2717_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2715       = NULL;
    RETURNED_SQLSTATE_SYMBOL2717       = NULL;
    variable2713.tree = NULL;

    identifier2714.tree = NULL;

    signal_information_item_name2716.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2715_tree   = NULL;
    RETURNED_SQLSTATE_SYMBOL2717_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2726:27: ( ( variable | identifier ) EQUAL_OPERATOR ( signal_information_item_name | RETURNED_SQLSTATE_SYMBOL ) )
        // MySQL.g:2727:2: ( variable | identifier ) EQUAL_OPERATOR ( signal_information_item_name | RETURNED_SQLSTATE_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2727:2: ( variable | identifier )
            {
                int alt751=2;
                {
                    int LA751_0 = LA(1);
                    if ( (((LA751_0 >= AT_AT_SIGN_SYMBOL) && (LA751_0 <= AT_TEXT_SUFFIX))))
                    {
                        alt751=1;
                    }
                    else if ( (((LA751_0 >= ACCOUNT_SYMBOL) && (LA751_0 <= YEAR_SYMBOL)) || LA751_0 == BACK_TICK_QUOTED_ID || LA751_0 == DOUBLE_QUOTED_TEXT || LA751_0 == IDENTIFIER))
                    {
                        alt751=2;
                    }
                    else
                    {
                        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 rulecondition_information_itemEx;

                    }
                }
                switch (alt751)
                {
            	case 1:
            	    // MySQL.g:2727:3: variable
            	    {
            	        FOLLOWPUSH(FOLLOW_variable_in_condition_information_item14283);
            	        variable2713=variable(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, variable2713.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2727:14: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_condition_information_item14287);
            	        identifier2714=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2714.tree);

            	    }
            	    break;

                }
            }

            EQUAL_OPERATOR2715 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_condition_information_item14290);
            if  (HASEXCEPTION())
            {
                goto rulecondition_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2715_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2715));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2715_tree);
            }

            // MySQL.g:2727:41: ( signal_information_item_name | RETURNED_SQLSTATE_SYMBOL )
            {
                int alt752=2;
                switch ( LA(1) )
                {
                case CATALOG_NAME_SYMBOL:
                case CLASS_ORIGIN_SYMBOL:
                case COLUMN_NAME_SYMBOL:
                case CONSTRAINT_CATALOG_SYMBOL:
                case CONSTRAINT_SCHEMA_SYMBOL:
                case CONSTRAINT_NAME_SYMBOL:
                case CURSOR_NAME_SYMBOL:
                case MESSAGE_TEXT_SYMBOL:
                case MYSQL_ERRNO_SYMBOL:
                case SCHEMA_NAME_SYMBOL:
                case SUBCLASS_ORIGIN_SYMBOL:
                case TABLE_NAME_SYMBOL:
                	{
                		alt752=1;
                	}
                    break;
                case RETURNED_SQLSTATE_SYMBOL:
                	{
                		alt752=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 752;
                    EXCEPTION->state        = 0;


                    goto rulecondition_information_itemEx;

                }

                switch (alt752)
                {
            	case 1:
            	    // MySQL.g:2727:42: signal_information_item_name
            	    {
            	        FOLLOWPUSH(FOLLOW_signal_information_item_name_in_condition_information_item14293);
            	        signal_information_item_name2716=signal_information_item_name(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item_name2716.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2727:73: RETURNED_SQLSTATE_SYMBOL
            	    {
            	        RETURNED_SQLSTATE_SYMBOL2717 = (pANTLR3_COMMON_TOKEN) MATCHT(RETURNED_SQLSTATE_SYMBOL, &FOLLOW_RETURNED_SQLSTATE_SYMBOL_in_condition_information_item14297);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecondition_information_itemEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        RETURNED_SQLSTATE_SYMBOL2717_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RETURNED_SQLSTATE_SYMBOL2717));
            	        ADAPTOR->addChild(ADAPTOR, root_0, RETURNED_SQLSTATE_SYMBOL2717_tree);
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // 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 signal_information_item_name
 * MySQL.g:2730:1: signal_information_item_name : ( CLASS_ORIGIN_SYMBOL | SUBCLASS_ORIGIN_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 | MESSAGE_TEXT_SYMBOL | MYSQL_ERRNO_SYMBOL );
 */
static MySQLParser_signal_information_item_name_return
signal_information_item_name(pMySQLParser ctx)
{
    MySQLParser_signal_information_item_name_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set2718;

    pANTLR3_BASE_TREE set2718_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2718       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2718_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2730:29: ( CLASS_ORIGIN_SYMBOL | SUBCLASS_ORIGIN_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 | MESSAGE_TEXT_SYMBOL | MYSQL_ERRNO_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2718=(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_NAME_SYMBOL)) || LA(1) == CURSOR_NAME_SYMBOL || LA(1) == MESSAGE_TEXT_SYMBOL || LA(1) == MYSQL_ERRNO_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, set2718))
                );
                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 rulesignal_information_item_nameEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulesignal_information_item_nameEx; /* Prevent compiler warnings */
    rulesignal_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 signal_information_item_name */

/**
 * $ANTLR start signal_statement
 * MySQL.g:2745:1: signal_statement : SIGNAL_SYMBOL ( identifier | sqlstate ) ( 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_SYMBOL2719;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2722;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2724;
    MySQLParser_identifier_return identifier2720;
    #undef	RETURN_TYPE_identifier2720
    #define	RETURN_TYPE_identifier2720 MySQLParser_identifier_return

    MySQLParser_sqlstate_return sqlstate2721;
    #undef	RETURN_TYPE_sqlstate2721
    #define	RETURN_TYPE_sqlstate2721 MySQLParser_sqlstate_return

    MySQLParser_signal_information_item_return signal_information_item2723;
    #undef	RETURN_TYPE_signal_information_item2723
    #define	RETURN_TYPE_signal_information_item2723 MySQLParser_signal_information_item_return

    MySQLParser_signal_information_item_return signal_information_item2725;
    #undef	RETURN_TYPE_signal_information_item2725
    #define	RETURN_TYPE_signal_information_item2725 MySQLParser_signal_information_item_return

    pANTLR3_BASE_TREE SIGNAL_SYMBOL2719_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2722_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2724_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SIGNAL_SYMBOL2719       = NULL;
    SET_SYMBOL2722       = NULL;
    COMMA_SYMBOL2724       = NULL;
    identifier2720.tree = NULL;

    sqlstate2721.tree = NULL;

    signal_information_item2723.tree = NULL;

    signal_information_item2725.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SIGNAL_SYMBOL2719_tree   = NULL;
    SET_SYMBOL2722_tree   = NULL;
    COMMA_SYMBOL2724_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2745:17: ( SIGNAL_SYMBOL ( identifier | sqlstate ) ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )? )
        // MySQL.g:2746:2: SIGNAL_SYMBOL ( identifier | sqlstate ) ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SIGNAL_SYMBOL2719 = (pANTLR3_COMMON_TOKEN) MATCHT(SIGNAL_SYMBOL, &FOLLOW_SIGNAL_SYMBOL_in_signal_statement14371);
            if  (HASEXCEPTION())
            {
                goto rulesignal_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SIGNAL_SYMBOL2719_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SIGNAL_SYMBOL2719));
            ADAPTOR->addChild(ADAPTOR, root_0, SIGNAL_SYMBOL2719_tree);
            }

            // MySQL.g:2746:16: ( identifier | sqlstate )
            {
                int alt753=2;
                {
                    int LA753_0 = LA(1);
                    if ( (((LA753_0 >= ACCOUNT_SYMBOL) && (LA753_0 <= YEAR_SYMBOL)) || LA753_0 == BACK_TICK_QUOTED_ID || LA753_0 == DOUBLE_QUOTED_TEXT || LA753_0 == IDENTIFIER))
                    {
                        alt753=1;
                    }
                    else if ( (LA753_0 == SQLSTATE_SYMBOL))
                    {
                        alt753=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 753;
                        EXCEPTION->state        = 0;


                        goto rulesignal_statementEx;

                    }
                }
                switch (alt753)
                {
            	case 1:
            	    // MySQL.g:2746:17: identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_identifier_in_signal_statement14374);
            	        identifier2720=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2720.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2746:30: sqlstate
            	    {
            	        FOLLOWPUSH(FOLLOW_sqlstate_in_signal_statement14378);
            	        sqlstate2721=sqlstate(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, sqlstate2721.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2746:40: ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
            {
                int alt755=2;
                switch ( LA(1) )
                {
                    case SET_SYMBOL:
                    	{
                    		alt755=1;
                    	}
                        break;
                }

                switch (alt755)
                {
            	case 1:
            	    // MySQL.g:2746:41: SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )*
            	    {
            	        SET_SYMBOL2722 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_signal_statement14382);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL2722_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2722));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2722_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_signal_information_item_in_signal_statement14384);
            	        signal_information_item2723=signal_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2723.tree);

            	        // MySQL.g:2746:76: ( COMMA_SYMBOL signal_information_item )*

            	        for (;;)
            	        {
            	            int alt754=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt754=1;
            	            	}
            	                break;

            	            }

            	            switch (alt754)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2746:77: COMMA_SYMBOL signal_information_item
            	        	    {
            	        	        COMMA_SYMBOL2724 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_signal_statement14387);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2724_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2724));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2724_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_signal_information_item_in_signal_statement14389);
            	        	        signal_information_item2725=signal_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulesignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2725.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop754;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop754: ; /* 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:2749: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_SYMBOL2726;
    pANTLR3_COMMON_TOKEN    SQLSTATE_SYMBOL2727;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2728;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2730;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2732;
    MySQLParser_text_or_identifier_return text_or_identifier2729;
    #undef	RETURN_TYPE_text_or_identifier2729
    #define	RETURN_TYPE_text_or_identifier2729 MySQLParser_text_or_identifier_return

    MySQLParser_signal_information_item_return signal_information_item2731;
    #undef	RETURN_TYPE_signal_information_item2731
    #define	RETURN_TYPE_signal_information_item2731 MySQLParser_signal_information_item_return

    MySQLParser_signal_information_item_return signal_information_item2733;
    #undef	RETURN_TYPE_signal_information_item2733
    #define	RETURN_TYPE_signal_information_item2733 MySQLParser_signal_information_item_return

    pANTLR3_BASE_TREE RESIGNAL_SYMBOL2726_tree;
    pANTLR3_BASE_TREE SQLSTATE_SYMBOL2727_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2728_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2730_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2732_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RESIGNAL_SYMBOL2726       = NULL;
    SQLSTATE_SYMBOL2727       = NULL;
    VALUE_SYMBOL2728       = NULL;
    SET_SYMBOL2730       = NULL;
    COMMA_SYMBOL2732       = NULL;
    text_or_identifier2729.tree = NULL;

    signal_information_item2731.tree = NULL;

    signal_information_item2733.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RESIGNAL_SYMBOL2726_tree   = NULL;
    SQLSTATE_SYMBOL2727_tree   = NULL;
    VALUE_SYMBOL2728_tree   = NULL;
    SET_SYMBOL2730_tree   = NULL;
    COMMA_SYMBOL2732_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2749:19: ( RESIGNAL_SYMBOL ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )? ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )? )
        // MySQL.g:2750: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_SYMBOL2726 = (pANTLR3_COMMON_TOKEN) MATCHT(RESIGNAL_SYMBOL, &FOLLOW_RESIGNAL_SYMBOL_in_resignal_statement14402);
            if  (HASEXCEPTION())
            {
                goto ruleresignal_statementEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            RESIGNAL_SYMBOL2726_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESIGNAL_SYMBOL2726));
            ADAPTOR->addChild(ADAPTOR, root_0, RESIGNAL_SYMBOL2726_tree);
            }

            // MySQL.g:2750:18: ( SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier )?
            {
                int alt757=2;
                switch ( LA(1) )
                {
                    case SQLSTATE_SYMBOL:
                    	{
                    		alt757=1;
                    	}
                        break;
                }

                switch (alt757)
                {
            	case 1:
            	    // MySQL.g:2750:19: SQLSTATE_SYMBOL ( VALUE_SYMBOL )? text_or_identifier
            	    {
            	        SQLSTATE_SYMBOL2727 = (pANTLR3_COMMON_TOKEN) MATCHT(SQLSTATE_SYMBOL, &FOLLOW_SQLSTATE_SYMBOL_in_resignal_statement14405);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SQLSTATE_SYMBOL2727_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SQLSTATE_SYMBOL2727));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SQLSTATE_SYMBOL2727_tree);
            	        }

            	        // MySQL.g:2750:35: ( VALUE_SYMBOL )?
            	        {
            	            int alt756=2;
            	            switch ( LA(1) )
            	            {
            	                case VALUE_SYMBOL:
            	                	{
            	                		{
            	                		    int LA756_1 = LA(2);
            	                		    if ( (((LA756_1 >= ACCOUNT_SYMBOL) && (LA756_1 <= YEAR_SYMBOL)) || LA756_1 == BACK_TICK_QUOTED_ID || LA756_1 == DOUBLE_QUOTED_TEXT || LA756_1 == IDENTIFIER || LA756_1 == SINGLE_QUOTED_TEXT))
            	                		    {
            	                		        alt756=1;
            	                		    }
            	                		}
            	                	}
            	                    break;
            	            }

            	            switch (alt756)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2750:35: VALUE_SYMBOL
            	        	    {
            	        	        VALUE_SYMBOL2728 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_resignal_statement14407);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        VALUE_SYMBOL2728_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2728));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2728_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_resignal_statement14410);
            	        text_or_identifier2729=text_or_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2729.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2751:3: ( SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )* )?
            {
                int alt759=2;
                switch ( LA(1) )
                {
                    case SET_SYMBOL:
                    	{
                    		alt759=1;
                    	}
                        break;
                }

                switch (alt759)
                {
            	case 1:
            	    // MySQL.g:2751:4: SET_SYMBOL signal_information_item ( COMMA_SYMBOL signal_information_item )*
            	    {
            	        SET_SYMBOL2730 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_resignal_statement14417);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SET_SYMBOL2730_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2730));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2730_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_signal_information_item_in_resignal_statement14419);
            	        signal_information_item2731=signal_information_item(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleresignal_statementEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2731.tree);

            	        // MySQL.g:2751:39: ( COMMA_SYMBOL signal_information_item )*

            	        for (;;)
            	        {
            	            int alt758=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt758=1;
            	            	}
            	                break;

            	            }

            	            switch (alt758)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2751:40: COMMA_SYMBOL signal_information_item
            	        	    {
            	        	        COMMA_SYMBOL2732 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_resignal_statement14422);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2732_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2732));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2732_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_signal_information_item_in_resignal_statement14424);
            	        	        signal_information_item2733=signal_information_item(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruleresignal_statementEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item2733.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop758;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop758: ; /* 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:2754:1: signal_information_item : signal_information_item_name EQUAL_OPERATOR signal_allowed_expression ;
 */
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_OPERATOR2735;
    MySQLParser_signal_information_item_name_return signal_information_item_name2734;
    #undef	RETURN_TYPE_signal_information_item_name2734
    #define	RETURN_TYPE_signal_information_item_name2734 MySQLParser_signal_information_item_name_return

    MySQLParser_signal_allowed_expression_return signal_allowed_expression2736;
    #undef	RETURN_TYPE_signal_allowed_expression2736
    #define	RETURN_TYPE_signal_allowed_expression2736 MySQLParser_signal_allowed_expression_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR2735_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR2735       = NULL;
    signal_information_item_name2734.tree = NULL;

    signal_allowed_expression2736.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR2735_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2754:24: ( signal_information_item_name EQUAL_OPERATOR signal_allowed_expression )
        // MySQL.g:2755:2: signal_information_item_name EQUAL_OPERATOR signal_allowed_expression
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_signal_information_item_name_in_signal_information_item14437);
            signal_information_item_name2734=signal_information_item_name(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesignal_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_information_item_name2734.tree);

            EQUAL_OPERATOR2735 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_signal_information_item14439);
            if  (HASEXCEPTION())
            {
                goto rulesignal_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR2735_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2735));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2735_tree);
            }

            FOLLOWPUSH(FOLLOW_signal_allowed_expression_in_signal_information_item14441);
            signal_allowed_expression2736=signal_allowed_expression(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesignal_information_itemEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signal_allowed_expression2736.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:2758: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_SYMBOL2737;
    MySQLParser_identifier_return identifier2738;
    #undef	RETURN_TYPE_identifier2738
    #define	RETURN_TYPE_identifier2738 MySQLParser_identifier_return

    pANTLR3_BASE_TREE CLOSE_SYMBOL2737_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CLOSE_SYMBOL2737       = NULL;
    identifier2738.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CLOSE_SYMBOL2737_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2758:13: ( CLOSE_SYMBOL identifier )
        // MySQL.g:2759:2: CLOSE_SYMBOL identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            CLOSE_SYMBOL2737 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_SYMBOL, &FOLLOW_CLOSE_SYMBOL_in_cursor_close14450);
            if  (HASEXCEPTION())
            {
                goto rulecursor_closeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_SYMBOL2737_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_SYMBOL2737));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_SYMBOL2737_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_close14452);
            identifier2738=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_closeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2738.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:2762:1: cursor_fetch : FETCH_SYMBOL identifier INTO_SYMBOL identifier_list ;
 */
static MySQLParser_cursor_fetch_return
cursor_fetch(pMySQLParser ctx)
{
    MySQLParser_cursor_fetch_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FETCH_SYMBOL2739;
    pANTLR3_COMMON_TOKEN    INTO_SYMBOL2741;
    MySQLParser_identifier_return identifier2740;
    #undef	RETURN_TYPE_identifier2740
    #define	RETURN_TYPE_identifier2740 MySQLParser_identifier_return

    MySQLParser_identifier_list_return identifier_list2742;
    #undef	RETURN_TYPE_identifier_list2742
    #define	RETURN_TYPE_identifier_list2742 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE FETCH_SYMBOL2739_tree;
    pANTLR3_BASE_TREE INTO_SYMBOL2741_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FETCH_SYMBOL2739       = NULL;
    INTO_SYMBOL2741       = NULL;
    identifier2740.tree = NULL;

    identifier_list2742.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FETCH_SYMBOL2739_tree   = NULL;
    INTO_SYMBOL2741_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2762:13: ( FETCH_SYMBOL identifier INTO_SYMBOL identifier_list )
        // MySQL.g:2763:2: FETCH_SYMBOL identifier INTO_SYMBOL identifier_list
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FETCH_SYMBOL2739 = (pANTLR3_COMMON_TOKEN) MATCHT(FETCH_SYMBOL, &FOLLOW_FETCH_SYMBOL_in_cursor_fetch14461);
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            FETCH_SYMBOL2739_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FETCH_SYMBOL2739));
            ADAPTOR->addChild(ADAPTOR, root_0, FETCH_SYMBOL2739_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_fetch14463);
            identifier2740=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2740.tree);

            INTO_SYMBOL2741 = (pANTLR3_COMMON_TOKEN) MATCHT(INTO_SYMBOL, &FOLLOW_INTO_SYMBOL_in_cursor_fetch14465);
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INTO_SYMBOL2741_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INTO_SYMBOL2741));
            ADAPTOR->addChild(ADAPTOR, root_0, INTO_SYMBOL2741_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_list_in_cursor_fetch14467);
            identifier_list2742=identifier_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_fetchEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list2742.tree);

        }

    }

    // 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:2766: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_SYMBOL2743;
    MySQLParser_identifier_return identifier2744;
    #undef	RETURN_TYPE_identifier2744
    #define	RETURN_TYPE_identifier2744 MySQLParser_identifier_return

    pANTLR3_BASE_TREE OPEN_SYMBOL2743_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_SYMBOL2743       = NULL;
    identifier2744.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_SYMBOL2743_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2766:12: ( OPEN_SYMBOL identifier )
        // MySQL.g:2767:2: OPEN_SYMBOL identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_SYMBOL2743 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_SYMBOL, &FOLLOW_OPEN_SYMBOL_in_cursor_open14476);
            if  (HASEXCEPTION())
            {
                goto rulecursor_openEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_SYMBOL2743_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_SYMBOL2743));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_SYMBOL2743_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_cursor_open14478);
            identifier2744=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecursor_openEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2744.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:2773:1: schedule : ( AT_SYMBOL expression | EVERY_SYMBOL interval ( STARTS_SYMBOL expression )? ( ENDS_SYMBOL expression )? );
 */
static MySQLParser_schedule_return
schedule(pMySQLParser ctx)
{
    MySQLParser_schedule_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    AT_SYMBOL2745;
    pANTLR3_COMMON_TOKEN    EVERY_SYMBOL2747;
    pANTLR3_COMMON_TOKEN    STARTS_SYMBOL2749;
    pANTLR3_COMMON_TOKEN    ENDS_SYMBOL2751;
    MySQLParser_expression_return expression2746;
    #undef	RETURN_TYPE_expression2746
    #define	RETURN_TYPE_expression2746 MySQLParser_expression_return

    MySQLParser_interval_return interval2748;
    #undef	RETURN_TYPE_interval2748
    #define	RETURN_TYPE_interval2748 MySQLParser_interval_return

    MySQLParser_expression_return expression2750;
    #undef	RETURN_TYPE_expression2750
    #define	RETURN_TYPE_expression2750 MySQLParser_expression_return

    MySQLParser_expression_return expression2752;
    #undef	RETURN_TYPE_expression2752
    #define	RETURN_TYPE_expression2752 MySQLParser_expression_return

    pANTLR3_BASE_TREE AT_SYMBOL2745_tree;
    pANTLR3_BASE_TREE EVERY_SYMBOL2747_tree;
    pANTLR3_BASE_TREE STARTS_SYMBOL2749_tree;
    pANTLR3_BASE_TREE ENDS_SYMBOL2751_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_SYMBOL2745       = NULL;
    EVERY_SYMBOL2747       = NULL;
    STARTS_SYMBOL2749       = NULL;
    ENDS_SYMBOL2751       = NULL;
    expression2746.tree = NULL;

    interval2748.tree = NULL;

    expression2750.tree = NULL;

    expression2752.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SYMBOL2745_tree   = NULL;
    EVERY_SYMBOL2747_tree   = NULL;
    STARTS_SYMBOL2749_tree   = NULL;
    ENDS_SYMBOL2751_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2773:9: ( AT_SYMBOL expression | EVERY_SYMBOL interval ( STARTS_SYMBOL expression )? ( ENDS_SYMBOL expression )? )

            ANTLR3_UINT32 alt762;

            alt762=2;

            switch ( LA(1) )
            {
            case AT_SYMBOL:
            	{
            		alt762=1;
            	}
                break;
            case EVERY_SYMBOL:
            	{
            		alt762=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 762;
                EXCEPTION->state        = 0;


                goto rulescheduleEx;

            }

            switch (alt762)
            {
        	case 1:
        	    // MySQL.g:2774:2: AT_SYMBOL expression
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AT_SYMBOL2745 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SYMBOL, &FOLLOW_AT_SYMBOL_in_schedule14490);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AT_SYMBOL2745_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SYMBOL2745));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SYMBOL2745_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_schedule14492);
        	        expression2746=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2746.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2775:4: EVERY_SYMBOL interval ( STARTS_SYMBOL expression )? ( ENDS_SYMBOL expression )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        EVERY_SYMBOL2747 = (pANTLR3_COMMON_TOKEN) MATCHT(EVERY_SYMBOL, &FOLLOW_EVERY_SYMBOL_in_schedule14497);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        EVERY_SYMBOL2747_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EVERY_SYMBOL2747));
        	        ADAPTOR->addChild(ADAPTOR, root_0, EVERY_SYMBOL2747_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_interval_in_schedule14499);
        	        interval2748=interval(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulescheduleEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, interval2748.tree);

        	        // MySQL.g:2775:26: ( STARTS_SYMBOL expression )?
        	        {
        	            int alt760=2;
        	            switch ( LA(1) )
        	            {
        	                case STARTS_SYMBOL:
        	                	{
        	                		alt760=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt760)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2775:27: STARTS_SYMBOL expression
        	        	    {
        	        	        STARTS_SYMBOL2749 = (pANTLR3_COMMON_TOKEN) MATCHT(STARTS_SYMBOL, &FOLLOW_STARTS_SYMBOL_in_schedule14502);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STARTS_SYMBOL2749_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STARTS_SYMBOL2749));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STARTS_SYMBOL2749_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_schedule14504);
        	        	        expression2750=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2750.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2775:54: ( ENDS_SYMBOL expression )?
        	        {
        	            int alt761=2;
        	            switch ( LA(1) )
        	            {
        	                case ENDS_SYMBOL:
        	                	{
        	                		alt761=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt761)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2775:55: ENDS_SYMBOL expression
        	        	    {
        	        	        ENDS_SYMBOL2751 = (pANTLR3_COMMON_TOKEN) MATCHT(ENDS_SYMBOL, &FOLLOW_ENDS_SYMBOL_in_schedule14509);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ENDS_SYMBOL2751_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENDS_SYMBOL2751));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ENDS_SYMBOL2751_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_expression_in_schedule14511);
        	        	        expression2752=expression(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulescheduleEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2752.tree);

        	        	    }
        	        	    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 database_option
 * MySQL.g:2778:1: database_option : ( DEFAULT_SYMBOL )? ( charset ( 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_SYMBOL2753;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2755;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2757;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2758;
    MySQLParser_charset_return charset2754;
    #undef	RETURN_TYPE_charset2754
    #define	RETURN_TYPE_charset2754 MySQLParser_charset_return

    MySQLParser_charset_name_or_default_return charset_name_or_default2756;
    #undef	RETURN_TYPE_charset_name_or_default2756
    #define	RETURN_TYPE_charset_name_or_default2756 MySQLParser_charset_name_or_default_return

    MySQLParser_collation_name_or_default_return collation_name_or_default2759;
    #undef	RETURN_TYPE_collation_name_or_default2759
    #define	RETURN_TYPE_collation_name_or_default2759 MySQLParser_collation_name_or_default_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2753_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2755_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL2757_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2758_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2753       = NULL;
    EQUAL_OPERATOR2755       = NULL;
    COLLATE_SYMBOL2757       = NULL;
    EQUAL_OPERATOR2758       = NULL;
    charset2754.tree = NULL;

    charset_name_or_default2756.tree = NULL;

    collation_name_or_default2759.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2753_tree   = NULL;
    EQUAL_OPERATOR2755_tree   = NULL;
    COLLATE_SYMBOL2757_tree   = NULL;
    EQUAL_OPERATOR2758_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2778:16: ( ( DEFAULT_SYMBOL )? ( charset ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default ) )
        // MySQL.g:2779:2: ( DEFAULT_SYMBOL )? ( charset ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2779:2: ( DEFAULT_SYMBOL )?
            {
                int alt763=2;
                switch ( LA(1) )
                {
                    case DEFAULT_SYMBOL:
                    	{
                    		alt763=1;
                    	}
                        break;
                }

                switch (alt763)
                {
            	case 1:
            	    // MySQL.g:2779:2: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL2753 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_database_option14522);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL2753_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2753));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2753_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:2780:3: ( charset ( EQUAL_OPERATOR )? charset_name_or_default | COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default )
            {
                int alt766=2;
                switch ( LA(1) )
                {
                case CHARSET_SYMBOL:
                case CHAR_SYMBOL:
                	{
                		alt766=1;
                	}
                    break;
                case COLLATE_SYMBOL:
                	{
                		alt766=2;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 766;
                    EXCEPTION->state        = 0;


                    goto ruledatabase_optionEx;

                }

                switch (alt766)
                {
            	case 1:
            	    // MySQL.g:2781:4: charset ( EQUAL_OPERATOR )? charset_name_or_default
            	    {
            	        FOLLOWPUSH(FOLLOW_charset_in_database_option14532);
            	        charset2754=charset(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2754.tree);

            	        // MySQL.g:2781:12: ( EQUAL_OPERATOR )?
            	        {
            	            int alt764=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt764=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt764)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2781:12: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2755 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_database_option14534);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledatabase_optionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2755_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2755));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2755_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_database_option14537);
            	        charset_name_or_default2756=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_default2756.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2782:6: COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default
            	    {
            	        COLLATE_SYMBOL2757 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_database_option14544);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruledatabase_optionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COLLATE_SYMBOL2757_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2757));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2757_tree);
            	        }

            	        // MySQL.g:2782:21: ( EQUAL_OPERATOR )?
            	        {
            	            int alt765=2;
            	            switch ( LA(1) )
            	            {
            	                case EQUAL_OPERATOR:
            	                	{
            	                		alt765=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt765)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2782:21: EQUAL_OPERATOR
            	        	    {
            	        	        EQUAL_OPERATOR2758 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_database_option14546);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto ruledatabase_optionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        EQUAL_OPERATOR2758_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2758));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2758_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_database_option14549);
            	        collation_name_or_default2759=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_default2759.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:2786:1: column_definition : field_spec ( reference_definition | ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )? ) ;
 */
static MySQLParser_column_definition_return
column_definition(pMySQLParser ctx)
{
    MySQLParser_column_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    CHECK_SYMBOL2762;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2763;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2765;
    MySQLParser_field_spec_return field_spec2760;
    #undef	RETURN_TYPE_field_spec2760
    #define	RETURN_TYPE_field_spec2760 MySQLParser_field_spec_return

    MySQLParser_reference_definition_return reference_definition2761;
    #undef	RETURN_TYPE_reference_definition2761
    #define	RETURN_TYPE_reference_definition2761 MySQLParser_reference_definition_return

    MySQLParser_expression_return expression2764;
    #undef	RETURN_TYPE_expression2764
    #define	RETURN_TYPE_expression2764 MySQLParser_expression_return

    pANTLR3_BASE_TREE CHECK_SYMBOL2762_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2763_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2765_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHECK_SYMBOL2762       = NULL;
    OPEN_PAR_SYMBOL2763       = NULL;
    CLOSE_PAR_SYMBOL2765       = NULL;
    field_spec2760.tree = NULL;

    reference_definition2761.tree = NULL;

    expression2764.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHECK_SYMBOL2762_tree   = NULL;
    OPEN_PAR_SYMBOL2763_tree   = NULL;
    CLOSE_PAR_SYMBOL2765_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2786:18: ( field_spec ( reference_definition | ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )? ) )
        // MySQL.g:2787:2: field_spec ( reference_definition | ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )? )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_field_spec_in_column_definition14562);
            field_spec2760=field_spec(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_spec2760.tree);

            // MySQL.g:2787:13: ( reference_definition | ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )? )
            {
                int alt768=2;
                {
                    int LA768_0 = LA(1);
                    if ( (LA768_0 == REFERENCES_SYMBOL))
                    {
                        alt768=1;
                    }
                    else if ( (LA768_0 == EOF || LA768_0 == PARTITION_SYMBOL || LA768_0 == AFTER_SYMBOL || LA768_0 == FIRST_SYMBOL || LA768_0 == CHECK_SYMBOL || LA768_0 == COMMA_SYMBOL || LA768_0 == SEMICOLON_SYMBOL))
                    {
                        alt768=2;
                    }
                    else if ( ((SERVER_VERSION >= 50100)) && (LA768_0 == REMOVE_SYMBOL))
                    {
                        alt768=2;
                    }
                    else if ( (LA768_0 == CLOSE_PAR_SYMBOL))
                    {
                        alt768=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 768;
                        EXCEPTION->state        = 0;


                        goto rulecolumn_definitionEx;

                    }
                }
                switch (alt768)
                {
            	case 1:
            	    // MySQL.g:2787:14: reference_definition
            	    {
            	        FOLLOWPUSH(FOLLOW_reference_definition_in_column_definition14565);
            	        reference_definition2761=reference_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_definition2761.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2787:37: ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )?
            	    {
            	        // MySQL.g:2787:37: ( CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL )?
            	        {
            	            int alt767=2;
            	            switch ( LA(1) )
            	            {
            	                case CHECK_SYMBOL:
            	                	{
            	                		alt767=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt767)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2787:38: CHECK_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	        	    {
            	        	        CHECK_SYMBOL2762 = (pANTLR3_COMMON_TOKEN) MATCHT(CHECK_SYMBOL, &FOLLOW_CHECK_SYMBOL_in_column_definition14570);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CHECK_SYMBOL2762_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHECK_SYMBOL2762));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CHECK_SYMBOL2762_tree);
            	        	        }

            	        	        OPEN_PAR_SYMBOL2763 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_column_definition14572);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        OPEN_PAR_SYMBOL2763_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2763));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2763_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_column_definition14574);
            	        	        expression2764=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2764.tree);

            	        	        CLOSE_PAR_SYMBOL2765 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_column_definition14576);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL2765_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2765));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2765_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    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 field_spec
 * MySQL.g:2790:1: field_spec : column_ref field_def ;
 */
static MySQLParser_field_spec_return
field_spec(pMySQLParser ctx)
{
    MySQLParser_field_spec_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_column_ref_return column_ref2766;
    #undef	RETURN_TYPE_column_ref2766
    #define	RETURN_TYPE_column_ref2766 MySQLParser_column_ref_return

    MySQLParser_field_def_return field_def2767;
    #undef	RETURN_TYPE_field_def2767
    #define	RETURN_TYPE_field_def2767 MySQLParser_field_def_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    column_ref2766.tree = NULL;

    field_def2767.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2790:11: ( column_ref field_def )
        // MySQL.g:2791:2: column_ref field_def
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_column_ref_in_field_spec14588);
            column_ref2766=column_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_specEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref2766.tree);

            FOLLOWPUSH(FOLLOW_field_def_in_field_spec14590);
            field_def2767=field_def(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_specEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_def2767.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefield_specEx; /* Prevent compiler warnings */
    rulefield_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 field_spec */

/**
 * $ANTLR start field_def
 * MySQL.g:2794:1: field_def : data_type field_def_tail ;
 */
static MySQLParser_field_def_return
field_def(pMySQLParser ctx)
{
    MySQLParser_field_def_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_data_type_return data_type2768;
    #undef	RETURN_TYPE_data_type2768
    #define	RETURN_TYPE_data_type2768 MySQLParser_data_type_return

    MySQLParser_field_def_tail_return field_def_tail2769;
    #undef	RETURN_TYPE_field_def_tail2769
    #define	RETURN_TYPE_field_def_tail2769 MySQLParser_field_def_tail_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    data_type2768.tree = NULL;

    field_def_tail2769.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2794:10: ( data_type field_def_tail )
        // MySQL.g:2795:2: data_type field_def_tail
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_data_type_in_field_def14599);
            data_type2768=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_defEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type2768.tree);

            FOLLOWPUSH(FOLLOW_field_def_tail_in_field_def14601);
            field_def_tail2769=field_def_tail(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_defEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_def_tail2769.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulefield_defEx; /* Prevent compiler warnings */
    rulefield_defEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_def */

/**
 * $ANTLR start field_def_tail
 * MySQL.g:2798:1: field_def_tail options {k=3; } : ( ( attribute )* |{...}? ( COLLATE_SYMBOL collation_name )? ( GENERATED_SYMBOL ALWAYS_SYMBOL )? AS_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL ( VIRTUAL_SYMBOL | STORED_SYMBOL )? ( gcol_attribute )* );
 */
static MySQLParser_field_def_tail_return
field_def_tail(pMySQLParser ctx)
{
    MySQLParser_field_def_tail_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2771;
    pANTLR3_COMMON_TOKEN    GENERATED_SYMBOL2773;
    pANTLR3_COMMON_TOKEN    ALWAYS_SYMBOL2774;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL2775;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL2776;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2778;
    pANTLR3_COMMON_TOKEN    set2779;
    MySQLParser_attribute_return attribute2770;
    #undef	RETURN_TYPE_attribute2770
    #define	RETURN_TYPE_attribute2770 MySQLParser_attribute_return

    MySQLParser_collation_name_return collation_name2772;
    #undef	RETURN_TYPE_collation_name2772
    #define	RETURN_TYPE_collation_name2772 MySQLParser_collation_name_return

    MySQLParser_expression_return expression2777;
    #undef	RETURN_TYPE_expression2777
    #define	RETURN_TYPE_expression2777 MySQLParser_expression_return

    MySQLParser_gcol_attribute_return gcol_attribute2780;
    #undef	RETURN_TYPE_gcol_attribute2780
    #define	RETURN_TYPE_gcol_attribute2780 MySQLParser_gcol_attribute_return

    pANTLR3_BASE_TREE COLLATE_SYMBOL2771_tree;
    pANTLR3_BASE_TREE GENERATED_SYMBOL2773_tree;
    pANTLR3_BASE_TREE ALWAYS_SYMBOL2774_tree;
    pANTLR3_BASE_TREE AS_SYMBOL2775_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2776_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2778_tree;
    pANTLR3_BASE_TREE set2779_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COLLATE_SYMBOL2771       = NULL;
    GENERATED_SYMBOL2773       = NULL;
    ALWAYS_SYMBOL2774       = NULL;
    AS_SYMBOL2775       = NULL;
    OPEN_PAR_SYMBOL2776       = NULL;
    CLOSE_PAR_SYMBOL2778       = NULL;
    set2779       = NULL;
    attribute2770.tree = NULL;

    collation_name2772.tree = NULL;

    expression2777.tree = NULL;

    gcol_attribute2780.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLLATE_SYMBOL2771_tree   = NULL;
    GENERATED_SYMBOL2773_tree   = NULL;
    ALWAYS_SYMBOL2774_tree   = NULL;
    AS_SYMBOL2775_tree   = NULL;
    OPEN_PAR_SYMBOL2776_tree   = NULL;
    CLOSE_PAR_SYMBOL2778_tree   = NULL;
    set2779_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2798:34: ( ( attribute )* |{...}? ( COLLATE_SYMBOL collation_name )? ( GENERATED_SYMBOL ALWAYS_SYMBOL )? AS_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL ( VIRTUAL_SYMBOL | STORED_SYMBOL )? ( gcol_attribute )* )

            ANTLR3_UINT32 alt774;

            alt774=2;

            {
                int LA774_0 = LA(1);
                if ( (LA774_0 == EOF || LA774_0 == COMMENT_SYMBOL || LA774_0 == PARTITION_SYMBOL || LA774_0 == AFTER_SYMBOL || LA774_0 == AUTO_INCREMENT_SYMBOL || LA774_0 == COLUMN_FORMAT_SYMBOL || LA774_0 == FIRST_SYMBOL || LA774_0 == SERIAL_SYMBOL || LA774_0 == STORAGE_SYMBOL || LA774_0 == COMMA_SYMBOL || LA774_0 == DEFAULT_SYMBOL || LA774_0 == KEY_SYMBOL || LA774_0 == NOT_SYMBOL || LA774_0 == NULL2_SYMBOL || LA774_0 == NULL_SYMBOL || LA774_0 == ON_SYMBOL || LA774_0 == PRIMARY_SYMBOL || LA774_0 == SEMICOLON_SYMBOL || LA774_0 == UNIQUE_SYMBOL))
                {
                    alt774=1;
                }
                else if ( (LA774_0 == COLLATE_SYMBOL))
                {
                    {
                        int LA774_11 = LA(2);
                        if ( (LA774_11 == SINGLE_QUOTED_TEXT))
                        {
                            switch ( LA(3) )
                            {
                            case EOF:
                            case COMMENT_SYMBOL:
                            case PARTITION_SYMBOL:
                            case REMOVE_SYMBOL:
                            case AFTER_SYMBOL:
                            case AUTO_INCREMENT_SYMBOL:
                            case COLUMN_FORMAT_SYMBOL:
                            case FIRST_SYMBOL:
                            case SERIAL_SYMBOL:
                            case STORAGE_SYMBOL:
                            case CHECK_SYMBOL:
                            case CLOSE_PAR_SYMBOL:
                            case COLLATE_SYMBOL:
                            case COMMA_SYMBOL:
                            case DEFAULT_SYMBOL:
                            case KEY_SYMBOL:
                            case NOT_SYMBOL:
                            case NULL2_SYMBOL:
                            case NULL_SYMBOL:
                            case ON_SYMBOL:
                            case PRIMARY_SYMBOL:
                            case REFERENCES_SYMBOL:
                            case SEMICOLON_SYMBOL:
                            case UNIQUE_SYMBOL:
                            	{
                            		alt774=1;
                            	}
                                break;
                            case AS_SYMBOL:
                            case GENERATED_SYMBOL:
                            	{
                            		alt774=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 774;
                                EXCEPTION->state        = 26;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (LA774_11 == IDENTIFIER))
                        {
                            switch ( LA(3) )
                            {
                            case EOF:
                            case COMMENT_SYMBOL:
                            case PARTITION_SYMBOL:
                            case REMOVE_SYMBOL:
                            case AFTER_SYMBOL:
                            case AUTO_INCREMENT_SYMBOL:
                            case COLUMN_FORMAT_SYMBOL:
                            case FIRST_SYMBOL:
                            case SERIAL_SYMBOL:
                            case STORAGE_SYMBOL:
                            case CHECK_SYMBOL:
                            case CLOSE_PAR_SYMBOL:
                            case COLLATE_SYMBOL:
                            case COMMA_SYMBOL:
                            case DEFAULT_SYMBOL:
                            case KEY_SYMBOL:
                            case NOT_SYMBOL:
                            case NULL2_SYMBOL:
                            case NULL_SYMBOL:
                            case ON_SYMBOL:
                            case PRIMARY_SYMBOL:
                            case REFERENCES_SYMBOL:
                            case SEMICOLON_SYMBOL:
                            case UNIQUE_SYMBOL:
                            	{
                            		alt774=1;
                            	}
                                break;
                            case AS_SYMBOL:
                            case GENERATED_SYMBOL:
                            	{
                            		alt774=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 774;
                                EXCEPTION->state        = 27;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (LA774_11 == BACK_TICK_QUOTED_ID))
                        {
                            switch ( LA(3) )
                            {
                            case EOF:
                            case COMMENT_SYMBOL:
                            case PARTITION_SYMBOL:
                            case REMOVE_SYMBOL:
                            case AFTER_SYMBOL:
                            case AUTO_INCREMENT_SYMBOL:
                            case COLUMN_FORMAT_SYMBOL:
                            case FIRST_SYMBOL:
                            case SERIAL_SYMBOL:
                            case STORAGE_SYMBOL:
                            case CHECK_SYMBOL:
                            case CLOSE_PAR_SYMBOL:
                            case COLLATE_SYMBOL:
                            case COMMA_SYMBOL:
                            case DEFAULT_SYMBOL:
                            case KEY_SYMBOL:
                            case NOT_SYMBOL:
                            case NULL2_SYMBOL:
                            case NULL_SYMBOL:
                            case ON_SYMBOL:
                            case PRIMARY_SYMBOL:
                            case REFERENCES_SYMBOL:
                            case SEMICOLON_SYMBOL:
                            case UNIQUE_SYMBOL:
                            	{
                            		alt774=1;
                            	}
                                break;
                            case AS_SYMBOL:
                            case GENERATED_SYMBOL:
                            	{
                            		alt774=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 774;
                                EXCEPTION->state        = 28;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (LA774_11 == DOUBLE_QUOTED_TEXT))
                        {
                            switch ( LA(3) )
                            {
                            case EOF:
                            case COMMENT_SYMBOL:
                            case PARTITION_SYMBOL:
                            case REMOVE_SYMBOL:
                            case AFTER_SYMBOL:
                            case AUTO_INCREMENT_SYMBOL:
                            case COLUMN_FORMAT_SYMBOL:
                            case FIRST_SYMBOL:
                            case SERIAL_SYMBOL:
                            case STORAGE_SYMBOL:
                            case CHECK_SYMBOL:
                            case CLOSE_PAR_SYMBOL:
                            case COLLATE_SYMBOL:
                            case COMMA_SYMBOL:
                            case DEFAULT_SYMBOL:
                            case KEY_SYMBOL:
                            case NOT_SYMBOL:
                            case NULL2_SYMBOL:
                            case NULL_SYMBOL:
                            case ON_SYMBOL:
                            case PRIMARY_SYMBOL:
                            case REFERENCES_SYMBOL:
                            case SEMICOLON_SYMBOL:
                            case UNIQUE_SYMBOL:
                            	{
                            		alt774=1;
                            	}
                                break;
                            case AS_SYMBOL:
                            case GENERATED_SYMBOL:
                            	{
                            		alt774=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 774;
                                EXCEPTION->state        = 29;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (((LA774_11 >= ACTION_SYMBOL) && (LA774_11 <= SHARE_SYMBOL)) || ((LA774_11 >= SLOW_SYMBOL) && (LA774_11 <= YEAR_SYMBOL))))
                        {
                            switch ( LA(3) )
                            {
                            case EOF:
                            case COMMENT_SYMBOL:
                            case PARTITION_SYMBOL:
                            case REMOVE_SYMBOL:
                            case AFTER_SYMBOL:
                            case AUTO_INCREMENT_SYMBOL:
                            case COLUMN_FORMAT_SYMBOL:
                            case FIRST_SYMBOL:
                            case SERIAL_SYMBOL:
                            case STORAGE_SYMBOL:
                            case CHECK_SYMBOL:
                            case CLOSE_PAR_SYMBOL:
                            case COLLATE_SYMBOL:
                            case COMMA_SYMBOL:
                            case DEFAULT_SYMBOL:
                            case KEY_SYMBOL:
                            case NOT_SYMBOL:
                            case NULL2_SYMBOL:
                            case NULL_SYMBOL:
                            case ON_SYMBOL:
                            case PRIMARY_SYMBOL:
                            case REFERENCES_SYMBOL:
                            case SEMICOLON_SYMBOL:
                            case UNIQUE_SYMBOL:
                            	{
                            		alt774=1;
                            	}
                                break;
                            case AS_SYMBOL:
                            case GENERATED_SYMBOL:
                            	{
                            		alt774=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 774;
                                EXCEPTION->state        = 30;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else if ( (((LA774_11 >= ACCOUNT_SYMBOL) && (LA774_11 <= XA_SYMBOL)) || LA774_11 == SHUTDOWN_SYMBOL))
                        {
                            switch ( LA(3) )
                            {
                            case EOF:
                            case COMMENT_SYMBOL:
                            case PARTITION_SYMBOL:
                            case REMOVE_SYMBOL:
                            case AFTER_SYMBOL:
                            case AUTO_INCREMENT_SYMBOL:
                            case COLUMN_FORMAT_SYMBOL:
                            case FIRST_SYMBOL:
                            case SERIAL_SYMBOL:
                            case STORAGE_SYMBOL:
                            case CHECK_SYMBOL:
                            case CLOSE_PAR_SYMBOL:
                            case COLLATE_SYMBOL:
                            case COMMA_SYMBOL:
                            case DEFAULT_SYMBOL:
                            case KEY_SYMBOL:
                            case NOT_SYMBOL:
                            case NULL2_SYMBOL:
                            case NULL_SYMBOL:
                            case ON_SYMBOL:
                            case PRIMARY_SYMBOL:
                            case REFERENCES_SYMBOL:
                            case SEMICOLON_SYMBOL:
                            case UNIQUE_SYMBOL:
                            	{
                            		alt774=1;
                            	}
                                break;
                            case AS_SYMBOL:
                            case GENERATED_SYMBOL:
                            	{
                            		alt774=2;
                            	}
                                break;

                            default:
                                if (BACKTRACKING>0)
                                {
                                    FAILEDFLAG = ANTLR3_TRUE;
                                    return retval;
                                }

                                CONSTRUCTEX();
                                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                                EXCEPTION->message      = (void *)"";
                                EXCEPTION->decisionNum  = 774;
                                EXCEPTION->state        = 31;


                                goto rulefield_def_tailEx;

                            }

                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 774;
                            EXCEPTION->state        = 11;


                            goto rulefield_def_tailEx;

                        }
                    }
                }
                else if ( ((SERVER_VERSION >= 50100)) && (LA774_0 == REMOVE_SYMBOL))
                {
                    alt774=1;
                }
                else if ( (LA774_0 == CHECK_SYMBOL || LA774_0 == CLOSE_PAR_SYMBOL || LA774_0 == REFERENCES_SYMBOL))
                {
                    alt774=1;
                }
                else if ( (LA774_0 == AS_SYMBOL || LA774_0 == GENERATED_SYMBOL))
                {
                    alt774=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 774;
                    EXCEPTION->state        = 0;


                    goto rulefield_def_tailEx;

                }
            }
            switch (alt774)
            {
        	case 1:
        	    // MySQL.g:2799:2: ( attribute )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2799:2: ( attribute )*

        	        for (;;)
        	        {
        	            int alt769=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMENT_SYMBOL:
        	            case AUTO_INCREMENT_SYMBOL:
        	            case COLUMN_FORMAT_SYMBOL:
        	            case SERIAL_SYMBOL:
        	            case STORAGE_SYMBOL:
        	            case COLLATE_SYMBOL:
        	            case DEFAULT_SYMBOL:
        	            case KEY_SYMBOL:
        	            case NOT_SYMBOL:
        	            case NULL2_SYMBOL:
        	            case NULL_SYMBOL:
        	            case ON_SYMBOL:
        	            case PRIMARY_SYMBOL:
        	            case UNIQUE_SYMBOL:
        	            	{
        	            		alt769=1;
        	            	}
        	                break;

        	            }

        	            switch (alt769)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2799:2: attribute
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_attribute_in_field_def_tail14621);
        	        	        attribute2770=attribute(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, attribute2770.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop769;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop769: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2800:4: {...}? ( COLLATE_SYMBOL collation_name )? ( GENERATED_SYMBOL ALWAYS_SYMBOL )? AS_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL ( VIRTUAL_SYMBOL | STORED_SYMBOL )? ( gcol_attribute )*
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50707)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50707";
        	                EXCEPTION->ruleName	 = (void *)"field_def_tail";


        	        }

        	        // MySQL.g:2800:31: ( COLLATE_SYMBOL collation_name )?
        	        {
        	            int alt770=2;
        	            switch ( LA(1) )
        	            {
        	                case COLLATE_SYMBOL:
        	                	{
        	                		alt770=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt770)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2800:32: COLLATE_SYMBOL collation_name
        	        	    {
        	        	        COLLATE_SYMBOL2771 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_field_def_tail14630);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLLATE_SYMBOL2771_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2771));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2771_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_collation_name_in_field_def_tail14632);
        	        	        collation_name2772=collation_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name2772.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2800:64: ( GENERATED_SYMBOL ALWAYS_SYMBOL )?
        	        {
        	            int alt771=2;
        	            switch ( LA(1) )
        	            {
        	                case GENERATED_SYMBOL:
        	                	{
        	                		alt771=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt771)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2800:65: GENERATED_SYMBOL ALWAYS_SYMBOL
        	        	    {
        	        	        GENERATED_SYMBOL2773 = (pANTLR3_COMMON_TOKEN) MATCHT(GENERATED_SYMBOL, &FOLLOW_GENERATED_SYMBOL_in_field_def_tail14637);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        GENERATED_SYMBOL2773_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, GENERATED_SYMBOL2773));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, GENERATED_SYMBOL2773_tree);
        	        	        }

        	        	        ALWAYS_SYMBOL2774 = (pANTLR3_COMMON_TOKEN) MATCHT(ALWAYS_SYMBOL, &FOLLOW_ALWAYS_SYMBOL_in_field_def_tail14639);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ALWAYS_SYMBOL2774_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALWAYS_SYMBOL2774));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ALWAYS_SYMBOL2774_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        AS_SYMBOL2775 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_field_def_tail14643);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_def_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AS_SYMBOL2775_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL2775));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL2775_tree);
        	        }

        	        OPEN_PAR_SYMBOL2776 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_field_def_tail14647);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_def_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL2776_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2776));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2776_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_expression_in_field_def_tail14649);
        	        expression2777=expression(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_def_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression2777.tree);

        	        CLOSE_PAR_SYMBOL2778 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_field_def_tail14651);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_def_tailEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL2778_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2778));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2778_tree);
        	        }

        	        // MySQL.g:2801:47: ( VIRTUAL_SYMBOL | STORED_SYMBOL )?
        	        {
        	            int alt772=2;
        	            switch ( LA(1) )
        	            {
        	                case STORED_SYMBOL:
        	                case VIRTUAL_SYMBOL:
        	                	{
        	                		alt772=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt772)
        	            {
        	        	case 1:
        	        	    // MySQL.g:
        	        	    {
        	        	        set2779=(pANTLR3_COMMON_TOKEN)LT(1);

        	        	        if ( LA(1) == STORED_SYMBOL || LA(1) == VIRTUAL_SYMBOL )
        	        	        {
        	        	            CONSUME();
        	        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2779))
        	        	            );
        	        	            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_def_tailEx;
        	        	        }


        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2801:81: ( gcol_attribute )*

        	        for (;;)
        	        {
        	            int alt773=2;
        	            switch ( LA(1) )
        	            {
        	            case COMMENT_SYMBOL:
        	            case KEY_SYMBOL:
        	            case NOT2_SYMBOL:
        	            case NOT_SYMBOL:
        	            case NULL_SYMBOL:
        	            case PRIMARY_SYMBOL:
        	            case UNIQUE_SYMBOL:
        	            	{
        	            		alt773=1;
        	            	}
        	                break;

        	            }

        	            switch (alt773)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2801:81: gcol_attribute
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_gcol_attribute_in_field_def_tail14662);
        	        	        gcol_attribute2780=gcol_attribute(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_def_tailEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, gcol_attribute2780.tree);

        	        	    }
        	        	    break;

        	        	default:
        	        	    goto loop773;	/* break out of the loop */
        	        	    break;
        	            }
        	        }
        	        loop773: ; /* Jump out to here if this rule does not match */


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulefield_def_tailEx; /* Prevent compiler warnings */
    rulefield_def_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 field_def_tail */

/**
 * $ANTLR start attribute
 * MySQL.g:2804:1: attribute : ( ( NOT_SYMBOL )? null_literal | DEFAULT_SYMBOL ( signed_literal | NOW_SYMBOL ( time_function_parameters )? ) | ON_SYMBOL UPDATE_SYMBOL NOW_SYMBOL ( time_function_parameters )? | AUTO_INCREMENT_SYMBOL | SERIAL_SYMBOL DEFAULT_SYMBOL VALUE_SYMBOL |{...}? UNIQUE_SYMBOL | ( PRIMARY_SYMBOL | UNIQUE_SYMBOL ) KEY_SYMBOL | KEY_SYMBOL | COMMENT_SYMBOL string_literal | COLLATE_SYMBOL collation_name | COLUMN_FORMAT_SYMBOL ( FIXED_SYMBOL | DYNAMIC_SYMBOL | DEFAULT_SYMBOL ) | STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL | DEFAULT_SYMBOL ) );
 */
static MySQLParser_attribute_return
attribute(pMySQLParser ctx)
{
    MySQLParser_attribute_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    NOT_SYMBOL2781;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2783;
    pANTLR3_COMMON_TOKEN    NOW_SYMBOL2785;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2787;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL2788;
    pANTLR3_COMMON_TOKEN    NOW_SYMBOL2789;
    pANTLR3_COMMON_TOKEN    AUTO_INCREMENT_SYMBOL2791;
    pANTLR3_COMMON_TOKEN    SERIAL_SYMBOL2792;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL2793;
    pANTLR3_COMMON_TOKEN    VALUE_SYMBOL2794;
    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL2795;
    pANTLR3_COMMON_TOKEN    set2796;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2797;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2798;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2799;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL2801;
    pANTLR3_COMMON_TOKEN    COLUMN_FORMAT_SYMBOL2803;
    pANTLR3_COMMON_TOKEN    set2804;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL2805;
    pANTLR3_COMMON_TOKEN    set2806;
    MySQLParser_null_literal_return null_literal2782;
    #undef	RETURN_TYPE_null_literal2782
    #define	RETURN_TYPE_null_literal2782 MySQLParser_null_literal_return

    MySQLParser_signed_literal_return signed_literal2784;
    #undef	RETURN_TYPE_signed_literal2784
    #define	RETURN_TYPE_signed_literal2784 MySQLParser_signed_literal_return

    MySQLParser_time_function_parameters_return time_function_parameters2786;
    #undef	RETURN_TYPE_time_function_parameters2786
    #define	RETURN_TYPE_time_function_parameters2786 MySQLParser_time_function_parameters_return

    MySQLParser_time_function_parameters_return time_function_parameters2790;
    #undef	RETURN_TYPE_time_function_parameters2790
    #define	RETURN_TYPE_time_function_parameters2790 MySQLParser_time_function_parameters_return

    MySQLParser_string_literal_return string_literal2800;
    #undef	RETURN_TYPE_string_literal2800
    #define	RETURN_TYPE_string_literal2800 MySQLParser_string_literal_return

    MySQLParser_collation_name_return collation_name2802;
    #undef	RETURN_TYPE_collation_name2802
    #define	RETURN_TYPE_collation_name2802 MySQLParser_collation_name_return

    pANTLR3_BASE_TREE NOT_SYMBOL2781_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2783_tree;
    pANTLR3_BASE_TREE NOW_SYMBOL2785_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2787_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL2788_tree;
    pANTLR3_BASE_TREE NOW_SYMBOL2789_tree;
    pANTLR3_BASE_TREE AUTO_INCREMENT_SYMBOL2791_tree;
    pANTLR3_BASE_TREE SERIAL_SYMBOL2792_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL2793_tree;
    pANTLR3_BASE_TREE VALUE_SYMBOL2794_tree;
    pANTLR3_BASE_TREE UNIQUE_SYMBOL2795_tree;
    pANTLR3_BASE_TREE set2796_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2797_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2798_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2799_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL2801_tree;
    pANTLR3_BASE_TREE COLUMN_FORMAT_SYMBOL2803_tree;
    pANTLR3_BASE_TREE set2804_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL2805_tree;
    pANTLR3_BASE_TREE set2806_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NOT_SYMBOL2781       = NULL;
    DEFAULT_SYMBOL2783       = NULL;
    NOW_SYMBOL2785       = NULL;
    ON_SYMBOL2787       = NULL;
    UPDATE_SYMBOL2788       = NULL;
    NOW_SYMBOL2789       = NULL;
    AUTO_INCREMENT_SYMBOL2791       = NULL;
    SERIAL_SYMBOL2792       = NULL;
    DEFAULT_SYMBOL2793       = NULL;
    VALUE_SYMBOL2794       = NULL;
    UNIQUE_SYMBOL2795       = NULL;
    set2796       = NULL;
    KEY_SYMBOL2797       = NULL;
    KEY_SYMBOL2798       = NULL;
    COMMENT_SYMBOL2799       = NULL;
    COLLATE_SYMBOL2801       = NULL;
    COLUMN_FORMAT_SYMBOL2803       = NULL;
    set2804       = NULL;
    STORAGE_SYMBOL2805       = NULL;
    set2806       = NULL;
    null_literal2782.tree = NULL;

    signed_literal2784.tree = NULL;

    time_function_parameters2786.tree = NULL;

    time_function_parameters2790.tree = NULL;

    string_literal2800.tree = NULL;

    collation_name2802.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NOT_SYMBOL2781_tree   = NULL;
    DEFAULT_SYMBOL2783_tree   = NULL;
    NOW_SYMBOL2785_tree   = NULL;
    ON_SYMBOL2787_tree   = NULL;
    UPDATE_SYMBOL2788_tree   = NULL;
    NOW_SYMBOL2789_tree   = NULL;
    AUTO_INCREMENT_SYMBOL2791_tree   = NULL;
    SERIAL_SYMBOL2792_tree   = NULL;
    DEFAULT_SYMBOL2793_tree   = NULL;
    VALUE_SYMBOL2794_tree   = NULL;
    UNIQUE_SYMBOL2795_tree   = NULL;
    set2796_tree   = NULL;
    KEY_SYMBOL2797_tree   = NULL;
    KEY_SYMBOL2798_tree   = NULL;
    COMMENT_SYMBOL2799_tree   = NULL;
    COLLATE_SYMBOL2801_tree   = NULL;
    COLUMN_FORMAT_SYMBOL2803_tree   = NULL;
    set2804_tree   = NULL;
    STORAGE_SYMBOL2805_tree   = NULL;
    set2806_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2804:10: ( ( NOT_SYMBOL )? null_literal | DEFAULT_SYMBOL ( signed_literal | NOW_SYMBOL ( time_function_parameters )? ) | ON_SYMBOL UPDATE_SYMBOL NOW_SYMBOL ( time_function_parameters )? | AUTO_INCREMENT_SYMBOL | SERIAL_SYMBOL DEFAULT_SYMBOL VALUE_SYMBOL |{...}? UNIQUE_SYMBOL | ( PRIMARY_SYMBOL | UNIQUE_SYMBOL ) KEY_SYMBOL | KEY_SYMBOL | COMMENT_SYMBOL string_literal | COLLATE_SYMBOL collation_name | COLUMN_FORMAT_SYMBOL ( FIXED_SYMBOL | DYNAMIC_SYMBOL | DEFAULT_SYMBOL ) | STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL | DEFAULT_SYMBOL ) )

            ANTLR3_UINT32 alt779;

            alt779=12;

            switch ( LA(1) )
            {
            case NOT_SYMBOL:
            case NULL2_SYMBOL:
            case NULL_SYMBOL:
            	{
            		alt779=1;
            	}
                break;
            case DEFAULT_SYMBOL:
            	{
            		alt779=2;
            	}
                break;
            case ON_SYMBOL:
            	{
            		alt779=3;
            	}
                break;
            case AUTO_INCREMENT_SYMBOL:
            	{
            		alt779=4;
            	}
                break;
            case SERIAL_SYMBOL:
            	{
            		alt779=5;
            	}
                break;
            case UNIQUE_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case KEY_SYMBOL:
            			{
            				{
            				    int LA779_14 = LA(3);
            				    if ( ((LA(2) != KEY_SYMBOL)))
            				    {
            				        alt779=6;
            				    }
            				    else if ( (ANTLR3_TRUE))
            				    {
            				        alt779=7;
            				    }
            				    else
            				    {
            				        if (BACKTRACKING>0)
            				        {
            				            FAILEDFLAG = ANTLR3_TRUE;
            				            return retval;
            				        }


            				        CONSTRUCTEX();
            				        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            				        EXCEPTION->message      = (void *)"";
            				        EXCEPTION->decisionNum  = 779;
            				        EXCEPTION->state        = 14;


            				        goto ruleattributeEx;

            				    }
            				}
            			}
            		    break;
            		case EOF:
            		case COMMENT_SYMBOL:
            		case PARTITION_SYMBOL:
            		case REMOVE_SYMBOL:
            		case AFTER_SYMBOL:
            		case AUTO_INCREMENT_SYMBOL:
            		case COLUMN_FORMAT_SYMBOL:
            		case FIRST_SYMBOL:
            		case SERIAL_SYMBOL:
            		case STORAGE_SYMBOL:
            		case CHECK_SYMBOL:
            		case CLOSE_PAR_SYMBOL:
            		case COLLATE_SYMBOL:
            		case COMMA_SYMBOL:
            		case DEFAULT_SYMBOL:
            		case NOT_SYMBOL:
            		case NULL2_SYMBOL:
            		case NULL_SYMBOL:
            		case ON_SYMBOL:
            		case PRIMARY_SYMBOL:
            		case REFERENCES_SYMBOL:
            		case SEMICOLON_SYMBOL:
            		case UNIQUE_SYMBOL:
            			{
            				alt779=6;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 779;
            		    EXCEPTION->state        = 7;


            		    goto ruleattributeEx;

            		}

            	}
                break;
            case PRIMARY_SYMBOL:
            	{
            		alt779=7;
            	}
                break;
            case KEY_SYMBOL:
            	{
            		alt779=8;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt779=9;
            	}
                break;
            case COLLATE_SYMBOL:
            	{
            		alt779=10;
            	}
                break;
            case COLUMN_FORMAT_SYMBOL:
            	{
            		alt779=11;
            	}
                break;
            case STORAGE_SYMBOL:
            	{
            		alt779=12;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 779;
                EXCEPTION->state        = 0;


                goto ruleattributeEx;

            }

            switch (alt779)
            {
        	case 1:
        	    // MySQL.g:2805:2: ( NOT_SYMBOL )? null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2805:2: ( NOT_SYMBOL )?
        	        {
        	            int alt775=2;
        	            switch ( LA(1) )
        	            {
        	                case NOT_SYMBOL:
        	                	{
        	                		alt775=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt775)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2805:2: NOT_SYMBOL
        	        	    {
        	        	        NOT_SYMBOL2781 = (pANTLR3_COMMON_TOKEN) MATCHT(NOT_SYMBOL, &FOLLOW_NOT_SYMBOL_in_attribute14672);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleattributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NOT_SYMBOL2781_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOT_SYMBOL2781));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOT_SYMBOL2781_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_null_literal_in_attribute14675);
        	        null_literal2782=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal2782.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2806:4: DEFAULT_SYMBOL ( signed_literal | NOW_SYMBOL ( time_function_parameters )? )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2783 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_attribute14680);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2783_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2783));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2783_tree);
        	        }

        	        // MySQL.g:2806:19: ( signed_literal | NOW_SYMBOL ( time_function_parameters )? )
        	        {
        	            int alt777=2;
        	            switch ( LA(1) )
        	            {
        	            case DATE_SYMBOL:
        	            case TIMESTAMP_SYMBOL:
        	            case TIME_SYMBOL:
        	            case BIN_NUMBER:
        	            case DECIMAL_NUMBER:
        	            case DOUBLE_QUOTED_TEXT:
        	            case FALSE_SYMBOL:
        	            case FLOAT_NUMBER:
        	            case HEX_NUMBER:
        	            case INT_NUMBER:
        	            case LONG_NUMBER:
        	            case MINUS_OPERATOR:
        	            case NCHAR_TEXT:
        	            case NULL2_SYMBOL:
        	            case NULL_SYMBOL:
        	            case PLUS_OPERATOR:
        	            case SINGLE_QUOTED_TEXT:
        	            case TRUE_SYMBOL:
        	            case ULONGLONG_NUMBER:
        	            case UNDERSCORE_CHARSET:
        	            	{
        	            		alt777=1;
        	            	}
        	                break;
        	            case NOW_SYMBOL:
        	            	{
        	            		alt777=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 777;
        	                EXCEPTION->state        = 0;


        	                goto ruleattributeEx;

        	            }

        	            switch (alt777)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2806:20: signed_literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_signed_literal_in_attribute14683);
        	        	        signed_literal2784=signed_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleattributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, signed_literal2784.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:2806:37: NOW_SYMBOL ( time_function_parameters )?
        	        	    {
        	        	        NOW_SYMBOL2785 = (pANTLR3_COMMON_TOKEN) MATCHT(NOW_SYMBOL, &FOLLOW_NOW_SYMBOL_in_attribute14687);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleattributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        NOW_SYMBOL2785_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOW_SYMBOL2785));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, NOW_SYMBOL2785_tree);
        	        	        }

        	        	        // MySQL.g:2806:48: ( time_function_parameters )?
        	        	        {
        	        	            int alt776=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case OPEN_PAR_SYMBOL:
        	        	                	{
        	        	                		alt776=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt776)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:2806:48: time_function_parameters
        	        	        	    {
        	        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_attribute14689);
        	        	        	        time_function_parameters2786=time_function_parameters(ctx);

        	        	        	        FOLLOWPOP();
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto ruleattributeEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2786.tree);

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2807:4: ON_SYMBOL UPDATE_SYMBOL NOW_SYMBOL ( time_function_parameters )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ON_SYMBOL2787 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_attribute14696);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ON_SYMBOL2787_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2787));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2787_tree);
        	        }

        	        UPDATE_SYMBOL2788 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_attribute14698);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UPDATE_SYMBOL2788_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL2788));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL2788_tree);
        	        }

        	        NOW_SYMBOL2789 = (pANTLR3_COMMON_TOKEN) MATCHT(NOW_SYMBOL, &FOLLOW_NOW_SYMBOL_in_attribute14700);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NOW_SYMBOL2789_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NOW_SYMBOL2789));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NOW_SYMBOL2789_tree);
        	        }

        	        // MySQL.g:2807:39: ( time_function_parameters )?
        	        {
        	            int alt778=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt778=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt778)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2807:39: time_function_parameters
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_time_function_parameters_in_attribute14702);
        	        	        time_function_parameters2790=time_function_parameters(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleattributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, time_function_parameters2790.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2808:4: AUTO_INCREMENT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTO_INCREMENT_SYMBOL2791 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTO_INCREMENT_SYMBOL, &FOLLOW_AUTO_INCREMENT_SYMBOL_in_attribute14708);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTO_INCREMENT_SYMBOL2791_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTO_INCREMENT_SYMBOL2791));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTO_INCREMENT_SYMBOL2791_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2809:4: SERIAL_SYMBOL DEFAULT_SYMBOL VALUE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SERIAL_SYMBOL2792 = (pANTLR3_COMMON_TOKEN) MATCHT(SERIAL_SYMBOL, &FOLLOW_SERIAL_SYMBOL_in_attribute14713);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SERIAL_SYMBOL2792_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERIAL_SYMBOL2792));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SERIAL_SYMBOL2792_tree);
        	        }

        	        DEFAULT_SYMBOL2793 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_attribute14715);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2793_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2793));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2793_tree);
        	        }

        	        VALUE_SYMBOL2794 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUE_SYMBOL, &FOLLOW_VALUE_SYMBOL_in_attribute14717);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VALUE_SYMBOL2794_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUE_SYMBOL2794));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VALUE_SYMBOL2794_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2810: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 *)"attribute";


        	        }

        	        UNIQUE_SYMBOL2795 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_attribute14724);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNIQUE_SYMBOL2795_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNIQUE_SYMBOL2795));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNIQUE_SYMBOL2795_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2811:4: ( PRIMARY_SYMBOL | UNIQUE_SYMBOL ) KEY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set2796=(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, set2796))
        	            );
        	            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 ruleattributeEx;
        	        }


        	        KEY_SYMBOL2797 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_attribute14737);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_SYMBOL2797_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2797));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2797_tree);
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2812:4: KEY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_SYMBOL2798 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_attribute14742);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_SYMBOL2798_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2798));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2798_tree);
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2813:4: COMMENT_SYMBOL string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL2799 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_attribute14747);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2799_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2799));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2799_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_attribute14749);
        	        string_literal2800=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2800.tree);

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2814:4: COLLATE_SYMBOL collation_name
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COLLATE_SYMBOL2801 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_attribute14754);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COLLATE_SYMBOL2801_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL2801));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL2801_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_collation_name_in_attribute14756);
        	        collation_name2802=collation_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, collation_name2802.tree);

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2815:4: COLUMN_FORMAT_SYMBOL ( FIXED_SYMBOL | DYNAMIC_SYMBOL | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COLUMN_FORMAT_SYMBOL2803 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMN_FORMAT_SYMBOL, &FOLLOW_COLUMN_FORMAT_SYMBOL_in_attribute14761);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COLUMN_FORMAT_SYMBOL2803_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMN_FORMAT_SYMBOL2803));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMN_FORMAT_SYMBOL2803_tree);
        	        }

        	        set2804=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DYNAMIC_SYMBOL || LA(1) == FIXED_SYMBOL || LA(1) == DEFAULT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2804))
        	            );
        	            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 ruleattributeEx;
        	        }


        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2816:4: STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STORAGE_SYMBOL2805 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_attribute14778);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleattributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STORAGE_SYMBOL2805_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL2805));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL2805_tree);
        	        }

        	        set2806=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DISK_SYMBOL || LA(1) == MEMORY_SYMBOL || LA(1) == DEFAULT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2806))
        	            );
        	            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 ruleattributeEx;
        	        }


        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleattributeEx; /* Prevent compiler warnings */
    ruleattributeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end attribute */

/**
 * $ANTLR start gcol_attribute
 * MySQL.g:2820:1: gcol_attribute : ( UNIQUE_SYMBOL ( options {greedy=true; } : KEY_SYMBOL )? | COMMENT_SYMBOL text_string | ( not_rule )? NULL_SYMBOL | ( PRIMARY_SYMBOL )? KEY_SYMBOL );
 */
static MySQLParser_gcol_attribute_return
gcol_attribute(pMySQLParser ctx)
{
    MySQLParser_gcol_attribute_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNIQUE_SYMBOL2807;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2808;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2809;
    pANTLR3_COMMON_TOKEN    NULL_SYMBOL2812;
    pANTLR3_COMMON_TOKEN    PRIMARY_SYMBOL2813;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL2814;
    MySQLParser_text_string_return text_string2810;
    #undef	RETURN_TYPE_text_string2810
    #define	RETURN_TYPE_text_string2810 MySQLParser_text_string_return

    MySQLParser_not_rule_return not_rule2811;
    #undef	RETURN_TYPE_not_rule2811
    #define	RETURN_TYPE_not_rule2811 MySQLParser_not_rule_return

    pANTLR3_BASE_TREE UNIQUE_SYMBOL2807_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2808_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2809_tree;
    pANTLR3_BASE_TREE NULL_SYMBOL2812_tree;
    pANTLR3_BASE_TREE PRIMARY_SYMBOL2813_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL2814_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNIQUE_SYMBOL2807       = NULL;
    KEY_SYMBOL2808       = NULL;
    COMMENT_SYMBOL2809       = NULL;
    NULL_SYMBOL2812       = NULL;
    PRIMARY_SYMBOL2813       = NULL;
    KEY_SYMBOL2814       = NULL;
    text_string2810.tree = NULL;

    not_rule2811.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNIQUE_SYMBOL2807_tree   = NULL;
    KEY_SYMBOL2808_tree   = NULL;
    COMMENT_SYMBOL2809_tree   = NULL;
    NULL_SYMBOL2812_tree   = NULL;
    PRIMARY_SYMBOL2813_tree   = NULL;
    KEY_SYMBOL2814_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2820:15: ( UNIQUE_SYMBOL ( options {greedy=true; } : KEY_SYMBOL )? | COMMENT_SYMBOL text_string | ( not_rule )? NULL_SYMBOL | ( PRIMARY_SYMBOL )? KEY_SYMBOL )

            ANTLR3_UINT32 alt783;

            alt783=4;

            switch ( LA(1) )
            {
            case UNIQUE_SYMBOL:
            	{
            		alt783=1;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt783=2;
            	}
                break;
            case NOT2_SYMBOL:
            case NOT_SYMBOL:
            case NULL_SYMBOL:
            	{
            		alt783=3;
            	}
                break;
            case KEY_SYMBOL:
            case PRIMARY_SYMBOL:
            	{
            		alt783=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 783;
                EXCEPTION->state        = 0;


                goto rulegcol_attributeEx;

            }

            switch (alt783)
            {
        	case 1:
        	    // MySQL.g:2821:2: UNIQUE_SYMBOL ( options {greedy=true; } : KEY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNIQUE_SYMBOL2807 = (pANTLR3_COMMON_TOKEN) MATCHT(UNIQUE_SYMBOL, &FOLLOW_UNIQUE_SYMBOL_in_gcol_attribute14800);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNIQUE_SYMBOL2807_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNIQUE_SYMBOL2807));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNIQUE_SYMBOL2807_tree);
        	        }

        	        // MySQL.g:2821:16: ( options {greedy=true; } : KEY_SYMBOL )?
        	        {
        	            int alt780=2;
        	            switch ( LA(1) )
        	            {
        	                case KEY_SYMBOL:
        	                	{
        	                		alt780=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt780)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2821:45: KEY_SYMBOL
        	        	    {
        	        	        KEY_SYMBOL2808 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_gcol_attribute14815);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegcol_attributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        KEY_SYMBOL2808_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2808));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2808_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2822:4: COMMENT_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL2809 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_gcol_attribute14823);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2809_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2809));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2809_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_gcol_attribute14825);
        	        text_string2810=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2810.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2823:4: ( not_rule )? NULL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2823:4: ( not_rule )?
        	        {
        	            int alt781=2;
        	            switch ( LA(1) )
        	            {
        	                case NOT2_SYMBOL:
        	                case NOT_SYMBOL:
        	                	{
        	                		alt781=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt781)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2823:4: not_rule
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_not_rule_in_gcol_attribute14830);
        	        	        not_rule2811=not_rule(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegcol_attributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not_rule2811.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        NULL_SYMBOL2812 = (pANTLR3_COMMON_TOKEN) MATCHT(NULL_SYMBOL, &FOLLOW_NULL_SYMBOL_in_gcol_attribute14833);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NULL_SYMBOL2812_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NULL_SYMBOL2812));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NULL_SYMBOL2812_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2824:4: ( PRIMARY_SYMBOL )? KEY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:2824:4: ( PRIMARY_SYMBOL )?
        	        {
        	            int alt782=2;
        	            switch ( LA(1) )
        	            {
        	                case PRIMARY_SYMBOL:
        	                	{
        	                		alt782=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt782)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2824:4: PRIMARY_SYMBOL
        	        	    {
        	        	        PRIMARY_SYMBOL2813 = (pANTLR3_COMMON_TOKEN) MATCHT(PRIMARY_SYMBOL, &FOLLOW_PRIMARY_SYMBOL_in_gcol_attribute14838);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulegcol_attributeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRIMARY_SYMBOL2813_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRIMARY_SYMBOL2813));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRIMARY_SYMBOL2813_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        KEY_SYMBOL2814 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_gcol_attribute14841);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulegcol_attributeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_SYMBOL2814_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL2814));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL2814_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulegcol_attributeEx; /* Prevent compiler warnings */
    rulegcol_attributeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end gcol_attribute */

/**
 * $ANTLR start reference_definition
 * MySQL.g:2833:1: reference_definition : REFERENCES_SYMBOL ^ table_ref ( index_columns )? ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )? ( ON_SYMBOL DELETE_SYMBOL reference_option ( ON_SYMBOL UPDATE_SYMBOL reference_option )? | ON_SYMBOL UPDATE_SYMBOL reference_option ( ON_SYMBOL DELETE_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_SYMBOL2815;
    pANTLR3_COMMON_TOKEN    MATCH_SYMBOL2818;
    pANTLR3_COMMON_TOKEN    set2819;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2820;
    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL2821;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2823;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL2824;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2826;
    pANTLR3_COMMON_TOKEN    UPDATE_SYMBOL2827;
    pANTLR3_COMMON_TOKEN    ON_SYMBOL2829;
    pANTLR3_COMMON_TOKEN    DELETE_SYMBOL2830;
    MySQLParser_table_ref_return table_ref2816;
    #undef	RETURN_TYPE_table_ref2816
    #define	RETURN_TYPE_table_ref2816 MySQLParser_table_ref_return

    MySQLParser_index_columns_return index_columns2817;
    #undef	RETURN_TYPE_index_columns2817
    #define	RETURN_TYPE_index_columns2817 MySQLParser_index_columns_return

    MySQLParser_reference_option_return reference_option2822;
    #undef	RETURN_TYPE_reference_option2822
    #define	RETURN_TYPE_reference_option2822 MySQLParser_reference_option_return

    MySQLParser_reference_option_return reference_option2825;
    #undef	RETURN_TYPE_reference_option2825
    #define	RETURN_TYPE_reference_option2825 MySQLParser_reference_option_return

    MySQLParser_reference_option_return reference_option2828;
    #undef	RETURN_TYPE_reference_option2828
    #define	RETURN_TYPE_reference_option2828 MySQLParser_reference_option_return

    MySQLParser_reference_option_return reference_option2831;
    #undef	RETURN_TYPE_reference_option2831
    #define	RETURN_TYPE_reference_option2831 MySQLParser_reference_option_return

    pANTLR3_BASE_TREE REFERENCES_SYMBOL2815_tree;
    pANTLR3_BASE_TREE MATCH_SYMBOL2818_tree;
    pANTLR3_BASE_TREE set2819_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2820_tree;
    pANTLR3_BASE_TREE DELETE_SYMBOL2821_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2823_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL2824_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2826_tree;
    pANTLR3_BASE_TREE UPDATE_SYMBOL2827_tree;
    pANTLR3_BASE_TREE ON_SYMBOL2829_tree;
    pANTLR3_BASE_TREE DELETE_SYMBOL2830_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REFERENCES_SYMBOL2815       = NULL;
    MATCH_SYMBOL2818       = NULL;
    set2819       = NULL;
    ON_SYMBOL2820       = NULL;
    DELETE_SYMBOL2821       = NULL;
    ON_SYMBOL2823       = NULL;
    UPDATE_SYMBOL2824       = NULL;
    ON_SYMBOL2826       = NULL;
    UPDATE_SYMBOL2827       = NULL;
    ON_SYMBOL2829       = NULL;
    DELETE_SYMBOL2830       = NULL;
    table_ref2816.tree = NULL;

    index_columns2817.tree = NULL;

    reference_option2822.tree = NULL;

    reference_option2825.tree = NULL;

    reference_option2828.tree = NULL;

    reference_option2831.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REFERENCES_SYMBOL2815_tree   = NULL;
    MATCH_SYMBOL2818_tree   = NULL;
    set2819_tree   = NULL;
    ON_SYMBOL2820_tree   = NULL;
    DELETE_SYMBOL2821_tree   = NULL;
    ON_SYMBOL2823_tree   = NULL;
    UPDATE_SYMBOL2824_tree   = NULL;
    ON_SYMBOL2826_tree   = NULL;
    UPDATE_SYMBOL2827_tree   = NULL;
    ON_SYMBOL2829_tree   = NULL;
    DELETE_SYMBOL2830_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2833:21: ( REFERENCES_SYMBOL ^ table_ref ( index_columns )? ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )? ( ON_SYMBOL DELETE_SYMBOL reference_option ( ON_SYMBOL UPDATE_SYMBOL reference_option )? | ON_SYMBOL UPDATE_SYMBOL reference_option ( ON_SYMBOL DELETE_SYMBOL reference_option )? )? )
        // MySQL.g:2834:2: REFERENCES_SYMBOL ^ table_ref ( index_columns )? ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )? ( ON_SYMBOL DELETE_SYMBOL reference_option ( ON_SYMBOL UPDATE_SYMBOL reference_option )? | ON_SYMBOL UPDATE_SYMBOL reference_option ( ON_SYMBOL DELETE_SYMBOL reference_option )? )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            REFERENCES_SYMBOL2815 = (pANTLR3_COMMON_TOKEN) MATCHT(REFERENCES_SYMBOL, &FOLLOW_REFERENCES_SYMBOL_in_reference_definition14853);
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            REFERENCES_SYMBOL2815_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REFERENCES_SYMBOL2815))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, REFERENCES_SYMBOL2815_tree, root_0));
            }

            FOLLOWPUSH(FOLLOW_table_ref_in_reference_definition14856);
            table_ref2816=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulereference_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref2816.tree);

            // MySQL.g:2834:31: ( index_columns )?
            {
                int alt784=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt784=1;
                    	}
                        break;
                }

                switch (alt784)
                {
            	case 1:
            	    // MySQL.g:2834:31: index_columns
            	    {
            	        FOLLOWPUSH(FOLLOW_index_columns_in_reference_definition14858);
            	        index_columns2817=index_columns(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_columns2817.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2837:3: ( MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL ) )?
            {
                int alt785=2;
                switch ( LA(1) )
                {
                    case MATCH_SYMBOL:
                    	{
                    		alt785=1;
                    	}
                        break;
                }

                switch (alt785)
                {
            	case 1:
            	    // MySQL.g:2837:4: MATCH_SYMBOL ( FULL_SYMBOL | PARTIAL_SYMBOL | SIMPLE_SYMBOL )
            	    {
            	        MATCH_SYMBOL2818 = (pANTLR3_COMMON_TOKEN) MATCHT(MATCH_SYMBOL, &FOLLOW_MATCH_SYMBOL_in_reference_definition14870);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MATCH_SYMBOL2818_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MATCH_SYMBOL2818));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MATCH_SYMBOL2818_tree);
            	        }

            	        set2819=(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, set2819))
            	            );
            	            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:2838:3: ( ON_SYMBOL DELETE_SYMBOL reference_option ( ON_SYMBOL UPDATE_SYMBOL reference_option )? | ON_SYMBOL UPDATE_SYMBOL reference_option ( ON_SYMBOL DELETE_SYMBOL reference_option )? )?
            {
                int alt788=3;
                switch ( LA(1) )
                {
                    case ON_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case DELETE_SYMBOL:
                    		    	{
                    		    		alt788=1;
                    		    	}
                    		        break;
                    		    case UPDATE_SYMBOL:
                    		    	{
                    		    		alt788=2;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt788)
                {
            	case 1:
            	    // MySQL.g:2839:4: ON_SYMBOL DELETE_SYMBOL reference_option ( ON_SYMBOL UPDATE_SYMBOL reference_option )?
            	    {
            	        ON_SYMBOL2820 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition14893);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL2820_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2820));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2820_tree);
            	        }

            	        DELETE_SYMBOL2821 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_reference_definition14895);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DELETE_SYMBOL2821_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL2821));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL2821_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition14897);
            	        reference_option2822=reference_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2822.tree);

            	        // MySQL.g:2839:45: ( ON_SYMBOL UPDATE_SYMBOL reference_option )?
            	        {
            	            int alt786=2;
            	            switch ( LA(1) )
            	            {
            	                case ON_SYMBOL:
            	                	{
            	                		alt786=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt786)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2839:46: ON_SYMBOL UPDATE_SYMBOL reference_option
            	        	    {
            	        	        ON_SYMBOL2823 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition14900);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ON_SYMBOL2823_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2823));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2823_tree);
            	        	        }

            	        	        UPDATE_SYMBOL2824 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_reference_definition14902);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        UPDATE_SYMBOL2824_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL2824));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL2824_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition14904);
            	        	        reference_option2825=reference_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2825.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2840:6: ON_SYMBOL UPDATE_SYMBOL reference_option ( ON_SYMBOL DELETE_SYMBOL reference_option )?
            	    {
            	        ON_SYMBOL2826 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition14913);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        ON_SYMBOL2826_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2826));
            	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2826_tree);
            	        }

            	        UPDATE_SYMBOL2827 = (pANTLR3_COMMON_TOKEN) MATCHT(UPDATE_SYMBOL, &FOLLOW_UPDATE_SYMBOL_in_reference_definition14915);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        UPDATE_SYMBOL2827_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UPDATE_SYMBOL2827));
            	        ADAPTOR->addChild(ADAPTOR, root_0, UPDATE_SYMBOL2827_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition14917);
            	        reference_option2828=reference_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulereference_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2828.tree);

            	        // MySQL.g:2840:47: ( ON_SYMBOL DELETE_SYMBOL reference_option )?
            	        {
            	            int alt787=2;
            	            switch ( LA(1) )
            	            {
            	                case ON_SYMBOL:
            	                	{
            	                		alt787=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt787)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2840:48: ON_SYMBOL DELETE_SYMBOL reference_option
            	        	    {
            	        	        ON_SYMBOL2829 = (pANTLR3_COMMON_TOKEN) MATCHT(ON_SYMBOL, &FOLLOW_ON_SYMBOL_in_reference_definition14920);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        ON_SYMBOL2829_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ON_SYMBOL2829));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, ON_SYMBOL2829_tree);
            	        	        }

            	        	        DELETE_SYMBOL2830 = (pANTLR3_COMMON_TOKEN) MATCHT(DELETE_SYMBOL, &FOLLOW_DELETE_SYMBOL_in_reference_definition14922);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        DELETE_SYMBOL2830_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELETE_SYMBOL2830));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, DELETE_SYMBOL2830_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_reference_option_in_reference_definition14924);
            	        	        reference_option2831=reference_option(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulereference_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, reference_option2831.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    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:2844: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_SYMBOL2832;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL2834;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2836;
    MySQLParser_index_column_return index_column2833;
    #undef	RETURN_TYPE_index_column2833
    #define	RETURN_TYPE_index_column2833 MySQLParser_index_column_return

    MySQLParser_index_column_return index_column2835;
    #undef	RETURN_TYPE_index_column2835
    #define	RETURN_TYPE_index_column2835 MySQLParser_index_column_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2832_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL2834_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2836_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2832       = NULL;
    COMMA_SYMBOL2834       = NULL;
    CLOSE_PAR_SYMBOL2836       = NULL;
    index_column2833.tree = NULL;

    index_column2835.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2832_tree   = NULL;
    COMMA_SYMBOL2834_tree   = NULL;
    CLOSE_PAR_SYMBOL2836_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2844:14: ( OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )* CLOSE_PAR_SYMBOL )
        // MySQL.g:2845:2: OPEN_PAR_SYMBOL index_column ( COMMA_SYMBOL index_column )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2832 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_index_columns14940);
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2832_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2832));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2832_tree);
            }

            FOLLOWPUSH(FOLLOW_index_column_in_index_columns14942);
            index_column2833=index_column(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_column2833.tree);

            // MySQL.g:2845:31: ( COMMA_SYMBOL index_column )*

            for (;;)
            {
                int alt789=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt789=1;
                	}
                    break;

                }

                switch (alt789)
                {
            	case 1:
            	    // MySQL.g:2845:32: COMMA_SYMBOL index_column
            	    {
            	        COMMA_SYMBOL2834 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_index_columns14945);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL2834_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2834));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2834_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_index_column_in_index_columns14947);
            	        index_column2835=index_column(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_column2835.tree);

            	    }
            	    break;

            	default:
            	    goto loop789;	/* break out of the loop */
            	    break;
                }
            }
            loop789: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL2836 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_index_columns14951);
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2836_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2836));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2836_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:2848: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 identifier2837;
    #undef	RETURN_TYPE_identifier2837
    #define	RETURN_TYPE_identifier2837 MySQLParser_identifier_return

    MySQLParser_field_length_return field_length2838;
    #undef	RETURN_TYPE_field_length2838
    #define	RETURN_TYPE_field_length2838 MySQLParser_field_length_return

    MySQLParser_direction_return direction2839;
    #undef	RETURN_TYPE_direction2839
    #define	RETURN_TYPE_direction2839 MySQLParser_direction_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier2837.tree = NULL;

    field_length2838.tree = NULL;

    direction2839.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2848:13: ( identifier ( field_length )? ( direction )? )
        // MySQL.g:2849:2: identifier ( field_length )? ( direction )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_index_column14960);
            identifier2837=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_columnEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2837.tree);

            // MySQL.g:2849:13: ( field_length )?
            {
                int alt790=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt790=1;
                    	}
                        break;
                }

                switch (alt790)
                {
            	case 1:
            	    // MySQL.g:2849:13: field_length
            	    {
            	        FOLLOWPUSH(FOLLOW_field_length_in_index_column14962);
            	        field_length2838=field_length(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2838.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:2849:27: ( direction )?
            {
                int alt791=2;
                switch ( LA(1) )
                {
                    case ASC_SYMBOL:
                    case DESC_SYMBOL:
                    	{
                    		alt791=1;
                    	}
                        break;
                }

                switch (alt791)
                {
            	case 1:
            	    // MySQL.g:2849:27: direction
            	    {
            	        FOLLOWPUSH(FOLLOW_direction_in_index_column14965);
            	        direction2839=direction(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleindex_columnEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, direction2839.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:2852:1: index_type : ( USING_SYMBOL | TYPE_SYMBOL ) ( BTREE_SYMBOL | RTREE_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    set2840;
    pANTLR3_COMMON_TOKEN    set2841;

    pANTLR3_BASE_TREE set2840_tree;
    pANTLR3_BASE_TREE set2841_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2840       = NULL;
    set2841       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2840_tree   = NULL;
    set2841_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2852:11: ( ( USING_SYMBOL | TYPE_SYMBOL ) ( BTREE_SYMBOL | RTREE_SYMBOL | HASH_SYMBOL ) )
        // MySQL.g:2853:2: ( USING_SYMBOL | TYPE_SYMBOL ) ( BTREE_SYMBOL | RTREE_SYMBOL | HASH_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set2840=(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, set2840))
                );
                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;
            }


            set2841=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == BTREE_SYMBOL || LA(1) == HASH_SYMBOL || LA(1) == RTREE_SYMBOL )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set2841))
                );
                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 normal_index_option
 * MySQL.g:2856:1: normal_index_option : ( index_type | all_key_option );
 */
static MySQLParser_normal_index_option_return
normal_index_option(pMySQLParser ctx)
{
    MySQLParser_normal_index_option_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_index_type_return index_type2842;
    #undef	RETURN_TYPE_index_type2842
    #define	RETURN_TYPE_index_type2842 MySQLParser_index_type_return

    MySQLParser_all_key_option_return all_key_option2843;
    #undef	RETURN_TYPE_all_key_option2843
    #define	RETURN_TYPE_all_key_option2843 MySQLParser_all_key_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    index_type2842.tree = NULL;

    all_key_option2843.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2856:20: ( index_type | all_key_option )

            ANTLR3_UINT32 alt792;

            alt792=2;

            switch ( LA(1) )
            {
            case TYPE_SYMBOL:
            case USING_SYMBOL:
            	{
            		alt792=1;
            	}
                break;
            case COMMENT_SYMBOL:
            case KEY_BLOCK_SIZE_SYMBOL:
            	{
            		alt792=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 792;
                EXCEPTION->state        = 0;


                goto rulenormal_index_optionEx;

            }

            switch (alt792)
            {
        	case 1:
        	    // MySQL.g:2857:2: index_type
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_index_type_in_normal_index_option15002);
        	        index_type2842=index_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenormal_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, index_type2842.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2858:4: all_key_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_all_key_option_in_normal_index_option15007);
        	        all_key_option2843=all_key_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenormal_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_key_option2843.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulenormal_index_optionEx; /* Prevent compiler warnings */
    rulenormal_index_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 normal_index_option */

/**
 * $ANTLR start fulltext_index_option
 * MySQL.g:2861:1: fulltext_index_option : ( WITH_SYMBOL PARSER_SYMBOL identifier | all_key_option );
 */
static MySQLParser_fulltext_index_option_return
fulltext_index_option(pMySQLParser ctx)
{
    MySQLParser_fulltext_index_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    WITH_SYMBOL2844;
    pANTLR3_COMMON_TOKEN    PARSER_SYMBOL2845;
    MySQLParser_identifier_return identifier2846;
    #undef	RETURN_TYPE_identifier2846
    #define	RETURN_TYPE_identifier2846 MySQLParser_identifier_return

    MySQLParser_all_key_option_return all_key_option2847;
    #undef	RETURN_TYPE_all_key_option2847
    #define	RETURN_TYPE_all_key_option2847 MySQLParser_all_key_option_return

    pANTLR3_BASE_TREE WITH_SYMBOL2844_tree;
    pANTLR3_BASE_TREE PARSER_SYMBOL2845_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    WITH_SYMBOL2844       = NULL;
    PARSER_SYMBOL2845       = NULL;
    identifier2846.tree = NULL;

    all_key_option2847.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    WITH_SYMBOL2844_tree   = NULL;
    PARSER_SYMBOL2845_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2861:22: ( WITH_SYMBOL PARSER_SYMBOL identifier | all_key_option )

            ANTLR3_UINT32 alt793;

            alt793=2;

            switch ( LA(1) )
            {
            case WITH_SYMBOL:
            	{
            		alt793=1;
            	}
                break;
            case COMMENT_SYMBOL:
            case KEY_BLOCK_SIZE_SYMBOL:
            	{
            		alt793=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 793;
                EXCEPTION->state        = 0;


                goto rulefulltext_index_optionEx;

            }

            switch (alt793)
            {
        	case 1:
        	    // MySQL.g:2862:2: WITH_SYMBOL PARSER_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        WITH_SYMBOL2844 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_fulltext_index_option15016);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefulltext_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        WITH_SYMBOL2844_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL2844));
        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL2844_tree);
        	        }

        	        PARSER_SYMBOL2845 = (pANTLR3_COMMON_TOKEN) MATCHT(PARSER_SYMBOL, &FOLLOW_PARSER_SYMBOL_in_fulltext_index_option15018);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefulltext_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PARSER_SYMBOL2845_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARSER_SYMBOL2845));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PARSER_SYMBOL2845_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_fulltext_index_option15020);
        	        identifier2846=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefulltext_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier2846.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2863:4: all_key_option
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_all_key_option_in_fulltext_index_option15025);
        	        all_key_option2847=all_key_option(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefulltext_index_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_key_option2847.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulefulltext_index_optionEx; /* Prevent compiler warnings */
    rulefulltext_index_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 fulltext_index_option */

/**
 * $ANTLR start spatial_index_option
 * MySQL.g:2866:1: spatial_index_option : all_key_option ;
 */
static MySQLParser_spatial_index_option_return
spatial_index_option(pMySQLParser ctx)
{
    MySQLParser_spatial_index_option_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_all_key_option_return all_key_option2848;
    #undef	RETURN_TYPE_all_key_option2848
    #define	RETURN_TYPE_all_key_option2848 MySQLParser_all_key_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    all_key_option2848.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2866:21: ( all_key_option )
        // MySQL.g:2867:2: all_key_option
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_all_key_option_in_spatial_index_option15034);
            all_key_option2848=all_key_option(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulespatial_index_optionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, all_key_option2848.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulespatial_index_optionEx; /* Prevent compiler warnings */
    rulespatial_index_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 spatial_index_option */

/**
 * $ANTLR start all_key_option
 * MySQL.g:2870:1: all_key_option : ( KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number |{...}? COMMENT_SYMBOL string_literal );
 */
static MySQLParser_all_key_option_return
all_key_option(pMySQLParser ctx)
{
    MySQLParser_all_key_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    KEY_BLOCK_SIZE_SYMBOL2849;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2850;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2852;
    MySQLParser_ulong_number_return ulong_number2851;
    #undef	RETURN_TYPE_ulong_number2851
    #define	RETURN_TYPE_ulong_number2851 MySQLParser_ulong_number_return

    MySQLParser_string_literal_return string_literal2853;
    #undef	RETURN_TYPE_string_literal2853
    #define	RETURN_TYPE_string_literal2853 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE KEY_BLOCK_SIZE_SYMBOL2849_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2850_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2852_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    KEY_BLOCK_SIZE_SYMBOL2849       = NULL;
    EQUAL_OPERATOR2850       = NULL;
    COMMENT_SYMBOL2852       = NULL;
    ulong_number2851.tree = NULL;

    string_literal2853.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    KEY_BLOCK_SIZE_SYMBOL2849_tree   = NULL;
    EQUAL_OPERATOR2850_tree   = NULL;
    COMMENT_SYMBOL2852_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2870:15: ( KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number |{...}? COMMENT_SYMBOL string_literal )

            ANTLR3_UINT32 alt795;

            alt795=2;

            switch ( LA(1) )
            {
            case KEY_BLOCK_SIZE_SYMBOL:
            	{
            		alt795=1;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt795=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 795;
                EXCEPTION->state        = 0;


                goto ruleall_key_optionEx;

            }

            switch (alt795)
            {
        	case 1:
        	    // MySQL.g:2871:2: KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_BLOCK_SIZE_SYMBOL2849 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_BLOCK_SIZE_SYMBOL, &FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_all_key_option15043);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_key_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_BLOCK_SIZE_SYMBOL2849_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_BLOCK_SIZE_SYMBOL2849));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_BLOCK_SIZE_SYMBOL2849_tree);
        	        }

        	        // MySQL.g:2871:24: ( EQUAL_OPERATOR )?
        	        {
        	            int alt794=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt794=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt794)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2871:24: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2850 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_all_key_option15045);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleall_key_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2850_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2850));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2850_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_all_key_option15048);
        	        ulong_number2851=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_key_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2851.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2872: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 *)"all_key_option";


        	        }

        	        COMMENT_SYMBOL2852 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_all_key_option15055);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_key_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2852_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2852));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2852_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_all_key_option15057);
        	        string_literal2853=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleall_key_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal2853.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleall_key_optionEx; /* Prevent compiler warnings */
    ruleall_key_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 all_key_option */

/**
 * $ANTLR start reference_option
 * MySQL.g:2875: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_SYMBOL2854;
    pANTLR3_COMMON_TOKEN    CASCADE_SYMBOL2855;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2856;
    pANTLR3_COMMON_TOKEN    NO_SYMBOL2858;
    pANTLR3_COMMON_TOKEN    ACTION_SYMBOL2859;
    MySQLParser_null_literal_return null_literal2857;
    #undef	RETURN_TYPE_null_literal2857
    #define	RETURN_TYPE_null_literal2857 MySQLParser_null_literal_return

    pANTLR3_BASE_TREE RESTRICT_SYMBOL2854_tree;
    pANTLR3_BASE_TREE CASCADE_SYMBOL2855_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2856_tree;
    pANTLR3_BASE_TREE NO_SYMBOL2858_tree;
    pANTLR3_BASE_TREE ACTION_SYMBOL2859_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    RESTRICT_SYMBOL2854       = NULL;
    CASCADE_SYMBOL2855       = NULL;
    SET_SYMBOL2856       = NULL;
    NO_SYMBOL2858       = NULL;
    ACTION_SYMBOL2859       = NULL;
    null_literal2857.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    RESTRICT_SYMBOL2854_tree   = NULL;
    CASCADE_SYMBOL2855_tree   = NULL;
    SET_SYMBOL2856_tree   = NULL;
    NO_SYMBOL2858_tree   = NULL;
    ACTION_SYMBOL2859_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2875:17: ( RESTRICT_SYMBOL | CASCADE_SYMBOL | SET_SYMBOL null_literal | NO_SYMBOL ACTION_SYMBOL )

            ANTLR3_UINT32 alt796;

            alt796=4;

            switch ( LA(1) )
            {
            case RESTRICT_SYMBOL:
            	{
            		alt796=1;
            	}
                break;
            case CASCADE_SYMBOL:
            	{
            		alt796=2;
            	}
                break;
            case SET_SYMBOL:
            	{
            		alt796=3;
            	}
                break;
            case NO_SYMBOL:
            	{
            		alt796=4;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 796;
                EXCEPTION->state        = 0;


                goto rulereference_optionEx;

            }

            switch (alt796)
            {
        	case 1:
        	    // MySQL.g:2876:2: RESTRICT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        RESTRICT_SYMBOL2854 = (pANTLR3_COMMON_TOKEN) MATCHT(RESTRICT_SYMBOL, &FOLLOW_RESTRICT_SYMBOL_in_reference_option15066);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        RESTRICT_SYMBOL2854_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, RESTRICT_SYMBOL2854));
        	        ADAPTOR->addChild(ADAPTOR, root_0, RESTRICT_SYMBOL2854_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2876:20: CASCADE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CASCADE_SYMBOL2855 = (pANTLR3_COMMON_TOKEN) MATCHT(CASCADE_SYMBOL, &FOLLOW_CASCADE_SYMBOL_in_reference_option15070);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CASCADE_SYMBOL2855_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CASCADE_SYMBOL2855));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CASCADE_SYMBOL2855_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2876:37: SET_SYMBOL null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL2856 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_reference_option15074);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2856_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2856));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2856_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_null_literal_in_reference_option15076);
        	        null_literal2857=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal2857.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2876:63: NO_SYMBOL ACTION_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NO_SYMBOL2858 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_SYMBOL, &FOLLOW_NO_SYMBOL_in_reference_option15080);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NO_SYMBOL2858_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_SYMBOL2858));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_SYMBOL2858_tree);
        	        }

        	        ACTION_SYMBOL2859 = (pANTLR3_COMMON_TOKEN) MATCHT(ACTION_SYMBOL, &FOLLOW_ACTION_SYMBOL_in_reference_option15082);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereference_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ACTION_SYMBOL2859_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ACTION_SYMBOL2859));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ACTION_SYMBOL2859_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:2879:1: data_type : data_type_elements -> ^( DATA_TYPE_TOKEN data_type_elements ) ;
 */
static MySQLParser_data_type_return
data_type(pMySQLParser ctx)
{
    MySQLParser_data_type_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_data_type_elements_return data_type_elements2860;
    #undef	RETURN_TYPE_data_type_elements2860
    #define	RETURN_TYPE_data_type_elements2860 MySQLParser_data_type_elements_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_data_type_elements;
    /* Initialize rule variables
     */

    root_0 = NULL;

    data_type_elements2860.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_data_type_elements   = NULL;
    #define CREATE_stream_data_type_elements  if (stream_data_type_elements == NULL) {stream_data_type_elements = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule data_type_elements"); }

    retval.tree  = NULL;

    {
        // MySQL.g:2879:10: ( data_type_elements -> ^( DATA_TYPE_TOKEN data_type_elements ) )
        // MySQL.g:2880:2: data_type_elements
        {
            FOLLOWPUSH(FOLLOW_data_type_elements_in_data_type15091);
            data_type_elements2860=data_type_elements(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledata_typeEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_data_type_elements; stream_data_type_elements->add(stream_data_type_elements, data_type_elements2860.tree, NULL); }

            /* AST REWRITE
             * elements          : data_type_elements
             * 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;
            	// 2880:21: -> ^( DATA_TYPE_TOKEN data_type_elements )
            	{
            	    // MySQL.g:2880:24: ^( DATA_TYPE_TOKEN data_type_elements )
            	    {
            	        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, DATA_TYPE_TOKEN, (pANTLR3_UINT8)"DATA_TYPE_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_data_type_elements == NULL ? NULL : stream_data_type_elements->nextTree(stream_data_type_elements));

            	        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 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 (stream_data_type_elements != NULL) stream_data_type_elements->free(stream_data_type_elements);
    }


            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 data_type_definition
 * MySQL.g:2883:1: data_type_definition : data_type_elements EOF ;
 */
static MySQLParser_data_type_definition_return
data_type_definition(pMySQLParser ctx)
{
    MySQLParser_data_type_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    EOF2862;
    MySQLParser_data_type_elements_return data_type_elements2861;
    #undef	RETURN_TYPE_data_type_elements2861
    #define	RETURN_TYPE_data_type_elements2861 MySQLParser_data_type_elements_return

    pANTLR3_BASE_TREE EOF2862_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EOF2862       = NULL;
    data_type_elements2861.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EOF2862_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2883:21: ( data_type_elements EOF )
        // MySQL.g:2884:2: data_type_elements EOF
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_data_type_elements_in_data_type_definition15109);
            data_type_elements2861=data_type_elements(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledata_type_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type_elements2861.tree);

            EOF2862 = (pANTLR3_COMMON_TOKEN) MATCHT(EOF, &FOLLOW_EOF_in_data_type_definition15111);
            if  (HASEXCEPTION())
            {
                goto ruledata_type_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EOF2862_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EOF2862));
            ADAPTOR->addChild(ADAPTOR, root_0, EOF2862_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruledata_type_definitionEx; /* Prevent compiler warnings */
    ruledata_type_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 data_type_definition */

/**
 * $ANTLR start data_type_elements
 * MySQL.g:2887:1: data_type_elements : ( integer_type ( field_length )? ( field_options )? | real_literal ( precision )? ( field_options )? | FLOAT_SYMBOL ( float_options )? ( field_options )? | BIT_SYMBOL ( field_length )? | BOOL_SYMBOL | BOOLEAN_SYMBOL | CHAR_SYMBOL ( field_length )? ( string_binary )? | nchar_literal ( field_length )? ( BINARY_SYMBOL )? | BINARY_SYMBOL ( field_length )? | varchar_literal field_length ( string_binary )? | 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 )? ( string_binary )? | TINYTEXT_SYMBOL ( string_binary )? | TEXT_SYMBOL ( field_length )? ( string_binary )? | MEDIUMTEXT_SYMBOL ( string_binary )? | LONGTEXT_SYMBOL ( string_binary )? | DECIMAL_SYMBOL ( float_options )? ( field_options )? | NUMERIC_SYMBOL ( float_options )? ( field_options )? | FIXED_SYMBOL ( float_options )? ( field_options )? | ENUM_SYMBOL string_list ( string_binary )? | SET_SYMBOL string_list ( string_binary )? | SERIAL_SYMBOL |{...}? JSON_SYMBOL | spatial_type );
 */
static MySQLParser_data_type_elements_return
data_type_elements(pMySQLParser ctx)
{
    MySQLParser_data_type_elements_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    FLOAT_SYMBOL2869;
    pANTLR3_COMMON_TOKEN    BIT_SYMBOL2872;
    pANTLR3_COMMON_TOKEN    BOOL_SYMBOL2874;
    pANTLR3_COMMON_TOKEN    BOOLEAN_SYMBOL2875;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL2876;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2881;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2882;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2889;
    pANTLR3_COMMON_TOKEN    VARBINARY_SYMBOL2890;
    pANTLR3_COMMON_TOKEN    YEAR_SYMBOL2892;
    pANTLR3_COMMON_TOKEN    DATE_SYMBOL2895;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL2896;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL2898;
    pANTLR3_COMMON_TOKEN    DATETIME_SYMBOL2900;
    pANTLR3_COMMON_TOKEN    TINYBLOB_SYMBOL2902;
    pANTLR3_COMMON_TOKEN    BLOB_SYMBOL2903;
    pANTLR3_COMMON_TOKEN    MEDIUMBLOB_SYMBOL2905;
    pANTLR3_COMMON_TOKEN    LONGBLOB_SYMBOL2906;
    pANTLR3_COMMON_TOKEN    LONG_SYMBOL2907;
    pANTLR3_COMMON_TOKEN    VARBINARY_SYMBOL2908;
    pANTLR3_COMMON_TOKEN    LONG_SYMBOL2909;
    pANTLR3_COMMON_TOKEN    TINYTEXT_SYMBOL2912;
    pANTLR3_COMMON_TOKEN    TEXT_SYMBOL2914;
    pANTLR3_COMMON_TOKEN    MEDIUMTEXT_SYMBOL2917;
    pANTLR3_COMMON_TOKEN    LONGTEXT_SYMBOL2919;
    pANTLR3_COMMON_TOKEN    DECIMAL_SYMBOL2921;
    pANTLR3_COMMON_TOKEN    NUMERIC_SYMBOL2924;
    pANTLR3_COMMON_TOKEN    FIXED_SYMBOL2927;
    pANTLR3_COMMON_TOKEN    ENUM_SYMBOL2930;
    pANTLR3_COMMON_TOKEN    SET_SYMBOL2933;
    pANTLR3_COMMON_TOKEN    SERIAL_SYMBOL2936;
    pANTLR3_COMMON_TOKEN    JSON_SYMBOL2937;
    MySQLParser_integer_type_return integer_type2863;
    #undef	RETURN_TYPE_integer_type2863
    #define	RETURN_TYPE_integer_type2863 MySQLParser_integer_type_return

    MySQLParser_field_length_return field_length2864;
    #undef	RETURN_TYPE_field_length2864
    #define	RETURN_TYPE_field_length2864 MySQLParser_field_length_return

    MySQLParser_field_options_return field_options2865;
    #undef	RETURN_TYPE_field_options2865
    #define	RETURN_TYPE_field_options2865 MySQLParser_field_options_return

    MySQLParser_real_literal_return real_literal2866;
    #undef	RETURN_TYPE_real_literal2866
    #define	RETURN_TYPE_real_literal2866 MySQLParser_real_literal_return

    MySQLParser_precision_return precision2867;
    #undef	RETURN_TYPE_precision2867
    #define	RETURN_TYPE_precision2867 MySQLParser_precision_return

    MySQLParser_field_options_return field_options2868;
    #undef	RETURN_TYPE_field_options2868
    #define	RETURN_TYPE_field_options2868 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2870;
    #undef	RETURN_TYPE_float_options2870
    #define	RETURN_TYPE_float_options2870 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2871;
    #undef	RETURN_TYPE_field_options2871
    #define	RETURN_TYPE_field_options2871 MySQLParser_field_options_return

    MySQLParser_field_length_return field_length2873;
    #undef	RETURN_TYPE_field_length2873
    #define	RETURN_TYPE_field_length2873 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2877;
    #undef	RETURN_TYPE_field_length2877
    #define	RETURN_TYPE_field_length2877 MySQLParser_field_length_return

    MySQLParser_string_binary_return string_binary2878;
    #undef	RETURN_TYPE_string_binary2878
    #define	RETURN_TYPE_string_binary2878 MySQLParser_string_binary_return

    MySQLParser_nchar_literal_return nchar_literal2879;
    #undef	RETURN_TYPE_nchar_literal2879
    #define	RETURN_TYPE_nchar_literal2879 MySQLParser_nchar_literal_return

    MySQLParser_field_length_return field_length2880;
    #undef	RETURN_TYPE_field_length2880
    #define	RETURN_TYPE_field_length2880 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2883;
    #undef	RETURN_TYPE_field_length2883
    #define	RETURN_TYPE_field_length2883 MySQLParser_field_length_return

    MySQLParser_varchar_literal_return varchar_literal2884;
    #undef	RETURN_TYPE_varchar_literal2884
    #define	RETURN_TYPE_varchar_literal2884 MySQLParser_varchar_literal_return

    MySQLParser_field_length_return field_length2885;
    #undef	RETURN_TYPE_field_length2885
    #define	RETURN_TYPE_field_length2885 MySQLParser_field_length_return

    MySQLParser_string_binary_return string_binary2886;
    #undef	RETURN_TYPE_string_binary2886
    #define	RETURN_TYPE_string_binary2886 MySQLParser_string_binary_return

    MySQLParser_nvarchar_literal_return nvarchar_literal2887;
    #undef	RETURN_TYPE_nvarchar_literal2887
    #define	RETURN_TYPE_nvarchar_literal2887 MySQLParser_nvarchar_literal_return

    MySQLParser_field_length_return field_length2888;
    #undef	RETURN_TYPE_field_length2888
    #define	RETURN_TYPE_field_length2888 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2891;
    #undef	RETURN_TYPE_field_length2891
    #define	RETURN_TYPE_field_length2891 MySQLParser_field_length_return

    MySQLParser_field_length_return field_length2893;
    #undef	RETURN_TYPE_field_length2893
    #define	RETURN_TYPE_field_length2893 MySQLParser_field_length_return

    MySQLParser_field_options_return field_options2894;
    #undef	RETURN_TYPE_field_options2894
    #define	RETURN_TYPE_field_options2894 MySQLParser_field_options_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2897;
    #undef	RETURN_TYPE_type_datetime_precision2897
    #define	RETURN_TYPE_type_datetime_precision2897 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2899;
    #undef	RETURN_TYPE_type_datetime_precision2899
    #define	RETURN_TYPE_type_datetime_precision2899 MySQLParser_type_datetime_precision_return

    MySQLParser_type_datetime_precision_return type_datetime_precision2901;
    #undef	RETURN_TYPE_type_datetime_precision2901
    #define	RETURN_TYPE_type_datetime_precision2901 MySQLParser_type_datetime_precision_return

    MySQLParser_field_length_return field_length2904;
    #undef	RETURN_TYPE_field_length2904
    #define	RETURN_TYPE_field_length2904 MySQLParser_field_length_return

    MySQLParser_varchar_literal_return varchar_literal2910;
    #undef	RETURN_TYPE_varchar_literal2910
    #define	RETURN_TYPE_varchar_literal2910 MySQLParser_varchar_literal_return

    MySQLParser_string_binary_return string_binary2911;
    #undef	RETURN_TYPE_string_binary2911
    #define	RETURN_TYPE_string_binary2911 MySQLParser_string_binary_return

    MySQLParser_string_binary_return string_binary2913;
    #undef	RETURN_TYPE_string_binary2913
    #define	RETURN_TYPE_string_binary2913 MySQLParser_string_binary_return

    MySQLParser_field_length_return field_length2915;
    #undef	RETURN_TYPE_field_length2915
    #define	RETURN_TYPE_field_length2915 MySQLParser_field_length_return

    MySQLParser_string_binary_return string_binary2916;
    #undef	RETURN_TYPE_string_binary2916
    #define	RETURN_TYPE_string_binary2916 MySQLParser_string_binary_return

    MySQLParser_string_binary_return string_binary2918;
    #undef	RETURN_TYPE_string_binary2918
    #define	RETURN_TYPE_string_binary2918 MySQLParser_string_binary_return

    MySQLParser_string_binary_return string_binary2920;
    #undef	RETURN_TYPE_string_binary2920
    #define	RETURN_TYPE_string_binary2920 MySQLParser_string_binary_return

    MySQLParser_float_options_return float_options2922;
    #undef	RETURN_TYPE_float_options2922
    #define	RETURN_TYPE_float_options2922 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2923;
    #undef	RETURN_TYPE_field_options2923
    #define	RETURN_TYPE_field_options2923 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2925;
    #undef	RETURN_TYPE_float_options2925
    #define	RETURN_TYPE_float_options2925 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2926;
    #undef	RETURN_TYPE_field_options2926
    #define	RETURN_TYPE_field_options2926 MySQLParser_field_options_return

    MySQLParser_float_options_return float_options2928;
    #undef	RETURN_TYPE_float_options2928
    #define	RETURN_TYPE_float_options2928 MySQLParser_float_options_return

    MySQLParser_field_options_return field_options2929;
    #undef	RETURN_TYPE_field_options2929
    #define	RETURN_TYPE_field_options2929 MySQLParser_field_options_return

    MySQLParser_string_list_return string_list2931;
    #undef	RETURN_TYPE_string_list2931
    #define	RETURN_TYPE_string_list2931 MySQLParser_string_list_return

    MySQLParser_string_binary_return string_binary2932;
    #undef	RETURN_TYPE_string_binary2932
    #define	RETURN_TYPE_string_binary2932 MySQLParser_string_binary_return

    MySQLParser_string_list_return string_list2934;
    #undef	RETURN_TYPE_string_list2934
    #define	RETURN_TYPE_string_list2934 MySQLParser_string_list_return

    MySQLParser_string_binary_return string_binary2935;
    #undef	RETURN_TYPE_string_binary2935
    #define	RETURN_TYPE_string_binary2935 MySQLParser_string_binary_return

    MySQLParser_spatial_type_return spatial_type2938;
    #undef	RETURN_TYPE_spatial_type2938
    #define	RETURN_TYPE_spatial_type2938 MySQLParser_spatial_type_return

    pANTLR3_BASE_TREE FLOAT_SYMBOL2869_tree;
    pANTLR3_BASE_TREE BIT_SYMBOL2872_tree;
    pANTLR3_BASE_TREE BOOL_SYMBOL2874_tree;
    pANTLR3_BASE_TREE BOOLEAN_SYMBOL2875_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL2876_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2881_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2882_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2889_tree;
    pANTLR3_BASE_TREE VARBINARY_SYMBOL2890_tree;
    pANTLR3_BASE_TREE YEAR_SYMBOL2892_tree;
    pANTLR3_BASE_TREE DATE_SYMBOL2895_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL2896_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL2898_tree;
    pANTLR3_BASE_TREE DATETIME_SYMBOL2900_tree;
    pANTLR3_BASE_TREE TINYBLOB_SYMBOL2902_tree;
    pANTLR3_BASE_TREE BLOB_SYMBOL2903_tree;
    pANTLR3_BASE_TREE MEDIUMBLOB_SYMBOL2905_tree;
    pANTLR3_BASE_TREE LONGBLOB_SYMBOL2906_tree;
    pANTLR3_BASE_TREE LONG_SYMBOL2907_tree;
    pANTLR3_BASE_TREE VARBINARY_SYMBOL2908_tree;
    pANTLR3_BASE_TREE LONG_SYMBOL2909_tree;
    pANTLR3_BASE_TREE TINYTEXT_SYMBOL2912_tree;
    pANTLR3_BASE_TREE TEXT_SYMBOL2914_tree;
    pANTLR3_BASE_TREE MEDIUMTEXT_SYMBOL2917_tree;
    pANTLR3_BASE_TREE LONGTEXT_SYMBOL2919_tree;
    pANTLR3_BASE_TREE DECIMAL_SYMBOL2921_tree;
    pANTLR3_BASE_TREE NUMERIC_SYMBOL2924_tree;
    pANTLR3_BASE_TREE FIXED_SYMBOL2927_tree;
    pANTLR3_BASE_TREE ENUM_SYMBOL2930_tree;
    pANTLR3_BASE_TREE SET_SYMBOL2933_tree;
    pANTLR3_BASE_TREE SERIAL_SYMBOL2936_tree;
    pANTLR3_BASE_TREE JSON_SYMBOL2937_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    FLOAT_SYMBOL2869       = NULL;
    BIT_SYMBOL2872       = NULL;
    BOOL_SYMBOL2874       = NULL;
    BOOLEAN_SYMBOL2875       = NULL;
    CHAR_SYMBOL2876       = NULL;
    BINARY_SYMBOL2881       = NULL;
    BINARY_SYMBOL2882       = NULL;
    BINARY_SYMBOL2889       = NULL;
    VARBINARY_SYMBOL2890       = NULL;
    YEAR_SYMBOL2892       = NULL;
    DATE_SYMBOL2895       = NULL;
    TIME_SYMBOL2896       = NULL;
    TIMESTAMP_SYMBOL2898       = NULL;
    DATETIME_SYMBOL2900       = NULL;
    TINYBLOB_SYMBOL2902       = NULL;
    BLOB_SYMBOL2903       = NULL;
    MEDIUMBLOB_SYMBOL2905       = NULL;
    LONGBLOB_SYMBOL2906       = NULL;
    LONG_SYMBOL2907       = NULL;
    VARBINARY_SYMBOL2908       = NULL;
    LONG_SYMBOL2909       = NULL;
    TINYTEXT_SYMBOL2912       = NULL;
    TEXT_SYMBOL2914       = NULL;
    MEDIUMTEXT_SYMBOL2917       = NULL;
    LONGTEXT_SYMBOL2919       = NULL;
    DECIMAL_SYMBOL2921       = NULL;
    NUMERIC_SYMBOL2924       = NULL;
    FIXED_SYMBOL2927       = NULL;
    ENUM_SYMBOL2930       = NULL;
    SET_SYMBOL2933       = NULL;
    SERIAL_SYMBOL2936       = NULL;
    JSON_SYMBOL2937       = NULL;
    integer_type2863.tree = NULL;

    field_length2864.tree = NULL;

    field_options2865.tree = NULL;

    real_literal2866.tree = NULL;

    precision2867.tree = NULL;

    field_options2868.tree = NULL;

    float_options2870.tree = NULL;

    field_options2871.tree = NULL;

    field_length2873.tree = NULL;

    field_length2877.tree = NULL;

    string_binary2878.tree = NULL;

    nchar_literal2879.tree = NULL;

    field_length2880.tree = NULL;

    field_length2883.tree = NULL;

    varchar_literal2884.tree = NULL;

    field_length2885.tree = NULL;

    string_binary2886.tree = NULL;

    nvarchar_literal2887.tree = NULL;

    field_length2888.tree = NULL;

    field_length2891.tree = NULL;

    field_length2893.tree = NULL;

    field_options2894.tree = NULL;

    type_datetime_precision2897.tree = NULL;

    type_datetime_precision2899.tree = NULL;

    type_datetime_precision2901.tree = NULL;

    field_length2904.tree = NULL;

    varchar_literal2910.tree = NULL;

    string_binary2911.tree = NULL;

    string_binary2913.tree = NULL;

    field_length2915.tree = NULL;

    string_binary2916.tree = NULL;

    string_binary2918.tree = NULL;

    string_binary2920.tree = NULL;

    float_options2922.tree = NULL;

    field_options2923.tree = NULL;

    float_options2925.tree = NULL;

    field_options2926.tree = NULL;

    float_options2928.tree = NULL;

    field_options2929.tree = NULL;

    string_list2931.tree = NULL;

    string_binary2932.tree = NULL;

    string_list2934.tree = NULL;

    string_binary2935.tree = NULL;

    spatial_type2938.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    FLOAT_SYMBOL2869_tree   = NULL;
    BIT_SYMBOL2872_tree   = NULL;
    BOOL_SYMBOL2874_tree   = NULL;
    BOOLEAN_SYMBOL2875_tree   = NULL;
    CHAR_SYMBOL2876_tree   = NULL;
    BINARY_SYMBOL2881_tree   = NULL;
    BINARY_SYMBOL2882_tree   = NULL;
    BINARY_SYMBOL2889_tree   = NULL;
    VARBINARY_SYMBOL2890_tree   = NULL;
    YEAR_SYMBOL2892_tree   = NULL;
    DATE_SYMBOL2895_tree   = NULL;
    TIME_SYMBOL2896_tree   = NULL;
    TIMESTAMP_SYMBOL2898_tree   = NULL;
    DATETIME_SYMBOL2900_tree   = NULL;
    TINYBLOB_SYMBOL2902_tree   = NULL;
    BLOB_SYMBOL2903_tree   = NULL;
    MEDIUMBLOB_SYMBOL2905_tree   = NULL;
    LONGBLOB_SYMBOL2906_tree   = NULL;
    LONG_SYMBOL2907_tree   = NULL;
    VARBINARY_SYMBOL2908_tree   = NULL;
    LONG_SYMBOL2909_tree   = NULL;
    TINYTEXT_SYMBOL2912_tree   = NULL;
    TEXT_SYMBOL2914_tree   = NULL;
    MEDIUMTEXT_SYMBOL2917_tree   = NULL;
    LONGTEXT_SYMBOL2919_tree   = NULL;
    DECIMAL_SYMBOL2921_tree   = NULL;
    NUMERIC_SYMBOL2924_tree   = NULL;
    FIXED_SYMBOL2927_tree   = NULL;
    ENUM_SYMBOL2930_tree   = NULL;
    SET_SYMBOL2933_tree   = NULL;
    SERIAL_SYMBOL2936_tree   = NULL;
    JSON_SYMBOL2937_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2887:19: ( integer_type ( field_length )? ( field_options )? | real_literal ( precision )? ( field_options )? | FLOAT_SYMBOL ( float_options )? ( field_options )? | BIT_SYMBOL ( field_length )? | BOOL_SYMBOL | BOOLEAN_SYMBOL | CHAR_SYMBOL ( field_length )? ( string_binary )? | nchar_literal ( field_length )? ( BINARY_SYMBOL )? | BINARY_SYMBOL ( field_length )? | varchar_literal field_length ( string_binary )? | 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 )? ( string_binary )? | TINYTEXT_SYMBOL ( string_binary )? | TEXT_SYMBOL ( field_length )? ( string_binary )? | MEDIUMTEXT_SYMBOL ( string_binary )? | LONGTEXT_SYMBOL ( string_binary )? | DECIMAL_SYMBOL ( float_options )? ( field_options )? | NUMERIC_SYMBOL ( float_options )? ( field_options )? | FIXED_SYMBOL ( float_options )? ( field_options )? | ENUM_SYMBOL string_list ( string_binary )? | SET_SYMBOL string_list ( string_binary )? | SERIAL_SYMBOL |{...}? JSON_SYMBOL | spatial_type )

            ANTLR3_UINT32 alt832;

            alt832=35;

            {
                int LA832_0 = LA(1);
                if ( (LA832_0 == BIGINT_SYMBOL || LA832_0 == INT_SYMBOL || LA832_0 == MEDIUMINT_SYMBOL || LA832_0 == SMALLINT_SYMBOL || LA832_0 == TINYINT_SYMBOL))
                {
                    alt832=1;
                }
                else if ( (LA832_0 == DOUBLE_SYMBOL || LA832_0 == REAL_SYMBOL))
                {
                    alt832=2;
                }
                else if ( (LA832_0 == FLOAT_SYMBOL))
                {
                    alt832=3;
                }
                else if ( (LA832_0 == BIT_SYMBOL))
                {
                    alt832=4;
                }
                else if ( (LA832_0 == BOOL_SYMBOL))
                {
                    alt832=5;
                }
                else if ( (LA832_0 == BOOLEAN_SYMBOL))
                {
                    alt832=6;
                }
                else if ( (LA832_0 == CHAR_SYMBOL))
                {
                    {
                        int LA832_8 = LA(2);
                        if ( (LA832_8 == VARYING_SYMBOL))
                        {
                            alt832=10;
                        }
                        else if ( (LA832_8 == EOF || LA832_8 == ASCII_SYMBOL || ((LA832_8 >= BACKUP_SYMBOL) && (LA832_8 <= DO_SYMBOL)) || ((LA832_8 >= EXECUTE_SYMBOL) && (LA832_8 <= FLUSH_SYMBOL)) || ((LA832_8 >= HANDLER_SYMBOL) && (LA832_8 <= HELP_SYMBOL)) || ((LA832_8 >= INSTALL_SYMBOL) && (LA832_8 <= OPEN_SYMBOL)) || LA832_8 == PARTITION_SYMBOL || ((LA832_8 >= PREPARE_SYMBOL) && (LA832_8 <= SAVEPOINT_SYMBOL)) || ((LA832_8 >= START_SYMBOL) && (LA832_8 <= UNINSTALL_SYMBOL)) || ((LA832_8 >= XA_SYMBOL) && (LA832_8 <= YEAR_SYMBOL)) || LA832_8 == ALTER_SYMBOL || LA832_8 == AS_SYMBOL || LA832_8 == BACK_TICK_QUOTED_ID || LA832_8 == BINARY_SYMBOL || LA832_8 == CALL_SYMBOL || LA832_8 == CASE_SYMBOL || LA832_8 == CHANGE_SYMBOL || ((LA832_8 >= CHAR_SYMBOL) && (LA832_8 <= CHECK_SYMBOL)) || ((LA832_8 >= CLOSE_PAR_SYMBOL) && (LA832_8 <= COLLATE_SYMBOL)) || LA832_8 == COMMA_SYMBOL || LA832_8 == CREATE_SYMBOL || LA832_8 == DEFAULT_SYMBOL || ((LA832_8 >= DELETE_SYMBOL) && (LA832_8 <= DETERMINISTIC_SYMBOL)) || LA832_8 == DOUBLE_QUOTED_TEXT || LA832_8 == DROP_SYMBOL || LA832_8 == FETCH_SYMBOL || ((LA832_8 >= GENERATED_SYMBOL) && (LA832_8 <= GRANT_SYMBOL)) || ((LA832_8 >= IDENTIFIER) && (LA832_8 <= IF_SYMBOL)) || LA832_8 == INSERT_SYMBOL || LA832_8 == ITERATE_SYMBOL || ((LA832_8 >= KEY_SYMBOL) && (LA832_8 <= KILL_SYMBOL)) || LA832_8 == LEAVE_SYMBOL || LA832_8 == LOAD_SYMBOL || LA832_8 == LOCK_SYMBOL || LA832_8 == LOOP_SYMBOL || LA832_8 == MODIFIES_SYMBOL || LA832_8 == NOT_SYMBOL || LA832_8 == NULL2_SYMBOL || LA832_8 == NULL_SYMBOL || LA832_8 == ON_SYMBOL || LA832_8 == OPEN_PAR_SYMBOL || LA832_8 == OPTIMIZE_SYMBOL || LA832_8 == PRIMARY_SYMBOL || LA832_8 == PURGE_SYMBOL || LA832_8 == READS_SYMBOL || LA832_8 == REFERENCES_SYMBOL || ((LA832_8 >= RELEASE_SYMBOL) && (LA832_8 <= REPLACE_SYMBOL)) || LA832_8 == RESIGNAL_SYMBOL || ((LA832_8 >= RETURN_SYMBOL) && (LA832_8 <= REVOKE_SYMBOL)) || ((LA832_8 >= SELECT_SYMBOL) && (LA832_8 <= SEMICOLON_SYMBOL)) || LA832_8 == SET_SYMBOL || ((LA832_8 >= SHOW_SYMBOL) && (LA832_8 <= SIGNAL_SYMBOL)) || LA832_8 == SQL_SYMBOL || ((LA832_8 >= UNIQUE_SYMBOL) && (LA832_8 <= UNLOCK_SYMBOL)) || LA832_8 == UPDATE_SYMBOL || LA832_8 == USE_SYMBOL || LA832_8 == WHILE_SYMBOL))
                        {
                            alt832=7;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 832;
                            EXCEPTION->state        = 8;


                            goto ruledata_type_elementsEx;

                        }
                    }
                }
                else if ( (LA832_0 == NCHAR_SYMBOL))
                {
                    {
                        int LA832_9 = LA(2);
                        if ( (LA832_9 == VARCHAR_SYMBOL || LA832_9 == VARYING_SYMBOL))
                        {
                            alt832=11;
                        }
                        else if ( (LA832_9 == EOF || ((LA832_9 >= BACKUP_SYMBOL) && (LA832_9 <= BEGIN_SYMBOL)) || LA832_9 == CACHE_SYMBOL || ((LA832_9 >= CHECKSUM_SYMBOL) && (LA832_9 <= DO_SYMBOL)) || ((LA832_9 >= EXECUTE_SYMBOL) && (LA832_9 <= FLUSH_SYMBOL)) || ((LA832_9 >= HANDLER_SYMBOL) && (LA832_9 <= HELP_SYMBOL)) || ((LA832_9 >= INSTALL_SYMBOL) && (LA832_9 <= OPEN_SYMBOL)) || LA832_9 == PARTITION_SYMBOL || ((LA832_9 >= PREPARE_SYMBOL) && (LA832_9 <= SAVEPOINT_SYMBOL)) || ((LA832_9 >= START_SYMBOL) && (LA832_9 <= TRUNCATE_SYMBOL)) || LA832_9 == UNINSTALL_SYMBOL || ((LA832_9 >= XA_SYMBOL) && (LA832_9 <= YEAR_SYMBOL)) || LA832_9 == ALTER_SYMBOL || LA832_9 == AS_SYMBOL || LA832_9 == BACK_TICK_QUOTED_ID || LA832_9 == BINARY_SYMBOL || LA832_9 == CALL_SYMBOL || LA832_9 == CASE_SYMBOL || LA832_9 == CHANGE_SYMBOL || LA832_9 == CHECK_SYMBOL || ((LA832_9 >= CLOSE_PAR_SYMBOL) && (LA832_9 <= COLLATE_SYMBOL)) || LA832_9 == COMMA_SYMBOL || LA832_9 == CREATE_SYMBOL || LA832_9 == DEFAULT_SYMBOL || ((LA832_9 >= DELETE_SYMBOL) && (LA832_9 <= DETERMINISTIC_SYMBOL)) || LA832_9 == DOUBLE_QUOTED_TEXT || LA832_9 == DROP_SYMBOL || LA832_9 == FETCH_SYMBOL || ((LA832_9 >= GENERATED_SYMBOL) && (LA832_9 <= GRANT_SYMBOL)) || ((LA832_9 >= IDENTIFIER) && (LA832_9 <= IF_SYMBOL)) || LA832_9 == INSERT_SYMBOL || LA832_9 == ITERATE_SYMBOL || ((LA832_9 >= KEY_SYMBOL) && (LA832_9 <= KILL_SYMBOL)) || LA832_9 == LEAVE_SYMBOL || LA832_9 == LOAD_SYMBOL || LA832_9 == LOCK_SYMBOL || LA832_9 == LOOP_SYMBOL || LA832_9 == MODIFIES_SYMBOL || LA832_9 == NOT_SYMBOL || LA832_9 == NULL2_SYMBOL || LA832_9 == NULL_SYMBOL || LA832_9 == ON_SYMBOL || LA832_9 == OPEN_PAR_SYMBOL || LA832_9 == OPTIMIZE_SYMBOL || LA832_9 == PRIMARY_SYMBOL || LA832_9 == PURGE_SYMBOL || LA832_9 == READS_SYMBOL || LA832_9 == REFERENCES_SYMBOL || ((LA832_9 >= RELEASE_SYMBOL) && (LA832_9 <= REPLACE_SYMBOL)) || LA832_9 == RESIGNAL_SYMBOL || ((LA832_9 >= RETURN_SYMBOL) && (LA832_9 <= REVOKE_SYMBOL)) || ((LA832_9 >= SELECT_SYMBOL) && (LA832_9 <= SEMICOLON_SYMBOL)) || LA832_9 == SET_SYMBOL || ((LA832_9 >= SHOW_SYMBOL) && (LA832_9 <= SIGNAL_SYMBOL)) || LA832_9 == SQL_SYMBOL || ((LA832_9 >= UNIQUE_SYMBOL) && (LA832_9 <= UNLOCK_SYMBOL)) || LA832_9 == UPDATE_SYMBOL || LA832_9 == USE_SYMBOL || LA832_9 == WHILE_SYMBOL))
                        {
                            alt832=8;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 832;
                            EXCEPTION->state        = 9;


                            goto ruledata_type_elementsEx;

                        }
                    }
                }
                else if ( (LA832_0 == NATIONAL_SYMBOL))
                {
                    switch ( LA(2) )
                    {
                    case CHAR_SYMBOL:
                    	{
                    		{
                    		    int LA832_251 = LA(3);
                    		    if ( ((LA(3) != VARYING_SYMBOL)))
                    		    {
                    		        alt832=8;
                    		    }
                    		    else if ( (ANTLR3_TRUE))
                    		    {
                    		        alt832=11;
                    		    }
                    		    else
                    		    {
                    		        if (BACKTRACKING>0)
                    		        {
                    		            FAILEDFLAG = ANTLR3_TRUE;
                    		            return retval;
                    		        }


                    		        CONSTRUCTEX();
                    		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    		        EXCEPTION->message      = (void *)"";
                    		        EXCEPTION->decisionNum  = 832;
                    		        EXCEPTION->state        = 251;


                    		        goto ruledata_type_elementsEx;

                    		    }
                    		}
                    	}
                        break;
                    case VARCHAR_SYMBOL:
                    	{
                    		alt832=11;
                    	}
                        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        = 10;


                        goto ruledata_type_elementsEx;

                    }

                }
                else if ( (LA832_0 == BINARY_SYMBOL))
                {
                    alt832=9;
                }
                else if ( (LA832_0 == VARCHAR_SYMBOL))
                {
                    alt832=10;
                }
                else if ( (LA832_0 == NVARCHAR_SYMBOL))
                {
                    alt832=11;
                }
                else if ( (LA832_0 == VARBINARY_SYMBOL))
                {
                    alt832=12;
                }
                else if ( (LA832_0 == YEAR_SYMBOL))
                {
                    alt832=13;
                }
                else if ( (LA832_0 == DATE_SYMBOL))
                {
                    alt832=14;
                }
                else if ( (LA832_0 == TIME_SYMBOL))
                {
                    alt832=15;
                }
                else if ( (LA832_0 == TIMESTAMP_SYMBOL))
                {
                    alt832=16;
                }
                else if ( (LA832_0 == DATETIME_SYMBOL))
                {
                    alt832=17;
                }
                else if ( (LA832_0 == TINYBLOB_SYMBOL))
                {
                    alt832=18;
                }
                else if ( (LA832_0 == BLOB_SYMBOL))
                {
                    alt832=19;
                }
                else if ( (LA832_0 == MEDIUMBLOB_SYMBOL))
                {
                    alt832=20;
                }
                else if ( (LA832_0 == LONGBLOB_SYMBOL))
                {
                    alt832=21;
                }
                else if ( (LA832_0 == LONG_SYMBOL))
                {
                    {
                        int LA832_24 = LA(2);
                        if ( (LA832_24 == VARBINARY_SYMBOL))
                        {
                            alt832=22;
                        }
                        else if ( (LA832_24 == EOF || LA832_24 == ASCII_SYMBOL || ((LA832_24 >= BACKUP_SYMBOL) && (LA832_24 <= DO_SYMBOL)) || ((LA832_24 >= EXECUTE_SYMBOL) && (LA832_24 <= FLUSH_SYMBOL)) || ((LA832_24 >= HANDLER_SYMBOL) && (LA832_24 <= HELP_SYMBOL)) || ((LA832_24 >= INSTALL_SYMBOL) && (LA832_24 <= OPEN_SYMBOL)) || LA832_24 == PARTITION_SYMBOL || ((LA832_24 >= PREPARE_SYMBOL) && (LA832_24 <= SAVEPOINT_SYMBOL)) || ((LA832_24 >= START_SYMBOL) && (LA832_24 <= UNINSTALL_SYMBOL)) || ((LA832_24 >= XA_SYMBOL) && (LA832_24 <= YEAR_SYMBOL)) || LA832_24 == ALTER_SYMBOL || LA832_24 == AS_SYMBOL || LA832_24 == BACK_TICK_QUOTED_ID || LA832_24 == BINARY_SYMBOL || LA832_24 == CALL_SYMBOL || LA832_24 == CASE_SYMBOL || LA832_24 == CHANGE_SYMBOL || ((LA832_24 >= CHAR_SYMBOL) && (LA832_24 <= CHECK_SYMBOL)) || ((LA832_24 >= CLOSE_PAR_SYMBOL) && (LA832_24 <= COLLATE_SYMBOL)) || LA832_24 == COMMA_SYMBOL || LA832_24 == CREATE_SYMBOL || LA832_24 == DEFAULT_SYMBOL || ((LA832_24 >= DELETE_SYMBOL) && (LA832_24 <= DETERMINISTIC_SYMBOL)) || LA832_24 == DOUBLE_QUOTED_TEXT || LA832_24 == DROP_SYMBOL || LA832_24 == FETCH_SYMBOL || ((LA832_24 >= GENERATED_SYMBOL) && (LA832_24 <= GRANT_SYMBOL)) || ((LA832_24 >= IDENTIFIER) && (LA832_24 <= IF_SYMBOL)) || LA832_24 == INSERT_SYMBOL || LA832_24 == ITERATE_SYMBOL || ((LA832_24 >= KEY_SYMBOL) && (LA832_24 <= KILL_SYMBOL)) || LA832_24 == LEAVE_SYMBOL || LA832_24 == LOAD_SYMBOL || LA832_24 == LOCK_SYMBOL || LA832_24 == LOOP_SYMBOL || LA832_24 == MODIFIES_SYMBOL || LA832_24 == NOT_SYMBOL || LA832_24 == NULL2_SYMBOL || LA832_24 == NULL_SYMBOL || LA832_24 == ON_SYMBOL || LA832_24 == OPEN_PAR_SYMBOL || LA832_24 == OPTIMIZE_SYMBOL || LA832_24 == PRIMARY_SYMBOL || LA832_24 == PURGE_SYMBOL || LA832_24 == READS_SYMBOL || LA832_24 == REFERENCES_SYMBOL || ((LA832_24 >= RELEASE_SYMBOL) && (LA832_24 <= REPLACE_SYMBOL)) || LA832_24 == RESIGNAL_SYMBOL || ((LA832_24 >= RETURN_SYMBOL) && (LA832_24 <= REVOKE_SYMBOL)) || ((LA832_24 >= SELECT_SYMBOL) && (LA832_24 <= SEMICOLON_SYMBOL)) || LA832_24 == SET_SYMBOL || ((LA832_24 >= SHOW_SYMBOL) && (LA832_24 <= SIGNAL_SYMBOL)) || LA832_24 == SQL_SYMBOL || ((LA832_24 >= UNIQUE_SYMBOL) && (LA832_24 <= UNLOCK_SYMBOL)) || LA832_24 == UPDATE_SYMBOL || LA832_24 == USE_SYMBOL || LA832_24 == VARCHAR_SYMBOL || LA832_24 == WHILE_SYMBOL))
                        {
                            alt832=23;
                        }
                        else
                        {
                            if (BACKTRACKING>0)
                            {
                                FAILEDFLAG = ANTLR3_TRUE;
                                return retval;
                            }


                            CONSTRUCTEX();
                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                            EXCEPTION->message      = (void *)"";
                            EXCEPTION->decisionNum  = 832;
                            EXCEPTION->state        = 24;


                            goto ruledata_type_elementsEx;

                        }
                    }
                }
                else if ( (LA832_0 == TINYTEXT_SYMBOL))
                {
                    alt832=24;
                }
                else if ( (LA832_0 == TEXT_SYMBOL))
                {
                    alt832=25;
                }
                else if ( (LA832_0 == MEDIUMTEXT_SYMBOL))
                {
                    alt832=26;
                }
                else if ( (LA832_0 == LONGTEXT_SYMBOL))
                {
                    alt832=27;
                }
                else if ( (LA832_0 == DECIMAL_SYMBOL))
                {
                    alt832=28;
                }
                else if ( (LA832_0 == NUMERIC_SYMBOL))
                {
                    alt832=29;
                }
                else if ( (LA832_0 == FIXED_SYMBOL))
                {
                    alt832=30;
                }
                else if ( (LA832_0 == ENUM_SYMBOL))
                {
                    alt832=31;
                }
                else if ( (LA832_0 == SET_SYMBOL))
                {
                    alt832=32;
                }
                else if ( (LA832_0 == SERIAL_SYMBOL))
                {
                    alt832=33;
                }
                else if ( (LA832_0 == JSON_SYMBOL))
                {
                    alt832=34;
                }
                else if ( (((LA832_0 >= GEOMETRY_SYMBOL) && (LA832_0 <= GEOMETRYCOLLECTION_SYMBOL)) || LA832_0 == LINESTRING_SYMBOL || ((LA832_0 >= MULTILINESTRING_SYMBOL) && (LA832_0 <= MULTIPOLYGON_SYMBOL)) || ((LA832_0 >= POINT_SYMBOL) && (LA832_0 <= POLYGON_SYMBOL))))
                {
                    alt832=35;
                }
                else
                {
                    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 ruledata_type_elementsEx;

                }
            }
            switch (alt832)
            {
        	case 1:
        	    // MySQL.g:2888:2: integer_type ( field_length )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_integer_type_in_data_type_elements15120);
        	        integer_type2863=integer_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, integer_type2863.tree);

        	        // MySQL.g:2888:15: ( field_length )?
        	        {
        	            int alt797=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt797=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt797)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2888:15: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15122);
        	        	        field_length2864=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2864.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2888:29: ( field_options )?
        	        {
        	            int alt798=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt798=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt798)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2888:29: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15125);
        	        	        field_options2865=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2865.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2890:4: real_literal ( precision )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_real_literal_in_data_type_elements15132);
        	        real_literal2866=real_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_literal2866.tree);

        	        // MySQL.g:2890:17: ( precision )?
        	        {
        	            int alt799=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt799=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt799)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2890:17: precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_precision_in_data_type_elements15134);
        	        	        precision2867=precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, precision2867.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2890:28: ( field_options )?
        	        {
        	            int alt800=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt800=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt800)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2890:28: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15137);
        	        	        field_options2868=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2868.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2891:4: FLOAT_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FLOAT_SYMBOL2869 = (pANTLR3_COMMON_TOKEN) MATCHT(FLOAT_SYMBOL, &FOLLOW_FLOAT_SYMBOL_in_data_type_elements15143);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FLOAT_SYMBOL2869_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FLOAT_SYMBOL2869));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FLOAT_SYMBOL2869_tree);
        	        }

        	        // MySQL.g:2891:17: ( float_options )?
        	        {
        	            int alt801=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt801=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt801)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2891:17: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type_elements15145);
        	        	        float_options2870=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2870.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2891:32: ( field_options )?
        	        {
        	            int alt802=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt802=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt802)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2891:32: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15148);
        	        	        field_options2871=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2871.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2893:4: BIT_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BIT_SYMBOL2872 = (pANTLR3_COMMON_TOKEN) MATCHT(BIT_SYMBOL, &FOLLOW_BIT_SYMBOL_in_data_type_elements15156);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIT_SYMBOL2872_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIT_SYMBOL2872));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIT_SYMBOL2872_tree);
        	        }

        	        // MySQL.g:2893:15: ( field_length )?
        	        {
        	            int alt803=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt803=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt803)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2893:15: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15158);
        	        	        field_length2873=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2873.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2894:4: BOOL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BOOL_SYMBOL2874 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOL_SYMBOL, &FOLLOW_BOOL_SYMBOL_in_data_type_elements15164);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BOOL_SYMBOL2874_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOL_SYMBOL2874));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BOOL_SYMBOL2874_tree);
        	        }

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:2895:4: BOOLEAN_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BOOLEAN_SYMBOL2875 = (pANTLR3_COMMON_TOKEN) MATCHT(BOOLEAN_SYMBOL, &FOLLOW_BOOLEAN_SYMBOL_in_data_type_elements15169);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BOOLEAN_SYMBOL2875_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BOOLEAN_SYMBOL2875));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BOOLEAN_SYMBOL2875_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:2897:4: CHAR_SYMBOL ( field_length )? ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL2876 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_data_type_elements15176);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL2876_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL2876));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL2876_tree);
        	        }

        	        // MySQL.g:2897:16: ( field_length )?
        	        {
        	            int alt804=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt804=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt804)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2897:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15178);
        	        	        field_length2877=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2877.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2897:30: ( string_binary )?
        	        {
        	            int alt805=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt805=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt805)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2897:30: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15181);
        	        	        string_binary2878=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2878.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:2898:4: nchar_literal ( field_length )? ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_nchar_literal_in_data_type_elements15187);
        	        nchar_literal2879=nchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, nchar_literal2879.tree);

        	        // MySQL.g:2898:18: ( field_length )?
        	        {
        	            int alt806=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt806=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt806)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2898:18: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15189);
        	        	        field_length2880=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2880.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2898:32: ( BINARY_SYMBOL )?
        	        {
        	            int alt807=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt807=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt807)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2898:32: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2881 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type_elements15192);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2881_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2881));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2881_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:2899:4: BINARY_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2882 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type_elements15198);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2882_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2882));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2882_tree);
        	        }

        	        // MySQL.g:2899:18: ( field_length )?
        	        {
        	            int alt808=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt808=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt808)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2899:18: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15200);
        	        	        field_length2883=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2883.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:2900:4: varchar_literal field_length ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_varchar_literal_in_data_type_elements15206);
        	        varchar_literal2884=varchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, varchar_literal2884.tree);

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15208);
        	        field_length2885=field_length(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2885.tree);

        	        // MySQL.g:2900:33: ( string_binary )?
        	        {
        	            int alt809=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt809=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt809)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2900:33: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15210);
        	        	        string_binary2886=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2886.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:2901:4: nvarchar_literal field_length ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_nvarchar_literal_in_data_type_elements15216);
        	        nvarchar_literal2887=nvarchar_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, nvarchar_literal2887.tree);

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15218);
        	        field_length2888=field_length(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2888.tree);

        	        // MySQL.g:2901:34: ( BINARY_SYMBOL )?
        	        {
        	            int alt810=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt810=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt810)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2901:34: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2889 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_data_type_elements15220);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2889_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2889));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2889_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:2903:4: VARBINARY_SYMBOL field_length
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARBINARY_SYMBOL2890 = (pANTLR3_COMMON_TOKEN) MATCHT(VARBINARY_SYMBOL, &FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15227);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARBINARY_SYMBOL2890_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARBINARY_SYMBOL2890));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARBINARY_SYMBOL2890_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15229);
        	        field_length2891=field_length(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2891.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:2905:4: YEAR_SYMBOL ( field_length )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        YEAR_SYMBOL2892 = (pANTLR3_COMMON_TOKEN) MATCHT(YEAR_SYMBOL, &FOLLOW_YEAR_SYMBOL_in_data_type_elements15235);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        YEAR_SYMBOL2892_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, YEAR_SYMBOL2892));
        	        ADAPTOR->addChild(ADAPTOR, root_0, YEAR_SYMBOL2892_tree);
        	        }

        	        // MySQL.g:2905:16: ( field_length )?
        	        {
        	            int alt811=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt811=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt811)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2905:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15237);
        	        	        field_length2893=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2893.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2905:30: ( field_options )?
        	        {
        	            int alt812=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt812=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt812)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2905:30: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15240);
        	        	        field_options2894=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2894.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 14:
        	    // MySQL.g:2906:4: DATE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL2895 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_data_type_elements15246);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL2895_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL2895));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL2895_tree);
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:2907:4: TIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL2896 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_data_type_elements15251);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL2896_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL2896));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL2896_tree);
        	        }

        	        // MySQL.g:2907:16: ( type_datetime_precision )?
        	        {
        	            int alt813=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt813=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt813)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2907:16: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type_elements15253);
        	        	        type_datetime_precision2897=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2897.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:2908:4: TIMESTAMP_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL2898 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_data_type_elements15259);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL2898_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL2898));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL2898_tree);
        	        }

        	        // MySQL.g:2908:21: ( type_datetime_precision )?
        	        {
        	            int alt814=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt814=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt814)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2908:21: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type_elements15261);
        	        	        type_datetime_precision2899=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2899.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 17:
        	    // MySQL.g:2909:4: DATETIME_SYMBOL ( type_datetime_precision )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATETIME_SYMBOL2900 = (pANTLR3_COMMON_TOKEN) MATCHT(DATETIME_SYMBOL, &FOLLOW_DATETIME_SYMBOL_in_data_type_elements15267);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATETIME_SYMBOL2900_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATETIME_SYMBOL2900));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATETIME_SYMBOL2900_tree);
        	        }

        	        // MySQL.g:2909:20: ( type_datetime_precision )?
        	        {
        	            int alt815=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt815=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt815)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2909:20: type_datetime_precision
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_type_datetime_precision_in_data_type_elements15269);
        	        	        type_datetime_precision2901=type_datetime_precision(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, type_datetime_precision2901.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:2911:4: TINYBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TINYBLOB_SYMBOL2902 = (pANTLR3_COMMON_TOKEN) MATCHT(TINYBLOB_SYMBOL, &FOLLOW_TINYBLOB_SYMBOL_in_data_type_elements15276);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TINYBLOB_SYMBOL2902_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TINYBLOB_SYMBOL2902));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TINYBLOB_SYMBOL2902_tree);
        	        }

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:2912:4: BLOB_SYMBOL ( field_length )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BLOB_SYMBOL2903 = (pANTLR3_COMMON_TOKEN) MATCHT(BLOB_SYMBOL, &FOLLOW_BLOB_SYMBOL_in_data_type_elements15281);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BLOB_SYMBOL2903_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BLOB_SYMBOL2903));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BLOB_SYMBOL2903_tree);
        	        }

        	        // MySQL.g:2912:16: ( field_length )?
        	        {
        	            int alt816=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt816=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt816)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2912:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15283);
        	        	        field_length2904=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2904.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:2913:4: MEDIUMBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUMBLOB_SYMBOL2905 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUMBLOB_SYMBOL, &FOLLOW_MEDIUMBLOB_SYMBOL_in_data_type_elements15289);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUMBLOB_SYMBOL2905_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUMBLOB_SYMBOL2905));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUMBLOB_SYMBOL2905_tree);
        	        }

        	    }
        	    break;
        	case 21:
        	    // MySQL.g:2914:4: LONGBLOB_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONGBLOB_SYMBOL2906 = (pANTLR3_COMMON_TOKEN) MATCHT(LONGBLOB_SYMBOL, &FOLLOW_LONGBLOB_SYMBOL_in_data_type_elements15294);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONGBLOB_SYMBOL2906_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONGBLOB_SYMBOL2906));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONGBLOB_SYMBOL2906_tree);
        	        }

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:2915:4: LONG_SYMBOL VARBINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONG_SYMBOL2907 = (pANTLR3_COMMON_TOKEN) MATCHT(LONG_SYMBOL, &FOLLOW_LONG_SYMBOL_in_data_type_elements15299);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONG_SYMBOL2907_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONG_SYMBOL2907));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONG_SYMBOL2907_tree);
        	        }

        	        VARBINARY_SYMBOL2908 = (pANTLR3_COMMON_TOKEN) MATCHT(VARBINARY_SYMBOL, &FOLLOW_VARBINARY_SYMBOL_in_data_type_elements15301);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARBINARY_SYMBOL2908_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARBINARY_SYMBOL2908));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARBINARY_SYMBOL2908_tree);
        	        }

        	    }
        	    break;
        	case 23:
        	    // MySQL.g:2916:4: LONG_SYMBOL ( varchar_literal )? ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONG_SYMBOL2909 = (pANTLR3_COMMON_TOKEN) MATCHT(LONG_SYMBOL, &FOLLOW_LONG_SYMBOL_in_data_type_elements15306);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONG_SYMBOL2909_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONG_SYMBOL2909));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONG_SYMBOL2909_tree);
        	        }

        	        // MySQL.g:2916:16: ( varchar_literal )?
        	        {
        	            int alt817=2;
        	            switch ( LA(1) )
        	            {
        	                case CHAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case VARYING_SYMBOL:
        	                		    	{
        	                		    		alt817=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	                case VARCHAR_SYMBOL:
        	                	{
        	                		alt817=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt817)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2916:16: varchar_literal
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_varchar_literal_in_data_type_elements15308);
        	        	        varchar_literal2910=varchar_literal(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, varchar_literal2910.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2916:33: ( string_binary )?
        	        {
        	            int alt818=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt818=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt818)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2916:33: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15311);
        	        	        string_binary2911=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2911.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 24:
        	    // MySQL.g:2918:4: TINYTEXT_SYMBOL ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TINYTEXT_SYMBOL2912 = (pANTLR3_COMMON_TOKEN) MATCHT(TINYTEXT_SYMBOL, &FOLLOW_TINYTEXT_SYMBOL_in_data_type_elements15318);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TINYTEXT_SYMBOL2912_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TINYTEXT_SYMBOL2912));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TINYTEXT_SYMBOL2912_tree);
        	        }

        	        // MySQL.g:2918:20: ( string_binary )?
        	        {
        	            int alt819=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt819=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt819)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2918:20: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15320);
        	        	        string_binary2913=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2913.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 25:
        	    // MySQL.g:2919:4: TEXT_SYMBOL ( field_length )? ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TEXT_SYMBOL2914 = (pANTLR3_COMMON_TOKEN) MATCHT(TEXT_SYMBOL, &FOLLOW_TEXT_SYMBOL_in_data_type_elements15326);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TEXT_SYMBOL2914_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TEXT_SYMBOL2914));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TEXT_SYMBOL2914_tree);
        	        }

        	        // MySQL.g:2919:16: ( field_length )?
        	        {
        	            int alt820=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case DECIMAL_NUMBER:
        	                		    case INT_NUMBER:
        	                		    case LONG_NUMBER:
        	                		    case ULONGLONG_NUMBER:
        	                		    	{
        	                		    		alt820=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt820)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2919:16: field_length
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_length_in_data_type_elements15328);
        	        	        field_length2915=field_length(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_length2915.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2919:30: ( string_binary )?
        	        {
        	            int alt821=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt821=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt821)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2919:30: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15331);
        	        	        string_binary2916=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2916.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 26:
        	    // MySQL.g:2920:4: MEDIUMTEXT_SYMBOL ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MEDIUMTEXT_SYMBOL2917 = (pANTLR3_COMMON_TOKEN) MATCHT(MEDIUMTEXT_SYMBOL, &FOLLOW_MEDIUMTEXT_SYMBOL_in_data_type_elements15337);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MEDIUMTEXT_SYMBOL2917_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MEDIUMTEXT_SYMBOL2917));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MEDIUMTEXT_SYMBOL2917_tree);
        	        }

        	        // MySQL.g:2920:22: ( string_binary )?
        	        {
        	            int alt822=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt822=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt822)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2920:22: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15339);
        	        	        string_binary2918=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2918.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 27:
        	    // MySQL.g:2921:4: LONGTEXT_SYMBOL ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        LONGTEXT_SYMBOL2919 = (pANTLR3_COMMON_TOKEN) MATCHT(LONGTEXT_SYMBOL, &FOLLOW_LONGTEXT_SYMBOL_in_data_type_elements15345);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LONGTEXT_SYMBOL2919_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LONGTEXT_SYMBOL2919));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LONGTEXT_SYMBOL2919_tree);
        	        }

        	        // MySQL.g:2921:20: ( string_binary )?
        	        {
        	            int alt823=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt823=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt823)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2921:20: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15347);
        	        	        string_binary2920=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2920.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 28:
        	    // MySQL.g:2923:4: DECIMAL_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DECIMAL_SYMBOL2921 = (pANTLR3_COMMON_TOKEN) MATCHT(DECIMAL_SYMBOL, &FOLLOW_DECIMAL_SYMBOL_in_data_type_elements15355);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DECIMAL_SYMBOL2921_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECIMAL_SYMBOL2921));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DECIMAL_SYMBOL2921_tree);
        	        }

        	        // MySQL.g:2923:19: ( float_options )?
        	        {
        	            int alt824=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt824=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt824)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2923:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type_elements15357);
        	        	        float_options2922=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2922.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2923:34: ( field_options )?
        	        {
        	            int alt825=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt825=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt825)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2923:34: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15360);
        	        	        field_options2923=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2923.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 29:
        	    // MySQL.g:2924:4: NUMERIC_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NUMERIC_SYMBOL2924 = (pANTLR3_COMMON_TOKEN) MATCHT(NUMERIC_SYMBOL, &FOLLOW_NUMERIC_SYMBOL_in_data_type_elements15366);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NUMERIC_SYMBOL2924_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NUMERIC_SYMBOL2924));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NUMERIC_SYMBOL2924_tree);
        	        }

        	        // MySQL.g:2924:19: ( float_options )?
        	        {
        	            int alt826=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt826=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt826)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2924:19: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type_elements15368);
        	        	        float_options2925=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2925.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2924:34: ( field_options )?
        	        {
        	            int alt827=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt827=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt827)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2924:34: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15371);
        	        	        field_options2926=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2926.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 30:
        	    // MySQL.g:2925:4: FIXED_SYMBOL ( float_options )? ( field_options )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FIXED_SYMBOL2927 = (pANTLR3_COMMON_TOKEN) MATCHT(FIXED_SYMBOL, &FOLLOW_FIXED_SYMBOL_in_data_type_elements15377);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        FIXED_SYMBOL2927_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, FIXED_SYMBOL2927));
        	        ADAPTOR->addChild(ADAPTOR, root_0, FIXED_SYMBOL2927_tree);
        	        }

        	        // MySQL.g:2925:17: ( float_options )?
        	        {
        	            int alt828=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		switch ( LA(2) )
        	                		{
        	                		    case INT_NUMBER:
        	                		    	{
        	                		    		alt828=1;
        	                		    	}
        	                		        break;
        	                		}

        	                	}
        	                    break;
        	            }

        	            switch (alt828)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2925:17: float_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_float_options_in_data_type_elements15379);
        	        	        float_options2928=float_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, float_options2928.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:2925:32: ( field_options )?
        	        {
        	            int alt829=2;
        	            switch ( LA(1) )
        	            {
        	                case SIGNED_SYMBOL:
        	                case UNSIGNED_SYMBOL:
        	                case ZEROFILL_SYMBOL:
        	                	{
        	                		alt829=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt829)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2925:32: field_options
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_field_options_in_data_type_elements15382);
        	        	        field_options2929=field_options(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_options2929.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 31:
        	    // MySQL.g:2927:4: ENUM_SYMBOL string_list ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ENUM_SYMBOL2930 = (pANTLR3_COMMON_TOKEN) MATCHT(ENUM_SYMBOL, &FOLLOW_ENUM_SYMBOL_in_data_type_elements15390);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENUM_SYMBOL2930_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENUM_SYMBOL2930));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENUM_SYMBOL2930_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_list_in_data_type_elements15392);
        	        string_list2931=string_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_list2931.tree);

        	        // MySQL.g:2927:28: ( string_binary )?
        	        {
        	            int alt830=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt830=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt830)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2927:28: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15394);
        	        	        string_binary2932=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2932.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 32:
        	    // MySQL.g:2928:4: SET_SYMBOL string_list ( string_binary )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SET_SYMBOL2933 = (pANTLR3_COMMON_TOKEN) MATCHT(SET_SYMBOL, &FOLLOW_SET_SYMBOL_in_data_type_elements15400);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SET_SYMBOL2933_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SET_SYMBOL2933));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SET_SYMBOL2933_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_string_list_in_data_type_elements15402);
        	        string_list2934=string_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_list2934.tree);

        	        // MySQL.g:2928:27: ( string_binary )?
        	        {
        	            int alt831=2;
        	            switch ( LA(1) )
        	            {
        	                case ASCII_SYMBOL:
        	                case BYTE_SYMBOL:
        	                case CHARSET_SYMBOL:
        	                case UNICODE_SYMBOL:
        	                case BINARY_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt831=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt831)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2928:27: string_binary
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_string_binary_in_data_type_elements15404);
        	        	        string_binary2935=string_binary(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruledata_type_elementsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_binary2935.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 33:
        	    // MySQL.g:2929:4: SERIAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SERIAL_SYMBOL2936 = (pANTLR3_COMMON_TOKEN) MATCHT(SERIAL_SYMBOL, &FOLLOW_SERIAL_SYMBOL_in_data_type_elements15410);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SERIAL_SYMBOL2936_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SERIAL_SYMBOL2936));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SERIAL_SYMBOL2936_tree);
        	        }

        	    }
        	    break;
        	case 34:
        	    // MySQL.g:2930:4: {...}? JSON_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        if ( !((SERVER_VERSION >= 50707)) )
        	        {
        	            if (BACKTRACKING>0)
        	            {
        	                FAILEDFLAG = ANTLR3_TRUE;
        	                return retval;
        	            }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50707";
        	                EXCEPTION->ruleName	 = (void *)"data_type_elements";


        	        }

        	        JSON_SYMBOL2937 = (pANTLR3_COMMON_TOKEN) MATCHT(JSON_SYMBOL, &FOLLOW_JSON_SYMBOL_in_data_type_elements15417);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        JSON_SYMBOL2937_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, JSON_SYMBOL2937));
        	        ADAPTOR->addChild(ADAPTOR, root_0, JSON_SYMBOL2937_tree);
        	        }

        	    }
        	    break;
        	case 35:
        	    // MySQL.g:2931:4: spatial_type
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_spatial_type_in_data_type_elements15422);
        	        spatial_type2938=spatial_type(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruledata_type_elementsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, spatial_type2938.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruledata_type_elementsEx; /* Prevent compiler warnings */
    ruledata_type_elementsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_elements */

/**
 * $ANTLR start field_length
 * MySQL.g:2934:1: field_length : OPEN_PAR_SYMBOL ( real_ulonglong_number | DECIMAL_NUMBER ) 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_SYMBOL2939;
    pANTLR3_COMMON_TOKEN    DECIMAL_NUMBER2941;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2942;
    MySQLParser_real_ulonglong_number_return real_ulonglong_number2940;
    #undef	RETURN_TYPE_real_ulonglong_number2940
    #define	RETURN_TYPE_real_ulonglong_number2940 MySQLParser_real_ulonglong_number_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2939_tree;
    pANTLR3_BASE_TREE DECIMAL_NUMBER2941_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2942_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2939       = NULL;
    DECIMAL_NUMBER2941       = NULL;
    CLOSE_PAR_SYMBOL2942       = NULL;
    real_ulonglong_number2940.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2939_tree   = NULL;
    DECIMAL_NUMBER2941_tree   = NULL;
    CLOSE_PAR_SYMBOL2942_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2934:13: ( OPEN_PAR_SYMBOL ( real_ulonglong_number | DECIMAL_NUMBER ) CLOSE_PAR_SYMBOL )
        // MySQL.g:2935:2: OPEN_PAR_SYMBOL ( real_ulonglong_number | DECIMAL_NUMBER ) CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL2939 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_field_length15431);
            if  (HASEXCEPTION())
            {
                goto rulefield_lengthEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2939_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2939));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2939_tree);
            }

            // MySQL.g:2935:18: ( real_ulonglong_number | DECIMAL_NUMBER )
            {
                int alt833=2;
                switch ( LA(1) )
                {
                case INT_NUMBER:
                case LONG_NUMBER:
                case ULONGLONG_NUMBER:
                	{
                		alt833=1;
                	}
                    break;
                case DECIMAL_NUMBER:
                	{
                		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 rulefield_lengthEx;

                }

                switch (alt833)
                {
            	case 1:
            	    // MySQL.g:2935:19: real_ulonglong_number
            	    {
            	        FOLLOWPUSH(FOLLOW_real_ulonglong_number_in_field_length15434);
            	        real_ulonglong_number2940=real_ulonglong_number(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_lengthEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulonglong_number2940.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:2935:43: DECIMAL_NUMBER
            	    {
            	        DECIMAL_NUMBER2941 = (pANTLR3_COMMON_TOKEN) MATCHT(DECIMAL_NUMBER, &FOLLOW_DECIMAL_NUMBER_in_field_length15438);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_lengthEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DECIMAL_NUMBER2941_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DECIMAL_NUMBER2941));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DECIMAL_NUMBER2941_tree);
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL2942 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_field_length15441);
            if  (HASEXCEPTION())
            {
                goto rulefield_lengthEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2942_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2942));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2942_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:2938: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    set2943;

    pANTLR3_BASE_TREE set2943_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2943       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2943_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2938:14: ( ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+ )
        // MySQL.g:2939:2: ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2939:2: ( SIGNED_SYMBOL | UNSIGNED_SYMBOL | ZEROFILL_SYMBOL )+
            {
                int cnt834=0;

                for (;;)
                {
                    int alt834=2;
            	switch ( LA(1) )
            	{
            	case SIGNED_SYMBOL:
            	case UNSIGNED_SYMBOL:
            	case ZEROFILL_SYMBOL:
            		{
            			alt834=1;
            		}
            	    break;

            	}

            	switch (alt834)
            	{
            	    case 1:
            	        // MySQL.g:
            	        {
            	            set2943=(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, set2943))
            	                );
            	                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 ( cnt834 >= 1 )
            		{
            		    goto loop834;
            		}
            		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;
            	}
            	cnt834++;
                }
                loop834: ;	/* 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 string_binary
 * MySQL.g:2942:1: string_binary : ( ascii | unicode | BYTE_SYMBOL | charset charset_name ( BINARY_SYMBOL )? | BINARY_SYMBOL ( charset charset_name )? );
 */
static MySQLParser_string_binary_return
string_binary(pMySQLParser ctx)
{
    MySQLParser_string_binary_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    BYTE_SYMBOL2946;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2949;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2950;
    MySQLParser_ascii_return ascii2944;
    #undef	RETURN_TYPE_ascii2944
    #define	RETURN_TYPE_ascii2944 MySQLParser_ascii_return

    MySQLParser_unicode_return unicode2945;
    #undef	RETURN_TYPE_unicode2945
    #define	RETURN_TYPE_unicode2945 MySQLParser_unicode_return

    MySQLParser_charset_return charset2947;
    #undef	RETURN_TYPE_charset2947
    #define	RETURN_TYPE_charset2947 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2948;
    #undef	RETURN_TYPE_charset_name2948
    #define	RETURN_TYPE_charset_name2948 MySQLParser_charset_name_return

    MySQLParser_charset_return charset2951;
    #undef	RETURN_TYPE_charset2951
    #define	RETURN_TYPE_charset2951 MySQLParser_charset_return

    MySQLParser_charset_name_return charset_name2952;
    #undef	RETURN_TYPE_charset_name2952
    #define	RETURN_TYPE_charset_name2952 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE BYTE_SYMBOL2946_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2949_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2950_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BYTE_SYMBOL2946       = NULL;
    BINARY_SYMBOL2949       = NULL;
    BINARY_SYMBOL2950       = NULL;
    ascii2944.tree = NULL;

    unicode2945.tree = NULL;

    charset2947.tree = NULL;

    charset_name2948.tree = NULL;

    charset2951.tree = NULL;

    charset_name2952.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BYTE_SYMBOL2946_tree   = NULL;
    BINARY_SYMBOL2949_tree   = NULL;
    BINARY_SYMBOL2950_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2942:14: ( ascii | unicode | BYTE_SYMBOL | charset charset_name ( BINARY_SYMBOL )? | BINARY_SYMBOL ( charset charset_name )? )

            ANTLR3_UINT32 alt837;

            alt837=5;

            switch ( LA(1) )
            {
            case ASCII_SYMBOL:
            	{
            		alt837=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		{
            		    int LA837_2 = LA(2);
            		    if ( (LA837_2 == ASCII_SYMBOL))
            		    {
            		        alt837=1;
            		    }
            		    else if ( (LA837_2 == UNICODE_SYMBOL))
            		    {
            		        alt837=2;
            		    }
            		    else if ( (LA837_2 == EOF || ((LA837_2 >= BACKUP_SYMBOL) && (LA837_2 <= BEGIN_SYMBOL)) || ((LA837_2 >= CACHE_SYMBOL) && (LA837_2 <= DO_SYMBOL)) || ((LA837_2 >= EXECUTE_SYMBOL) && (LA837_2 <= FLUSH_SYMBOL)) || ((LA837_2 >= HANDLER_SYMBOL) && (LA837_2 <= HELP_SYMBOL)) || ((LA837_2 >= INSTALL_SYMBOL) && (LA837_2 <= OPEN_SYMBOL)) || LA837_2 == PARTITION_SYMBOL || ((LA837_2 >= PREPARE_SYMBOL) && (LA837_2 <= SAVEPOINT_SYMBOL)) || ((LA837_2 >= START_SYMBOL) && (LA837_2 <= TRUNCATE_SYMBOL)) || LA837_2 == UNINSTALL_SYMBOL || ((LA837_2 >= XA_SYMBOL) && (LA837_2 <= YEAR_SYMBOL)) || LA837_2 == ALTER_SYMBOL || LA837_2 == AS_SYMBOL || LA837_2 == BACK_TICK_QUOTED_ID || LA837_2 == CALL_SYMBOL || LA837_2 == CASE_SYMBOL || LA837_2 == CHANGE_SYMBOL || ((LA837_2 >= CHAR_SYMBOL) && (LA837_2 <= CHECK_SYMBOL)) || ((LA837_2 >= CLOSE_PAR_SYMBOL) && (LA837_2 <= COLLATE_SYMBOL)) || LA837_2 == COMMA_SYMBOL || LA837_2 == CREATE_SYMBOL || LA837_2 == DEFAULT_SYMBOL || ((LA837_2 >= DELETE_SYMBOL) && (LA837_2 <= DETERMINISTIC_SYMBOL)) || LA837_2 == DOUBLE_QUOTED_TEXT || LA837_2 == DROP_SYMBOL || LA837_2 == FETCH_SYMBOL || ((LA837_2 >= GENERATED_SYMBOL) && (LA837_2 <= GRANT_SYMBOL)) || ((LA837_2 >= IDENTIFIER) && (LA837_2 <= IF_SYMBOL)) || LA837_2 == INSERT_SYMBOL || LA837_2 == ITERATE_SYMBOL || ((LA837_2 >= KEY_SYMBOL) && (LA837_2 <= KILL_SYMBOL)) || LA837_2 == LEAVE_SYMBOL || LA837_2 == LOAD_SYMBOL || LA837_2 == LOCK_SYMBOL || LA837_2 == LOOP_SYMBOL || LA837_2 == MODIFIES_SYMBOL || LA837_2 == NOT_SYMBOL || LA837_2 == NULL2_SYMBOL || LA837_2 == NULL_SYMBOL || LA837_2 == ON_SYMBOL || LA837_2 == OPEN_PAR_SYMBOL || LA837_2 == OPTIMIZE_SYMBOL || LA837_2 == PRIMARY_SYMBOL || LA837_2 == PURGE_SYMBOL || LA837_2 == READS_SYMBOL || LA837_2 == REFERENCES_SYMBOL || ((LA837_2 >= RELEASE_SYMBOL) && (LA837_2 <= REPLACE_SYMBOL)) || LA837_2 == RESIGNAL_SYMBOL || ((LA837_2 >= RETURN_SYMBOL) && (LA837_2 <= REVOKE_SYMBOL)) || ((LA837_2 >= SELECT_SYMBOL) && (LA837_2 <= SEMICOLON_SYMBOL)) || LA837_2 == SET_SYMBOL || ((LA837_2 >= SHOW_SYMBOL) && (LA837_2 <= SIGNAL_SYMBOL)) || LA837_2 == SQL_SYMBOL || ((LA837_2 >= UNIQUE_SYMBOL) && (LA837_2 <= UNLOCK_SYMBOL)) || LA837_2 == UPDATE_SYMBOL || LA837_2 == USE_SYMBOL || LA837_2 == WHILE_SYMBOL))
            		    {
            		        alt837=5;
            		    }
            		    else
            		    {
            		        if (BACKTRACKING>0)
            		        {
            		            FAILEDFLAG = ANTLR3_TRUE;
            		            return retval;
            		        }


            		        CONSTRUCTEX();
            		        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		        EXCEPTION->message      = (void *)"";
            		        EXCEPTION->decisionNum  = 837;
            		        EXCEPTION->state        = 2;


            		        goto rulestring_binaryEx;

            		    }
            		}
            	}
                break;
            case UNICODE_SYMBOL:
            	{
            		alt837=2;
            	}
                break;
            case BYTE_SYMBOL:
            	{
            		alt837=3;
            	}
                break;
            case CHARSET_SYMBOL:
            case CHAR_SYMBOL:
            	{
            		alt837=4;
            	}
                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 rulestring_binaryEx;

            }

            switch (alt837)
            {
        	case 1:
        	    // MySQL.g:2943:2: ascii
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_ascii_in_string_binary15470);
        	        ascii2944=ascii(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ascii2944.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2944:4: unicode
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_unicode_in_string_binary15475);
        	        unicode2945=unicode(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, unicode2945.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:2945:4: BYTE_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BYTE_SYMBOL2946 = (pANTLR3_COMMON_TOKEN) MATCHT(BYTE_SYMBOL, &FOLLOW_BYTE_SYMBOL_in_string_binary15480);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BYTE_SYMBOL2946_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BYTE_SYMBOL2946));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BYTE_SYMBOL2946_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:2946:4: charset charset_name ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_in_string_binary15485);
        	        charset2947=charset(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2947.tree);

        	        FOLLOWPUSH(FOLLOW_charset_name_in_string_binary15487);
        	        charset_name2948=charset_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2948.tree);

        	        // MySQL.g:2946:25: ( BINARY_SYMBOL )?
        	        {
        	            int alt835=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt835=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt835)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2946:25: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2949 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_string_binary15489);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestring_binaryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2949_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2949));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2949_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:2947:4: BINARY_SYMBOL ( charset charset_name )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2950 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_string_binary15495);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestring_binaryEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2950_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2950));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2950_tree);
        	        }

        	        // MySQL.g:2947:18: ( charset charset_name )?
        	        {
        	            int alt836=2;
        	            switch ( LA(1) )
        	            {
        	                case CHARSET_SYMBOL:
        	                case CHAR_SYMBOL:
        	                	{
        	                		alt836=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt836)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2947:19: charset charset_name
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_in_string_binary15498);
        	        	        charset2951=charset(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestring_binaryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset2951.tree);

        	        	        FOLLOWPUSH(FOLLOW_charset_name_in_string_binary15500);
        	        	        charset_name2952=charset_name(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestring_binaryEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2952.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulestring_binaryEx; /* Prevent compiler warnings */
    rulestring_binaryEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_binary */

/**
 * $ANTLR start ascii
 * MySQL.g:2950:1: ascii : ( ASCII_SYMBOL ( BINARY_SYMBOL )? |{...}? BINARY_SYMBOL ASCII_SYMBOL );
 */
static MySQLParser_ascii_return
ascii(pMySQLParser ctx)
{
    MySQLParser_ascii_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2953;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2954;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2955;
    pANTLR3_COMMON_TOKEN    ASCII_SYMBOL2956;

    pANTLR3_BASE_TREE ASCII_SYMBOL2953_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2954_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2955_tree;
    pANTLR3_BASE_TREE ASCII_SYMBOL2956_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ASCII_SYMBOL2953       = NULL;
    BINARY_SYMBOL2954       = NULL;
    BINARY_SYMBOL2955       = NULL;
    ASCII_SYMBOL2956       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ASCII_SYMBOL2953_tree   = NULL;
    BINARY_SYMBOL2954_tree   = NULL;
    BINARY_SYMBOL2955_tree   = NULL;
    ASCII_SYMBOL2956_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2950:6: ( ASCII_SYMBOL ( BINARY_SYMBOL )? |{...}? BINARY_SYMBOL ASCII_SYMBOL )

            ANTLR3_UINT32 alt839;

            alt839=2;

            switch ( LA(1) )
            {
            case ASCII_SYMBOL:
            	{
            		alt839=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		alt839=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 839;
                EXCEPTION->state        = 0;


                goto ruleasciiEx;

            }

            switch (alt839)
            {
        	case 1:
        	    // MySQL.g:2951:2: ASCII_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ASCII_SYMBOL2953 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_ascii15511);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleasciiEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2953_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2953));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2953_tree);
        	        }

        	        // MySQL.g:2951:15: ( BINARY_SYMBOL )?
        	        {
        	            int alt838=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt838=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt838)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2951:15: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2954 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_ascii15513);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleasciiEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2954_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2954));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2954_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2952:4: {...}? BINARY_SYMBOL ASCII_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 *)"ascii";


        	        }

        	        BINARY_SYMBOL2955 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_ascii15521);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleasciiEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2955_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2955));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2955_tree);
        	        }

        	        ASCII_SYMBOL2956 = (pANTLR3_COMMON_TOKEN) MATCHT(ASCII_SYMBOL, &FOLLOW_ASCII_SYMBOL_in_ascii15523);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleasciiEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ASCII_SYMBOL2956_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ASCII_SYMBOL2956));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ASCII_SYMBOL2956_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleasciiEx; /* Prevent compiler warnings */
    ruleasciiEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end ascii */

/**
 * $ANTLR start unicode
 * MySQL.g:2955:1: unicode : ( UNICODE_SYMBOL ( BINARY_SYMBOL )? |{...}? BINARY_SYMBOL UNICODE_SYMBOL );
 */
static MySQLParser_unicode_return
unicode(pMySQLParser ctx)
{
    MySQLParser_unicode_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2957;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2958;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL2959;
    pANTLR3_COMMON_TOKEN    UNICODE_SYMBOL2960;

    pANTLR3_BASE_TREE UNICODE_SYMBOL2957_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2958_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL2959_tree;
    pANTLR3_BASE_TREE UNICODE_SYMBOL2960_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNICODE_SYMBOL2957       = NULL;
    BINARY_SYMBOL2958       = NULL;
    BINARY_SYMBOL2959       = NULL;
    UNICODE_SYMBOL2960       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNICODE_SYMBOL2957_tree   = NULL;
    BINARY_SYMBOL2958_tree   = NULL;
    BINARY_SYMBOL2959_tree   = NULL;
    UNICODE_SYMBOL2960_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2955:8: ( UNICODE_SYMBOL ( BINARY_SYMBOL )? |{...}? BINARY_SYMBOL UNICODE_SYMBOL )

            ANTLR3_UINT32 alt841;

            alt841=2;

            switch ( LA(1) )
            {
            case UNICODE_SYMBOL:
            	{
            		alt841=1;
            	}
                break;
            case BINARY_SYMBOL:
            	{
            		alt841=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 841;
                EXCEPTION->state        = 0;


                goto ruleunicodeEx;

            }

            switch (alt841)
            {
        	case 1:
        	    // MySQL.g:2956:2: UNICODE_SYMBOL ( BINARY_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNICODE_SYMBOL2957 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_unicode15532);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunicodeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNICODE_SYMBOL2957_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2957));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2957_tree);
        	        }

        	        // MySQL.g:2956:17: ( BINARY_SYMBOL )?
        	        {
        	            int alt840=2;
        	            switch ( LA(1) )
        	            {
        	                case BINARY_SYMBOL:
        	                	{
        	                		alt840=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt840)
        	            {
        	        	case 1:
        	        	    // MySQL.g:2956:17: BINARY_SYMBOL
        	        	    {
        	        	        BINARY_SYMBOL2958 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_unicode15534);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleunicodeEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        BINARY_SYMBOL2958_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2958));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2958_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2957:4: {...}? BINARY_SYMBOL UNICODE_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 *)"unicode";


        	        }

        	        BINARY_SYMBOL2959 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_unicode15542);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunicodeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2959_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2959));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2959_tree);
        	        }

        	        UNICODE_SYMBOL2960 = (pANTLR3_COMMON_TOKEN) MATCHT(UNICODE_SYMBOL, &FOLLOW_UNICODE_SYMBOL_in_unicode15544);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleunicodeEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNICODE_SYMBOL2960_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNICODE_SYMBOL2960));
        	        ADAPTOR->addChild(ADAPTOR, root_0, UNICODE_SYMBOL2960_tree);
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruleunicodeEx; /* Prevent compiler warnings */
    ruleunicodeEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end unicode */

/**
 * $ANTLR start type_datetime_precision
 * MySQL.g:2960:1: type_datetime_precision :{...}? OPEN_PAR_SYMBOL INT_NUMBER 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_SYMBOL2961;
    pANTLR3_COMMON_TOKEN    INT_NUMBER2962;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL2963;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL2961_tree;
    pANTLR3_BASE_TREE INT_NUMBER2962_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL2963_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL2961       = NULL;
    INT_NUMBER2962       = NULL;
    CLOSE_PAR_SYMBOL2963       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL2961_tree   = NULL;
    INT_NUMBER2962_tree   = NULL;
    CLOSE_PAR_SYMBOL2963_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2960:24: ({...}? OPEN_PAR_SYMBOL INT_NUMBER CLOSE_PAR_SYMBOL )
        // MySQL.g:2961:2: {...}? OPEN_PAR_SYMBOL INT_NUMBER 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_SYMBOL2961 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_type_datetime_precision15555);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL2961_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL2961));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL2961_tree);
            }

            INT_NUMBER2962 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_type_datetime_precision15557);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER2962_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER2962));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER2962_tree);
            }

            CLOSE_PAR_SYMBOL2963 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_type_datetime_precision15559);
            if  (HASEXCEPTION())
            {
                goto ruletype_datetime_precisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL2963_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL2963));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL2963_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:2964: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_SYMBOL2965;
    MySQLParser_text_or_identifier_return text_or_identifier2964;
    #undef	RETURN_TYPE_text_or_identifier2964
    #define	RETURN_TYPE_text_or_identifier2964 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE BINARY_SYMBOL2965_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    BINARY_SYMBOL2965       = NULL;
    text_or_identifier2964.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    BINARY_SYMBOL2965_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2964:13: ( text_or_identifier | BINARY_SYMBOL )

            ANTLR3_UINT32 alt842;

            alt842=2;

            {
                int LA842_0 = LA(1);
                if ( (((LA842_0 >= ACCOUNT_SYMBOL) && (LA842_0 <= YEAR_SYMBOL)) || LA842_0 == BACK_TICK_QUOTED_ID || LA842_0 == DOUBLE_QUOTED_TEXT || LA842_0 == IDENTIFIER || LA842_0 == SINGLE_QUOTED_TEXT))
                {
                    alt842=1;
                }
                else if ( (LA842_0 == BINARY_SYMBOL))
                {
                    alt842=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 842;
                    EXCEPTION->state        = 0;


                    goto rulecharset_nameEx;

                }
            }
            switch (alt842)
            {
        	case 1:
        	    // MySQL.g:2965:2: text_or_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_charset_name15568);
        	        text_or_identifier2964=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2964.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2966:4: BINARY_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BINARY_SYMBOL2965 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_charset_name15573);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_nameEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BINARY_SYMBOL2965_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL2965));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL2965_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:2969:1: charset_name_or_default : ( charset_name | 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_SYMBOL2967;
    MySQLParser_charset_name_return charset_name2966;
    #undef	RETURN_TYPE_charset_name2966
    #define	RETURN_TYPE_charset_name2966 MySQLParser_charset_name_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2967_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2967       = NULL;
    charset_name2966.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2967_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2969:24: ( charset_name | DEFAULT_SYMBOL )

            ANTLR3_UINT32 alt843;

            alt843=2;

            {
                int LA843_0 = LA(1);
                if ( (((LA843_0 >= ACCOUNT_SYMBOL) && (LA843_0 <= YEAR_SYMBOL)) || LA843_0 == BACK_TICK_QUOTED_ID || LA843_0 == BINARY_SYMBOL || LA843_0 == DOUBLE_QUOTED_TEXT || LA843_0 == IDENTIFIER || LA843_0 == SINGLE_QUOTED_TEXT))
                {
                    alt843=1;
                }
                else if ( (LA843_0 == DEFAULT_SYMBOL))
                {
                    alt843=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 843;
                    EXCEPTION->state        = 0;


                    goto rulecharset_name_or_defaultEx;

                }
            }
            switch (alt843)
            {
        	case 1:
        	    // MySQL.g:2970:2: charset_name
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_charset_name_in_charset_name_or_default15582);
        	        charset_name2966=charset_name(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset_name2966.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2971:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2967 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_charset_name_or_default15587);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecharset_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2967_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2967));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2967_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
 * MySQL.g:2974:1: collation_name : text_or_identifier ;
 */
static MySQLParser_collation_name_return
collation_name(pMySQLParser ctx)
{
    MySQLParser_collation_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_text_or_identifier_return text_or_identifier2968;
    #undef	RETURN_TYPE_text_or_identifier2968
    #define	RETURN_TYPE_text_or_identifier2968 MySQLParser_text_or_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    text_or_identifier2968.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2974:15: ( text_or_identifier )
        // MySQL.g:2975:2: text_or_identifier
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_text_or_identifier_in_collation_name15596);
            text_or_identifier2968=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecollation_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier2968.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecollation_nameEx; /* Prevent compiler warnings */
    rulecollation_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 collation_name */

/**
 * $ANTLR start collation_name_or_default
 * MySQL.g:2978: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_SYMBOL2970;
    MySQLParser_text_or_identifier_return text_or_identifier2969;
    #undef	RETURN_TYPE_text_or_identifier2969
    #define	RETURN_TYPE_text_or_identifier2969 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL2970_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL2970       = NULL;
    text_or_identifier2969.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL2970_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:2978:26: ( text_or_identifier | DEFAULT_SYMBOL )

            ANTLR3_UINT32 alt844;

            alt844=2;

            {
                int LA844_0 = LA(1);
                if ( (((LA844_0 >= ACCOUNT_SYMBOL) && (LA844_0 <= YEAR_SYMBOL)) || LA844_0 == BACK_TICK_QUOTED_ID || LA844_0 == DOUBLE_QUOTED_TEXT || LA844_0 == IDENTIFIER || LA844_0 == SINGLE_QUOTED_TEXT))
                {
                    alt844=1;
                }
                else if ( (LA844_0 == DEFAULT_SYMBOL))
                {
                    alt844=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 844;
                    EXCEPTION->state        = 0;


                    goto rulecollation_name_or_defaultEx;

                }
            }
            switch (alt844)
            {
        	case 1:
        	    // MySQL.g:2979:2: text_or_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_collation_name_or_default15605);
        	        text_or_identifier2969=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_identifier2969.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:2980:4: DEFAULT_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DEFAULT_SYMBOL2970 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_collation_name_or_default15610);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecollation_name_or_defaultEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DEFAULT_SYMBOL2970_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL2970));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL2970_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:2983: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    set2971;

    pANTLR3_BASE_TREE set2971_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set2971       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set2971_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2983: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));


            set2971=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= GEOMETRY_SYMBOL) && (LA(1) <= GEOMETRYCOLLECTION_SYMBOL)) || LA(1) == LINESTRING_SYMBOL || ((LA(1) >= MULTILINESTRING_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, set2971))
                );
                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:2994: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_option2972;
    #undef	RETURN_TYPE_create_table_option2972
    #define	RETURN_TYPE_create_table_option2972 MySQLParser_create_table_option_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    create_table_option2972.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:2994:20: ( ( create_table_option )+ )
        // MySQL.g:2995:2: ( create_table_option )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:2995:2: ( create_table_option )+
            {
                int cnt845=0;

                for (;;)
                {
                    int alt845=2;
            	switch ( LA(1) )
            	{
            	case CHARSET_SYMBOL:
            	case CHECKSUM_SYMBOL:
            	case COMMENT_SYMBOL:
            	case AUTO_INCREMENT_SYMBOL:
            	case AVG_ROW_LENGTH_SYMBOL:
            	case COMPRESSION_SYMBOL:
            	case CONNECTION_SYMBOL:
            	case DATA_SYMBOL:
            	case DELAY_KEY_WRITE_SYMBOL:
            	case ENGINE_SYMBOL:
            	case INSERT_METHOD_SYMBOL:
            	case KEY_BLOCK_SIZE_SYMBOL:
            	case MAX_ROWS_SYMBOL:
            	case MIN_ROWS_SYMBOL:
            	case PACK_KEYS_SYMBOL:
            	case PASSWORD_SYMBOL:
            	case ROW_FORMAT_SYMBOL:
            	case STATS_AUTO_RECALC_SYMBOL:
            	case STATS_PERSISTENT_SYMBOL:
            	case STATS_SAMPLE_PAGES_SYMBOL:
            	case STORAGE_SYMBOL:
            	case TABLE_CHECKSUM_SYMBOL:
            	case TABLESPACE_SYMBOL:
            	case TYPE_SYMBOL:
            	case CHAR_SYMBOL:
            	case COLLATE_SYMBOL:
            	case DEFAULT_SYMBOL:
            	case INDEX_SYMBOL:
            	case UNION_SYMBOL:
            		{
            			alt845=1;
            		}
            	    break;

            	}

            	switch (alt845)
            	{
            	    case 1:
            	        // MySQL.g:2995:2: create_table_option
            	        {
            	            FOLLOWPUSH(FOLLOW_create_table_option_in_alter_table_options15663);
            	            create_table_option2972=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_option2972.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt845 >= 1 )
            		{
            		    goto loop845;
            		}
            		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;
            	}
            	cnt845++;
                }
                loop845: ;	/* 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:2998: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_SYMBOL2974;
    MySQLParser_create_table_option_return create_table_option2973;
    #undef	RETURN_TYPE_create_table_option2973
    #define	RETURN_TYPE_create_table_option2973 MySQLParser_create_table_option_return

    MySQLParser_create_table_option_return create_table_option2975;
    #undef	RETURN_TYPE_create_table_option2975
    #define	RETURN_TYPE_create_table_option2975 MySQLParser_create_table_option_return

    pANTLR3_BASE_TREE COMMA_SYMBOL2974_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL2974       = NULL;
    create_table_option2973.tree = NULL;

    create_table_option2975.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL2974_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:2998:21: ( create_table_option ( ( COMMA_SYMBOL )? create_table_option )* )
        // MySQL.g:2999: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_options15673);
            create_table_option2973=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_option2973.tree);

            // MySQL.g:2999:22: ( ( COMMA_SYMBOL )? create_table_option )*

            for (;;)
            {
                int alt847=2;
                switch ( LA(1) )
                {
                case CHARSET_SYMBOL:
                case CHECKSUM_SYMBOL:
                case COMMENT_SYMBOL:
                case AUTO_INCREMENT_SYMBOL:
                case AVG_ROW_LENGTH_SYMBOL:
                case COMPRESSION_SYMBOL:
                case CONNECTION_SYMBOL:
                case DATA_SYMBOL:
                case DELAY_KEY_WRITE_SYMBOL:
                case ENGINE_SYMBOL:
                case INSERT_METHOD_SYMBOL:
                case KEY_BLOCK_SIZE_SYMBOL:
                case MAX_ROWS_SYMBOL:
                case MIN_ROWS_SYMBOL:
                case PACK_KEYS_SYMBOL:
                case PASSWORD_SYMBOL:
                case ROW_FORMAT_SYMBOL:
                case STATS_AUTO_RECALC_SYMBOL:
                case STATS_PERSISTENT_SYMBOL:
                case STATS_SAMPLE_PAGES_SYMBOL:
                case STORAGE_SYMBOL:
                case TABLE_CHECKSUM_SYMBOL:
                case TABLESPACE_SYMBOL:
                case TYPE_SYMBOL:
                case CHAR_SYMBOL:
                case COLLATE_SYMBOL:
                case COMMA_SYMBOL:
                case DEFAULT_SYMBOL:
                case INDEX_SYMBOL:
                case UNION_SYMBOL:
                	{
                		alt847=1;
                	}
                    break;

                }

                switch (alt847)
                {
            	case 1:
            	    // MySQL.g:2999:23: ( COMMA_SYMBOL )? create_table_option
            	    {
            	        // MySQL.g:2999:23: ( COMMA_SYMBOL )?
            	        {
            	            int alt846=2;
            	            switch ( LA(1) )
            	            {
            	                case COMMA_SYMBOL:
            	                	{
            	                		alt846=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt846)
            	            {
            	        	case 1:
            	        	    // MySQL.g:2999:23: COMMA_SYMBOL
            	        	    {
            	        	        COMMA_SYMBOL2974 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_create_table_options15676);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecreate_table_optionsEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL2974_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL2974));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL2974_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_create_table_option_in_create_table_options15679);
            	        create_table_option2975=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_option2975.tree);

            	    }
            	    break;

            	default:
            	    goto loop847;	/* break out of the loop */
            	    break;
                }
            }
            loop847: ; /* 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:3002:1: create_table_option : ( ( ENGINE_SYMBOL |{...}? TYPE_SYMBOL ) ( EQUAL_OPERATOR )? engine_ref | MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number | MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number | AVG_ROW_LENGTH_SYMBOL ( EQUAL_OPERATOR )? ulong_number | PASSWORD_SYMBOL ( EQUAL_OPERATOR )? text_string | COMMENT_SYMBOL ( EQUAL_OPERATOR )? text_string | COMPRESSION_SYMBOL ( EQUAL_OPERATOR )? text_string | AUTO_INCREMENT_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number | PACK_KEYS_SYMBOL ( EQUAL_OPERATOR )? ( ulong_number | DEFAULT_SYMBOL ) |{...}? ( STATS_AUTO_RECALC_SYMBOL | STATS_PERSISTENT_SYMBOL | STATS_SAMPLE_PAGES_SYMBOL ) ( EQUAL_OPERATOR )? ( ulong_number | DEFAULT_SYMBOL ) | ( CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL ) ( EQUAL_OPERATOR )? ulong_number | DELAY_KEY_WRITE_SYMBOL ( EQUAL_OPERATOR )? ulong_number | ROW_FORMAT_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL ) | UNION_SYMBOL ^ ( EQUAL_OPERATOR )? OPEN_PAR_SYMBOL table_ref_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_string | INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_string | TABLESPACE_SYMBOL ({...}? ( EQUAL_OPERATOR )? |) identifier | STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL ) | CONNECTION_SYMBOL ( EQUAL_OPERATOR )? text_string | KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number );
 */
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_SYMBOL2976;
    pANTLR3_COMMON_TOKEN    TYPE_SYMBOL2977;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2978;
    pANTLR3_COMMON_TOKEN    MAX_ROWS_SYMBOL2980;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2981;
    pANTLR3_COMMON_TOKEN    MIN_ROWS_SYMBOL2983;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2984;
    pANTLR3_COMMON_TOKEN    AVG_ROW_LENGTH_SYMBOL2986;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2987;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL2989;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2990;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL2992;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2993;
    pANTLR3_COMMON_TOKEN    COMPRESSION_SYMBOL2995;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2996;
    pANTLR3_COMMON_TOKEN    AUTO_INCREMENT_SYMBOL2998;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR2999;
    pANTLR3_COMMON_TOKEN    PACK_KEYS_SYMBOL3001;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3002;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL3004;
    pANTLR3_COMMON_TOKEN    set3005;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3006;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL3008;
    pANTLR3_COMMON_TOKEN    set3009;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3010;
    pANTLR3_COMMON_TOKEN    DELAY_KEY_WRITE_SYMBOL3012;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3013;
    pANTLR3_COMMON_TOKEN    ROW_FORMAT_SYMBOL3015;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3016;
    pANTLR3_COMMON_TOKEN    set3017;
    pANTLR3_COMMON_TOKEN    UNION_SYMBOL3018;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3019;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3020;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3022;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL3023;
    pANTLR3_COMMON_TOKEN    COLLATE_SYMBOL3024;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3025;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3028;
    pANTLR3_COMMON_TOKEN    INSERT_METHOD_SYMBOL3030;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3031;
    pANTLR3_COMMON_TOKEN    set3032;
    pANTLR3_COMMON_TOKEN    DATA_SYMBOL3033;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL3034;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3035;
    pANTLR3_COMMON_TOKEN    INDEX_SYMBOL3037;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL3038;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3039;
    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL3041;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3042;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL3044;
    pANTLR3_COMMON_TOKEN    set3045;
    pANTLR3_COMMON_TOKEN    CONNECTION_SYMBOL3046;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3047;
    pANTLR3_COMMON_TOKEN    KEY_BLOCK_SIZE_SYMBOL3049;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3050;
    MySQLParser_engine_ref_return engine_ref2979;
    #undef	RETURN_TYPE_engine_ref2979
    #define	RETURN_TYPE_engine_ref2979 MySQLParser_engine_ref_return

    MySQLParser_ulonglong_number_return ulonglong_number2982;
    #undef	RETURN_TYPE_ulonglong_number2982
    #define	RETURN_TYPE_ulonglong_number2982 MySQLParser_ulonglong_number_return

    MySQLParser_ulonglong_number_return ulonglong_number2985;
    #undef	RETURN_TYPE_ulonglong_number2985
    #define	RETURN_TYPE_ulonglong_number2985 MySQLParser_ulonglong_number_return

    MySQLParser_ulong_number_return ulong_number2988;
    #undef	RETURN_TYPE_ulong_number2988
    #define	RETURN_TYPE_ulong_number2988 MySQLParser_ulong_number_return

    MySQLParser_text_string_return text_string2991;
    #undef	RETURN_TYPE_text_string2991
    #define	RETURN_TYPE_text_string2991 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string2994;
    #undef	RETURN_TYPE_text_string2994
    #define	RETURN_TYPE_text_string2994 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string2997;
    #undef	RETURN_TYPE_text_string2997
    #define	RETURN_TYPE_text_string2997 MySQLParser_text_string_return

    MySQLParser_ulonglong_number_return ulonglong_number3000;
    #undef	RETURN_TYPE_ulonglong_number3000
    #define	RETURN_TYPE_ulonglong_number3000 MySQLParser_ulonglong_number_return

    MySQLParser_ulong_number_return ulong_number3003;
    #undef	RETURN_TYPE_ulong_number3003
    #define	RETURN_TYPE_ulong_number3003 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number3007;
    #undef	RETURN_TYPE_ulong_number3007
    #define	RETURN_TYPE_ulong_number3007 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number3011;
    #undef	RETURN_TYPE_ulong_number3011
    #define	RETURN_TYPE_ulong_number3011 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number3014;
    #undef	RETURN_TYPE_ulong_number3014
    #define	RETURN_TYPE_ulong_number3014 MySQLParser_ulong_number_return

    MySQLParser_table_ref_list_return table_ref_list3021;
    #undef	RETURN_TYPE_table_ref_list3021
    #define	RETURN_TYPE_table_ref_list3021 MySQLParser_table_ref_list_return

    MySQLParser_collation_name_or_default_return collation_name_or_default3026;
    #undef	RETURN_TYPE_collation_name_or_default3026
    #define	RETURN_TYPE_collation_name_or_default3026 MySQLParser_collation_name_or_default_return

    MySQLParser_charset_return charset3027;
    #undef	RETURN_TYPE_charset3027
    #define	RETURN_TYPE_charset3027 MySQLParser_charset_return

    MySQLParser_charset_name_or_default_return charset_name_or_default3029;
    #undef	RETURN_TYPE_charset_name_or_default3029
    #define	RETURN_TYPE_charset_name_or_default3029 MySQLParser_charset_name_or_default_return

    MySQLParser_text_string_return text_string3036;
    #undef	RETURN_TYPE_text_string3036
    #define	RETURN_TYPE_text_string3036 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3040;
    #undef	RETURN_TYPE_text_string3040
    #define	RETURN_TYPE_text_string3040 MySQLParser_text_string_return

    MySQLParser_identifier_return identifier3043;
    #undef	RETURN_TYPE_identifier3043
    #define	RETURN_TYPE_identifier3043 MySQLParser_identifier_return

    MySQLParser_text_string_return text_string3048;
    #undef	RETURN_TYPE_text_string3048
    #define	RETURN_TYPE_text_string3048 MySQLParser_text_string_return

    MySQLParser_ulong_number_return ulong_number3051;
    #undef	RETURN_TYPE_ulong_number3051
    #define	RETURN_TYPE_ulong_number3051 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE ENGINE_SYMBOL2976_tree;
    pANTLR3_BASE_TREE TYPE_SYMBOL2977_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2978_tree;
    pANTLR3_BASE_TREE MAX_ROWS_SYMBOL2980_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2981_tree;
    pANTLR3_BASE_TREE MIN_ROWS_SYMBOL2983_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2984_tree;
    pANTLR3_BASE_TREE AVG_ROW_LENGTH_SYMBOL2986_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2987_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL2989_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2990_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL2992_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2993_tree;
    pANTLR3_BASE_TREE COMPRESSION_SYMBOL2995_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2996_tree;
    pANTLR3_BASE_TREE AUTO_INCREMENT_SYMBOL2998_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR2999_tree;
    pANTLR3_BASE_TREE PACK_KEYS_SYMBOL3001_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3002_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL3004_tree;
    pANTLR3_BASE_TREE set3005_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3006_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL3008_tree;
    pANTLR3_BASE_TREE set3009_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3010_tree;
    pANTLR3_BASE_TREE DELAY_KEY_WRITE_SYMBOL3012_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3013_tree;
    pANTLR3_BASE_TREE ROW_FORMAT_SYMBOL3015_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3016_tree;
    pANTLR3_BASE_TREE set3017_tree;
    pANTLR3_BASE_TREE UNION_SYMBOL3018_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3019_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3020_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3022_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL3023_tree;
    pANTLR3_BASE_TREE COLLATE_SYMBOL3024_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3025_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3028_tree;
    pANTLR3_BASE_TREE INSERT_METHOD_SYMBOL3030_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3031_tree;
    pANTLR3_BASE_TREE set3032_tree;
    pANTLR3_BASE_TREE DATA_SYMBOL3033_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL3034_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3035_tree;
    pANTLR3_BASE_TREE INDEX_SYMBOL3037_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL3038_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3039_tree;
    pANTLR3_BASE_TREE TABLESPACE_SYMBOL3041_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3042_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL3044_tree;
    pANTLR3_BASE_TREE set3045_tree;
    pANTLR3_BASE_TREE CONNECTION_SYMBOL3046_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3047_tree;
    pANTLR3_BASE_TREE KEY_BLOCK_SIZE_SYMBOL3049_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3050_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ENGINE_SYMBOL2976       = NULL;
    TYPE_SYMBOL2977       = NULL;
    EQUAL_OPERATOR2978       = NULL;
    MAX_ROWS_SYMBOL2980       = NULL;
    EQUAL_OPERATOR2981       = NULL;
    MIN_ROWS_SYMBOL2983       = NULL;
    EQUAL_OPERATOR2984       = NULL;
    AVG_ROW_LENGTH_SYMBOL2986       = NULL;
    EQUAL_OPERATOR2987       = NULL;
    PASSWORD_SYMBOL2989       = NULL;
    EQUAL_OPERATOR2990       = NULL;
    COMMENT_SYMBOL2992       = NULL;
    EQUAL_OPERATOR2993       = NULL;
    COMPRESSION_SYMBOL2995       = NULL;
    EQUAL_OPERATOR2996       = NULL;
    AUTO_INCREMENT_SYMBOL2998       = NULL;
    EQUAL_OPERATOR2999       = NULL;
    PACK_KEYS_SYMBOL3001       = NULL;
    EQUAL_OPERATOR3002       = NULL;
    DEFAULT_SYMBOL3004       = NULL;
    set3005       = NULL;
    EQUAL_OPERATOR3006       = NULL;
    DEFAULT_SYMBOL3008       = NULL;
    set3009       = NULL;
    EQUAL_OPERATOR3010       = NULL;
    DELAY_KEY_WRITE_SYMBOL3012       = NULL;
    EQUAL_OPERATOR3013       = NULL;
    ROW_FORMAT_SYMBOL3015       = NULL;
    EQUAL_OPERATOR3016       = NULL;
    set3017       = NULL;
    UNION_SYMBOL3018       = NULL;
    EQUAL_OPERATOR3019       = NULL;
    OPEN_PAR_SYMBOL3020       = NULL;
    CLOSE_PAR_SYMBOL3022       = NULL;
    DEFAULT_SYMBOL3023       = NULL;
    COLLATE_SYMBOL3024       = NULL;
    EQUAL_OPERATOR3025       = NULL;
    EQUAL_OPERATOR3028       = NULL;
    INSERT_METHOD_SYMBOL3030       = NULL;
    EQUAL_OPERATOR3031       = NULL;
    set3032       = NULL;
    DATA_SYMBOL3033       = NULL;
    DIRECTORY_SYMBOL3034       = NULL;
    EQUAL_OPERATOR3035       = NULL;
    INDEX_SYMBOL3037       = NULL;
    DIRECTORY_SYMBOL3038       = NULL;
    EQUAL_OPERATOR3039       = NULL;
    TABLESPACE_SYMBOL3041       = NULL;
    EQUAL_OPERATOR3042       = NULL;
    STORAGE_SYMBOL3044       = NULL;
    set3045       = NULL;
    CONNECTION_SYMBOL3046       = NULL;
    EQUAL_OPERATOR3047       = NULL;
    KEY_BLOCK_SIZE_SYMBOL3049       = NULL;
    EQUAL_OPERATOR3050       = NULL;
    engine_ref2979.tree = NULL;

    ulonglong_number2982.tree = NULL;

    ulonglong_number2985.tree = NULL;

    ulong_number2988.tree = NULL;

    text_string2991.tree = NULL;

    text_string2994.tree = NULL;

    text_string2997.tree = NULL;

    ulonglong_number3000.tree = NULL;

    ulong_number3003.tree = NULL;

    ulong_number3007.tree = NULL;

    ulong_number3011.tree = NULL;

    ulong_number3014.tree = NULL;

    table_ref_list3021.tree = NULL;

    collation_name_or_default3026.tree = NULL;

    charset3027.tree = NULL;

    charset_name_or_default3029.tree = NULL;

    text_string3036.tree = NULL;

    text_string3040.tree = NULL;

    identifier3043.tree = NULL;

    text_string3048.tree = NULL;

    ulong_number3051.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ENGINE_SYMBOL2976_tree   = NULL;
    TYPE_SYMBOL2977_tree   = NULL;
    EQUAL_OPERATOR2978_tree   = NULL;
    MAX_ROWS_SYMBOL2980_tree   = NULL;
    EQUAL_OPERATOR2981_tree   = NULL;
    MIN_ROWS_SYMBOL2983_tree   = NULL;
    EQUAL_OPERATOR2984_tree   = NULL;
    AVG_ROW_LENGTH_SYMBOL2986_tree   = NULL;
    EQUAL_OPERATOR2987_tree   = NULL;
    PASSWORD_SYMBOL2989_tree   = NULL;
    EQUAL_OPERATOR2990_tree   = NULL;
    COMMENT_SYMBOL2992_tree   = NULL;
    EQUAL_OPERATOR2993_tree   = NULL;
    COMPRESSION_SYMBOL2995_tree   = NULL;
    EQUAL_OPERATOR2996_tree   = NULL;
    AUTO_INCREMENT_SYMBOL2998_tree   = NULL;
    EQUAL_OPERATOR2999_tree   = NULL;
    PACK_KEYS_SYMBOL3001_tree   = NULL;
    EQUAL_OPERATOR3002_tree   = NULL;
    DEFAULT_SYMBOL3004_tree   = NULL;
    set3005_tree   = NULL;
    EQUAL_OPERATOR3006_tree   = NULL;
    DEFAULT_SYMBOL3008_tree   = NULL;
    set3009_tree   = NULL;
    EQUAL_OPERATOR3010_tree   = NULL;
    DELAY_KEY_WRITE_SYMBOL3012_tree   = NULL;
    EQUAL_OPERATOR3013_tree   = NULL;
    ROW_FORMAT_SYMBOL3015_tree   = NULL;
    EQUAL_OPERATOR3016_tree   = NULL;
    set3017_tree   = NULL;
    UNION_SYMBOL3018_tree   = NULL;
    EQUAL_OPERATOR3019_tree   = NULL;
    OPEN_PAR_SYMBOL3020_tree   = NULL;
    CLOSE_PAR_SYMBOL3022_tree   = NULL;
    DEFAULT_SYMBOL3023_tree   = NULL;
    COLLATE_SYMBOL3024_tree   = NULL;
    EQUAL_OPERATOR3025_tree   = NULL;
    EQUAL_OPERATOR3028_tree   = NULL;
    INSERT_METHOD_SYMBOL3030_tree   = NULL;
    EQUAL_OPERATOR3031_tree   = NULL;
    set3032_tree   = NULL;
    DATA_SYMBOL3033_tree   = NULL;
    DIRECTORY_SYMBOL3034_tree   = NULL;
    EQUAL_OPERATOR3035_tree   = NULL;
    INDEX_SYMBOL3037_tree   = NULL;
    DIRECTORY_SYMBOL3038_tree   = NULL;
    EQUAL_OPERATOR3039_tree   = NULL;
    TABLESPACE_SYMBOL3041_tree   = NULL;
    EQUAL_OPERATOR3042_tree   = NULL;
    STORAGE_SYMBOL3044_tree   = NULL;
    set3045_tree   = NULL;
    CONNECTION_SYMBOL3046_tree   = NULL;
    EQUAL_OPERATOR3047_tree   = NULL;
    KEY_BLOCK_SIZE_SYMBOL3049_tree   = NULL;
    EQUAL_OPERATOR3050_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3002:20: ( ( ENGINE_SYMBOL |{...}? TYPE_SYMBOL ) ( EQUAL_OPERATOR )? engine_ref | MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number | MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number | AVG_ROW_LENGTH_SYMBOL ( EQUAL_OPERATOR )? ulong_number | PASSWORD_SYMBOL ( EQUAL_OPERATOR )? text_string | COMMENT_SYMBOL ( EQUAL_OPERATOR )? text_string | COMPRESSION_SYMBOL ( EQUAL_OPERATOR )? text_string | AUTO_INCREMENT_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number | PACK_KEYS_SYMBOL ( EQUAL_OPERATOR )? ( ulong_number | DEFAULT_SYMBOL ) |{...}? ( STATS_AUTO_RECALC_SYMBOL | STATS_PERSISTENT_SYMBOL | STATS_SAMPLE_PAGES_SYMBOL ) ( EQUAL_OPERATOR )? ( ulong_number | DEFAULT_SYMBOL ) | ( CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL ) ( EQUAL_OPERATOR )? ulong_number | DELAY_KEY_WRITE_SYMBOL ( EQUAL_OPERATOR )? ulong_number | ROW_FORMAT_SYMBOL ( EQUAL_OPERATOR )? ( DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL ) | UNION_SYMBOL ^ ( EQUAL_OPERATOR )? OPEN_PAR_SYMBOL table_ref_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_string | INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_string | TABLESPACE_SYMBOL ({...}? ( EQUAL_OPERATOR )? |) identifier | STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL ) | CONNECTION_SYMBOL ( EQUAL_OPERATOR )? text_string | KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number )

            ANTLR3_UINT32 alt876;

            alt876=22;

            switch ( LA(1) )
            {
            case ENGINE_SYMBOL:
            case TYPE_SYMBOL:
            	{
            		alt876=1;
            	}
                break;
            case MAX_ROWS_SYMBOL:
            	{
            		alt876=2;
            	}
                break;
            case MIN_ROWS_SYMBOL:
            	{
            		alt876=3;
            	}
                break;
            case AVG_ROW_LENGTH_SYMBOL:
            	{
            		alt876=4;
            	}
                break;
            case PASSWORD_SYMBOL:
            	{
            		alt876=5;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt876=6;
            	}
                break;
            case COMPRESSION_SYMBOL:
            	{
            		alt876=7;
            	}
                break;
            case AUTO_INCREMENT_SYMBOL:
            	{
            		alt876=8;
            	}
                break;
            case PACK_KEYS_SYMBOL:
            	{
            		alt876=9;
            	}
                break;
            case STATS_AUTO_RECALC_SYMBOL:
            case STATS_PERSISTENT_SYMBOL:
            case STATS_SAMPLE_PAGES_SYMBOL:
            	{
            		alt876=10;
            	}
                break;
            case CHECKSUM_SYMBOL:
            case TABLE_CHECKSUM_SYMBOL:
            	{
            		alt876=11;
            	}
                break;
            case DELAY_KEY_WRITE_SYMBOL:
            	{
            		alt876=12;
            	}
                break;
            case ROW_FORMAT_SYMBOL:
            	{
            		alt876=13;
            	}
                break;
            case UNION_SYMBOL:
            	{
            		alt876=14;
            	}
                break;
            case CHARSET_SYMBOL:
            case CHAR_SYMBOL:
            case COLLATE_SYMBOL:
            case DEFAULT_SYMBOL:
            	{
            		alt876=15;
            	}
                break;
            case INSERT_METHOD_SYMBOL:
            	{
            		alt876=16;
            	}
                break;
            case DATA_SYMBOL:
            	{
            		alt876=17;
            	}
                break;
            case INDEX_SYMBOL:
            	{
            		alt876=18;
            	}
                break;
            case TABLESPACE_SYMBOL:
            	{
            		alt876=19;
            	}
                break;
            case STORAGE_SYMBOL:
            	{
            		alt876=20;
            	}
                break;
            case CONNECTION_SYMBOL:
            	{
            		alt876=21;
            	}
                break;
            case KEY_BLOCK_SIZE_SYMBOL:
            	{
            		alt876=22;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 876;
                EXCEPTION->state        = 0;


                goto rulecreate_table_optionEx;

            }

            switch (alt876)
            {
        	case 1:
        	    // MySQL.g:3003:2: ( ENGINE_SYMBOL |{...}? TYPE_SYMBOL ) ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3003:2: ( ENGINE_SYMBOL |{...}? TYPE_SYMBOL )
        	        {
        	            int alt848=2;
        	            switch ( LA(1) )
        	            {
        	            case ENGINE_SYMBOL:
        	            	{
        	            		alt848=1;
        	            	}
        	                break;
        	            case TYPE_SYMBOL:
        	            	{
        	            		alt848=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 848;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt848)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3003:3: ENGINE_SYMBOL
        	        	    {
        	        	        ENGINE_SYMBOL2976 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_create_table_option15692);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        ENGINE_SYMBOL2976_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL2976));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL2976_tree);
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3003: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_SYMBOL2977 = (pANTLR3_COMMON_TOKEN) MATCHT(TYPE_SYMBOL, &FOLLOW_TYPE_SYMBOL_in_create_table_option15698);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        TYPE_SYMBOL2977_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TYPE_SYMBOL2977));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, TYPE_SYMBOL2977_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3003:58: ( EQUAL_OPERATOR )?
        	        {
        	            int alt849=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt849=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt849)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3003:58: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2978 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15701);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2978_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2978));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2978_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_create_table_option15704);
        	        engine_ref2979=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref2979.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3004:4: MAX_ROWS_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MAX_ROWS_SYMBOL2980 = (pANTLR3_COMMON_TOKEN) MATCHT(MAX_ROWS_SYMBOL, &FOLLOW_MAX_ROWS_SYMBOL_in_create_table_option15709);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MAX_ROWS_SYMBOL2980_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAX_ROWS_SYMBOL2980));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MAX_ROWS_SYMBOL2980_tree);
        	        }

        	        // MySQL.g:3004:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt850=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt850=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt850)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3004:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2981 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15711);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2981_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2981));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2981_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_create_table_option15714);
        	        ulonglong_number2982=ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number2982.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3005:4: MIN_ROWS_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MIN_ROWS_SYMBOL2983 = (pANTLR3_COMMON_TOKEN) MATCHT(MIN_ROWS_SYMBOL, &FOLLOW_MIN_ROWS_SYMBOL_in_create_table_option15719);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MIN_ROWS_SYMBOL2983_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MIN_ROWS_SYMBOL2983));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MIN_ROWS_SYMBOL2983_tree);
        	        }

        	        // MySQL.g:3005:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt851=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt851=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt851)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3005:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2984 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15721);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2984_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2984));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2984_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_create_table_option15724);
        	        ulonglong_number2985=ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number2985.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3006:4: AVG_ROW_LENGTH_SYMBOL ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AVG_ROW_LENGTH_SYMBOL2986 = (pANTLR3_COMMON_TOKEN) MATCHT(AVG_ROW_LENGTH_SYMBOL, &FOLLOW_AVG_ROW_LENGTH_SYMBOL_in_create_table_option15729);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AVG_ROW_LENGTH_SYMBOL2986_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AVG_ROW_LENGTH_SYMBOL2986));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AVG_ROW_LENGTH_SYMBOL2986_tree);
        	        }

        	        // MySQL.g:3006:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt852=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt852=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt852)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3006:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2987 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15731);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2987_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2987));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2987_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15734);
        	        ulong_number2988=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number2988.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3007:4: PASSWORD_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PASSWORD_SYMBOL2989 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_create_table_option15739);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PASSWORD_SYMBOL2989_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL2989));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL2989_tree);
        	        }

        	        // MySQL.g:3007:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt853=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt853=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt853)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3007:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2990 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15741);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2990_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2990));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2990_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option15744);
        	        text_string2991=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2991.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:3008:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL2992 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_create_table_option15749);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL2992_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL2992));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL2992_tree);
        	        }

        	        // MySQL.g:3008:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt854=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt854=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt854)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3008:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2993 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15751);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2993_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2993));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2993_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option15754);
        	        text_string2994=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2994.tree);

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:3009:4: COMPRESSION_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMPRESSION_SYMBOL2995 = (pANTLR3_COMMON_TOKEN) MATCHT(COMPRESSION_SYMBOL, &FOLLOW_COMPRESSION_SYMBOL_in_create_table_option15759);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMPRESSION_SYMBOL2995_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMPRESSION_SYMBOL2995));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMPRESSION_SYMBOL2995_tree);
        	        }

        	        // MySQL.g:3009:23: ( EQUAL_OPERATOR )?
        	        {
        	            int alt855=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt855=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt855)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3009:23: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2996 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15761);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2996_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2996));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2996_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option15764);
        	        text_string2997=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string2997.tree);

        	    }
        	    break;
        	case 8:
        	    // MySQL.g:3010:4: AUTO_INCREMENT_SYMBOL ( EQUAL_OPERATOR )? ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        AUTO_INCREMENT_SYMBOL2998 = (pANTLR3_COMMON_TOKEN) MATCHT(AUTO_INCREMENT_SYMBOL, &FOLLOW_AUTO_INCREMENT_SYMBOL_in_create_table_option15769);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        AUTO_INCREMENT_SYMBOL2998_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AUTO_INCREMENT_SYMBOL2998));
        	        ADAPTOR->addChild(ADAPTOR, root_0, AUTO_INCREMENT_SYMBOL2998_tree);
        	        }

        	        // MySQL.g:3010:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt856=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt856=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt856)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3010:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR2999 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15771);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR2999_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR2999));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR2999_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulonglong_number_in_create_table_option15774);
        	        ulonglong_number3000=ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulonglong_number3000.tree);

        	    }
        	    break;
        	case 9:
        	    // MySQL.g:3011:4: PACK_KEYS_SYMBOL ( EQUAL_OPERATOR )? ( ulong_number | DEFAULT_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PACK_KEYS_SYMBOL3001 = (pANTLR3_COMMON_TOKEN) MATCHT(PACK_KEYS_SYMBOL, &FOLLOW_PACK_KEYS_SYMBOL_in_create_table_option15779);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PACK_KEYS_SYMBOL3001_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PACK_KEYS_SYMBOL3001));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PACK_KEYS_SYMBOL3001_tree);
        	        }

        	        // MySQL.g:3011:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt857=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt857=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt857)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3011:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3002 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15781);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3002_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3002));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3002_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3011:37: ( ulong_number | DEFAULT_SYMBOL )
        	        {
        	            int alt858=2;
        	            switch ( LA(1) )
        	            {
        	            case DECIMAL_NUMBER:
        	            case FLOAT_NUMBER:
        	            case HEX_NUMBER:
        	            case INT_NUMBER:
        	            case LONG_NUMBER:
        	            case ULONGLONG_NUMBER:
        	            	{
        	            		alt858=1;
        	            	}
        	                break;
        	            case DEFAULT_SYMBOL:
        	            	{
        	            		alt858=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 858;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt858)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3011:38: ulong_number
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15785);
        	        	        ulong_number3003=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3003.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3011:53: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL3004 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_create_table_option15789);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL3004_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3004));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3004_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 10:
        	    // MySQL.g:3012:4: {...}? ( STATS_AUTO_RECALC_SYMBOL | STATS_PERSISTENT_SYMBOL | STATS_SAMPLE_PAGES_SYMBOL ) ( EQUAL_OPERATOR )? ( ulong_number | 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";


        	        }

        	        set3005=(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, set3005))
        	            );
        	            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:3013:3: ( EQUAL_OPERATOR )?
        	        {
        	            int alt859=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt859=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt859)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3013:3: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3006 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15811);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3006_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3006));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3006_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3013:19: ( ulong_number | DEFAULT_SYMBOL )
        	        {
        	            int alt860=2;
        	            switch ( LA(1) )
        	            {
        	            case DECIMAL_NUMBER:
        	            case FLOAT_NUMBER:
        	            case HEX_NUMBER:
        	            case INT_NUMBER:
        	            case LONG_NUMBER:
        	            case ULONGLONG_NUMBER:
        	            	{
        	            		alt860=1;
        	            	}
        	                break;
        	            case DEFAULT_SYMBOL:
        	            	{
        	            		alt860=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 860;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt860)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3013:20: ulong_number
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15815);
        	        	        ulong_number3007=ulong_number(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3007.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3013:35: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL3008 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_create_table_option15819);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL3008_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3008));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3008_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 11:
        	    // MySQL.g:3014:4: ( CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL ) ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set3009=(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, set3009))
        	            );
        	            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:3014:46: ( EQUAL_OPERATOR )?
        	        {
        	            int alt861=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt861=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt861)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3014:46: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3010 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15833);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3010_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3010));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3010_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15836);
        	        ulong_number3011=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3011.tree);

        	    }
        	    break;
        	case 12:
        	    // MySQL.g:3015:4: DELAY_KEY_WRITE_SYMBOL ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DELAY_KEY_WRITE_SYMBOL3012 = (pANTLR3_COMMON_TOKEN) MATCHT(DELAY_KEY_WRITE_SYMBOL, &FOLLOW_DELAY_KEY_WRITE_SYMBOL_in_create_table_option15841);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DELAY_KEY_WRITE_SYMBOL3012_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DELAY_KEY_WRITE_SYMBOL3012));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DELAY_KEY_WRITE_SYMBOL3012_tree);
        	        }

        	        // MySQL.g:3015:27: ( EQUAL_OPERATOR )?
        	        {
        	            int alt862=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt862=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt862)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3015:27: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3013 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15843);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3013_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3013));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3013_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option15846);
        	        ulong_number3014=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3014.tree);

        	    }
        	    break;
        	case 13:
        	    // MySQL.g:3016: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_SYMBOL3015 = (pANTLR3_COMMON_TOKEN) MATCHT(ROW_FORMAT_SYMBOL, &FOLLOW_ROW_FORMAT_SYMBOL_in_create_table_option15851);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ROW_FORMAT_SYMBOL3015_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ROW_FORMAT_SYMBOL3015));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ROW_FORMAT_SYMBOL3015_tree);
        	        }

        	        // MySQL.g:3016:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt863=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt863=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt863)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3016:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3016 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15853);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3016_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3016));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3016_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        set3017=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == COMPACT_SYMBOL || LA(1) == COMPRESSED_SYMBOL || LA(1) == DYNAMIC_SYMBOL || LA(1) == FIXED_SYMBOL || LA(1) == REDUNDANT_SYMBOL || LA(1) == DEFAULT_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3017))
        	            );
        	            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 14:
        	    // MySQL.g:3017:4: UNION_SYMBOL ^ ( EQUAL_OPERATOR )? OPEN_PAR_SYMBOL table_ref_list CLOSE_PAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        UNION_SYMBOL3018 = (pANTLR3_COMMON_TOKEN) MATCHT(UNION_SYMBOL, &FOLLOW_UNION_SYMBOL_in_create_table_option15883);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        UNION_SYMBOL3018_tree = 
        	        (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNION_SYMBOL3018))
        	        ;
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, UNION_SYMBOL3018_tree, root_0));
        	        }

        	        // MySQL.g:3017:18: ( EQUAL_OPERATOR )?
        	        {
        	            int alt864=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt864=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt864)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3017:18: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3019 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15886);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3019_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3019));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3019_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        OPEN_PAR_SYMBOL3020 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_create_table_option15889);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        OPEN_PAR_SYMBOL3020_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3020));
        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3020_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_table_ref_list_in_create_table_option15891);
        	        table_ref_list3021=table_ref_list(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_list3021.tree);

        	        CLOSE_PAR_SYMBOL3022 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_create_table_option15893);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CLOSE_PAR_SYMBOL3022_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3022));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3022_tree);
        	        }

        	    }
        	    break;
        	case 15:
        	    // MySQL.g:3018: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:3018:4: ( DEFAULT_SYMBOL )?
        	        {
        	            int alt865=2;
        	            switch ( LA(1) )
        	            {
        	                case DEFAULT_SYMBOL:
        	                	{
        	                		alt865=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt865)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3018:4: DEFAULT_SYMBOL
        	        	    {
        	        	        DEFAULT_SYMBOL3023 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_create_table_option15898);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DEFAULT_SYMBOL3023_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3023));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3023_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3019:3: ( COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default | charset ( EQUAL_OPERATOR )? charset_name_or_default )
        	        {
        	            int alt868=2;
        	            switch ( LA(1) )
        	            {
        	            case COLLATE_SYMBOL:
        	            	{
        	            		alt868=1;
        	            	}
        	                break;
        	            case CHARSET_SYMBOL:
        	            case CHAR_SYMBOL:
        	            	{
        	            		alt868=2;
        	            	}
        	                break;

        	            default:
        	                if (BACKTRACKING>0)
        	                {
        	                    FAILEDFLAG = ANTLR3_TRUE;
        	                    return retval;
        	                }

        	                CONSTRUCTEX();
        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                EXCEPTION->message      = (void *)"";
        	                EXCEPTION->decisionNum  = 868;
        	                EXCEPTION->state        = 0;


        	                goto rulecreate_table_optionEx;

        	            }

        	            switch (alt868)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3020:4: COLLATE_SYMBOL ( EQUAL_OPERATOR )? collation_name_or_default
        	        	    {
        	        	        COLLATE_SYMBOL3024 = (pANTLR3_COMMON_TOKEN) MATCHT(COLLATE_SYMBOL, &FOLLOW_COLLATE_SYMBOL_in_create_table_option15908);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        COLLATE_SYMBOL3024_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLLATE_SYMBOL3024));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLLATE_SYMBOL3024_tree);
        	        	        }

        	        	        // MySQL.g:3020:19: ( EQUAL_OPERATOR )?
        	        	        {
        	        	            int alt866=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EQUAL_OPERATOR:
        	        	                	{
        	        	                		alt866=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt866)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:3020:19: EQUAL_OPERATOR
        	        	        	    {
        	        	        	        EQUAL_OPERATOR3025 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15910);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_optionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR3025_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3025));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3025_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_collation_name_or_default_in_create_table_option15913);
        	        	        collation_name_or_default3026=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_default3026.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3021:6: charset ( EQUAL_OPERATOR )? charset_name_or_default
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_charset_in_create_table_option15920);
        	        	        charset3027=charset(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset3027.tree);

        	        	        // MySQL.g:3021:14: ( EQUAL_OPERATOR )?
        	        	        {
        	        	            int alt867=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EQUAL_OPERATOR:
        	        	                	{
        	        	                		alt867=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt867)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:3021:14: EQUAL_OPERATOR
        	        	        	    {
        	        	        	        EQUAL_OPERATOR3028 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15922);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_optionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR3028_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3028));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3028_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_charset_name_or_default_in_create_table_option15925);
        	        	        charset_name_or_default3029=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_default3029.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 16:
        	    // MySQL.g:3024:4: INSERT_METHOD_SYMBOL ( EQUAL_OPERATOR )? ( NO_SYMBOL | FIRST_SYMBOL | LAST_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INSERT_METHOD_SYMBOL3030 = (pANTLR3_COMMON_TOKEN) MATCHT(INSERT_METHOD_SYMBOL, &FOLLOW_INSERT_METHOD_SYMBOL_in_create_table_option15935);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INSERT_METHOD_SYMBOL3030_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INSERT_METHOD_SYMBOL3030));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INSERT_METHOD_SYMBOL3030_tree);
        	        }

        	        // MySQL.g:3024:25: ( EQUAL_OPERATOR )?
        	        {
        	            int alt869=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt869=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt869)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3024:25: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3031 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15937);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3031_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3031));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3031_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        set3032=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == NO_SYMBOL || LA(1) == FIRST_SYMBOL || LA(1) == LAST_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3032))
        	            );
        	            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 17:
        	    // MySQL.g:3025:4: DATA_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATA_SYMBOL3033 = (pANTLR3_COMMON_TOKEN) MATCHT(DATA_SYMBOL, &FOLLOW_DATA_SYMBOL_in_create_table_option15955);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATA_SYMBOL3033_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATA_SYMBOL3033));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATA_SYMBOL3033_tree);
        	        }

        	        DIRECTORY_SYMBOL3034 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15957);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIRECTORY_SYMBOL3034_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL3034));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL3034_tree);
        	        }

        	        // MySQL.g:3025:33: ( EQUAL_OPERATOR )?
        	        {
        	            int alt870=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt870=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt870)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3025:33: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3035 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15959);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3035_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3035));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3035_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option15962);
        	        text_string3036=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3036.tree);

        	    }
        	    break;
        	case 18:
        	    // MySQL.g:3026:4: INDEX_SYMBOL DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        INDEX_SYMBOL3037 = (pANTLR3_COMMON_TOKEN) MATCHT(INDEX_SYMBOL, &FOLLOW_INDEX_SYMBOL_in_create_table_option15967);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        INDEX_SYMBOL3037_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INDEX_SYMBOL3037));
        	        ADAPTOR->addChild(ADAPTOR, root_0, INDEX_SYMBOL3037_tree);
        	        }

        	        DIRECTORY_SYMBOL3038 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_create_table_option15969);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIRECTORY_SYMBOL3038_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL3038));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL3038_tree);
        	        }

        	        // MySQL.g:3026:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt871=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt871=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt871)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3026:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3039 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15971);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3039_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3039));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3039_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option15974);
        	        text_string3040=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3040.tree);

        	    }
        	    break;
        	case 19:
        	    // MySQL.g:3027:4: TABLESPACE_SYMBOL ({...}? ( EQUAL_OPERATOR )? |) identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TABLESPACE_SYMBOL3041 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_create_table_option15979);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLESPACE_SYMBOL3041_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL3041));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL3041_tree);
        	        }

        	        // MySQL.g:3027:22: ({...}? ( EQUAL_OPERATOR )? |)
        	        {
        	            int alt873=2;
        	            {
        	                int LA873_0 = LA(1);
        	                if ( (LA873_0 == EQUAL_OPERATOR))
        	                {
        	                    alt873=1;
        	                }
        	                else if ( (LA873_0 == IDENTIFIER))
        	                {
        	                    {
        	                        int LA873_2 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50707)))
        	                        {
        	                            alt873=1;
        	                        }
        	                        else if ( (ANTLR3_TRUE))
        	                        {
        	                            alt873=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 873;
        	                            EXCEPTION->state        = 2;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (LA873_0 == BACK_TICK_QUOTED_ID))
        	                {
        	                    {
        	                        int LA873_3 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50707)))
        	                        {
        	                            alt873=1;
        	                        }
        	                        else if ( (ANTLR3_TRUE))
        	                        {
        	                            alt873=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 873;
        	                            EXCEPTION->state        = 3;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (LA873_0 == DOUBLE_QUOTED_TEXT))
        	                {
        	                    {
        	                        int LA873_4 = LA(2);
        	                        if ( (( (( ((SERVER_VERSION >= 50707)) && ((SERVER_VERSION >= 50707)) )) && ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))) )))
        	                        {
        	                            alt873=1;
        	                        }
        	                        else if ( ((SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
        	                        {
        	                            alt873=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 873;
        	                            EXCEPTION->state        = 4;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (((LA873_0 >= ACTION_SYMBOL) && (LA873_0 <= SHARE_SYMBOL)) || ((LA873_0 >= SLOW_SYMBOL) && (LA873_0 <= YEAR_SYMBOL))))
        	                {
        	                    {
        	                        int LA873_5 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50707)))
        	                        {
        	                            alt873=1;
        	                        }
        	                        else if ( (ANTLR3_TRUE))
        	                        {
        	                            alt873=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 873;
        	                            EXCEPTION->state        = 5;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else if ( (((LA873_0 >= ACCOUNT_SYMBOL) && (LA873_0 <= XA_SYMBOL)) || LA873_0 == SHUTDOWN_SYMBOL))
        	                {
        	                    {
        	                        int LA873_6 = LA(2);
        	                        if ( ((SERVER_VERSION >= 50707)))
        	                        {
        	                            alt873=1;
        	                        }
        	                        else if ( (ANTLR3_TRUE))
        	                        {
        	                            alt873=2;
        	                        }
        	                        else
        	                        {
        	                            if (BACKTRACKING>0)
        	                            {
        	                                FAILEDFLAG = ANTLR3_TRUE;
        	                                return retval;
        	                            }


        	                            CONSTRUCTEX();
        	                            EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                            EXCEPTION->message      = (void *)"";
        	                            EXCEPTION->decisionNum  = 873;
        	                            EXCEPTION->state        = 6;


        	                            goto rulecreate_table_optionEx;

        	                        }
        	                    }
        	                }
        	                else
        	                {
        	                    if (BACKTRACKING>0)
        	                    {
        	                        FAILEDFLAG = ANTLR3_TRUE;
        	                        return retval;
        	                    }


        	                    CONSTRUCTEX();
        	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
        	                    EXCEPTION->message      = (void *)"";
        	                    EXCEPTION->decisionNum  = 873;
        	                    EXCEPTION->state        = 0;


        	                    goto rulecreate_table_optionEx;

        	                }
        	            }
        	            switch (alt873)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3027:23: {...}? ( EQUAL_OPERATOR )?
        	        	    {
        	        	        if ( !((SERVER_VERSION >= 50707)) )
        	        	        {
        	        	            if (BACKTRACKING>0)
        	        	            {
        	        	                FAILEDFLAG = ANTLR3_TRUE;
        	        	                return retval;
        	        	            }

        	        	                CONSTRUCTEX();
        	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
        	        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50707";
        	        	                EXCEPTION->ruleName	 = (void *)"create_table_option";


        	        	        }

        	        	        // MySQL.g:3027:50: ( EQUAL_OPERATOR )?
        	        	        {
        	        	            int alt872=2;
        	        	            switch ( LA(1) )
        	        	            {
        	        	                case EQUAL_OPERATOR:
        	        	                	{
        	        	                		alt872=1;
        	        	                	}
        	        	                    break;
        	        	            }

        	        	            switch (alt872)
        	        	            {
        	        	        	case 1:
        	        	        	    // MySQL.g:3027:50: EQUAL_OPERATOR
        	        	        	    {
        	        	        	        EQUAL_OPERATOR3042 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option15984);
        	        	        	        if  (HASEXCEPTION())
        	        	        	        {
        	        	        	            goto rulecreate_table_optionEx;
        	        	        	        }
        	        	        	        if (HASFAILED())
        	        	        	        {
        	        	        	            return retval;
        	        	        	        }

        	        	        	        if ( BACKTRACKING==0 ) {
        	        	        	        EQUAL_OPERATOR3042_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3042));
        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3042_tree);
        	        	        	        }

        	        	        	    }
        	        	        	    break;

        	        	            }
        	        	        }

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3027:80: 
        	        	    {
        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_create_table_option15993);
        	        identifier3043=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3043.tree);

        	    }
        	    break;
        	case 20:
        	    // MySQL.g:3028:4: STORAGE_SYMBOL ( DISK_SYMBOL | MEMORY_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        STORAGE_SYMBOL3044 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_create_table_option15998);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        STORAGE_SYMBOL3044_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL3044));
        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL3044_tree);
        	        }

        	        set3045=(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, set3045))
        	            );
        	            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 21:
        	    // MySQL.g:3029:4: CONNECTION_SYMBOL ( EQUAL_OPERATOR )? text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CONNECTION_SYMBOL3046 = (pANTLR3_COMMON_TOKEN) MATCHT(CONNECTION_SYMBOL, &FOLLOW_CONNECTION_SYMBOL_in_create_table_option16011);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CONNECTION_SYMBOL3046_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CONNECTION_SYMBOL3046));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CONNECTION_SYMBOL3046_tree);
        	        }

        	        // MySQL.g:3029:22: ( EQUAL_OPERATOR )?
        	        {
        	            int alt874=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt874=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt874)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3029:22: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3047 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option16013);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3047_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3047));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3047_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_create_table_option16016);
        	        text_string3048=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3048.tree);

        	    }
        	    break;
        	case 22:
        	    // MySQL.g:3030:4: KEY_BLOCK_SIZE_SYMBOL ( EQUAL_OPERATOR )? ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        KEY_BLOCK_SIZE_SYMBOL3049 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_BLOCK_SIZE_SYMBOL, &FOLLOW_KEY_BLOCK_SIZE_SYMBOL_in_create_table_option16021);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        KEY_BLOCK_SIZE_SYMBOL3049_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_BLOCK_SIZE_SYMBOL3049));
        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_BLOCK_SIZE_SYMBOL3049_tree);
        	        }

        	        // MySQL.g:3030:26: ( EQUAL_OPERATOR )?
        	        {
        	            int alt875=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt875=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt875)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3030:26: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3050 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_create_table_option16023);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecreate_table_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3050_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3050));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3050_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_create_table_option16026);
        	        ulong_number3051=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecreate_table_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3051.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:3034:1: partitioning :{...}? PARTITION_SYMBOL ^ BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses | ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? COLUMNS_SYMBOL identifier_list_with_parentheses ) ) ( PARTITIONS_SYMBOL real_ulong_number )? ( SUBPARTITION_SYMBOL BY_SYMBOL ( LINEAR_SYMBOL )? ( ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses ) ( SUBPARTITIONS_SYMBOL real_ulong_number )? )? )? ( partition_definitions )? ;
 */
static MySQLParser_partitioning_return
partitioning(pMySQLParser ctx)
{
    MySQLParser_partitioning_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL3052;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3053;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL3054;
    pANTLR3_COMMON_TOKEN    HASH_SYMBOL3055;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3056;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3058;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL3059;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL3060;
    pANTLR3_COMMON_TOKEN    set3063;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3064;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3066;
    pANTLR3_COMMON_TOKEN    COLUMNS_SYMBOL3067;
    pANTLR3_COMMON_TOKEN    PARTITIONS_SYMBOL3069;
    pANTLR3_COMMON_TOKEN    SUBPARTITION_SYMBOL3071;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3072;
    pANTLR3_COMMON_TOKEN    LINEAR_SYMBOL3073;
    pANTLR3_COMMON_TOKEN    HASH_SYMBOL3074;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3075;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3077;
    pANTLR3_COMMON_TOKEN    KEY_SYMBOL3078;
    pANTLR3_COMMON_TOKEN    SUBPARTITIONS_SYMBOL3081;
    MySQLParser_expression_return expression3057;
    #undef	RETURN_TYPE_expression3057
    #define	RETURN_TYPE_expression3057 MySQLParser_expression_return

    MySQLParser_partition_key_algorithm_return partition_key_algorithm3061;
    #undef	RETURN_TYPE_partition_key_algorithm3061
    #define	RETURN_TYPE_partition_key_algorithm3061 MySQLParser_partition_key_algorithm_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses3062;
    #undef	RETURN_TYPE_identifier_list_with_parentheses3062
    #define	RETURN_TYPE_identifier_list_with_parentheses3062 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_expression_return expression3065;
    #undef	RETURN_TYPE_expression3065
    #define	RETURN_TYPE_expression3065 MySQLParser_expression_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses3068;
    #undef	RETURN_TYPE_identifier_list_with_parentheses3068
    #define	RETURN_TYPE_identifier_list_with_parentheses3068 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_real_ulong_number_return real_ulong_number3070;
    #undef	RETURN_TYPE_real_ulong_number3070
    #define	RETURN_TYPE_real_ulong_number3070 MySQLParser_real_ulong_number_return

    MySQLParser_bitwise_or_expression_return bitwise_or_expression3076;
    #undef	RETURN_TYPE_bitwise_or_expression3076
    #define	RETURN_TYPE_bitwise_or_expression3076 MySQLParser_bitwise_or_expression_return

    MySQLParser_partition_key_algorithm_return partition_key_algorithm3079;
    #undef	RETURN_TYPE_partition_key_algorithm3079
    #define	RETURN_TYPE_partition_key_algorithm3079 MySQLParser_partition_key_algorithm_return

    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses3080;
    #undef	RETURN_TYPE_identifier_list_with_parentheses3080
    #define	RETURN_TYPE_identifier_list_with_parentheses3080 MySQLParser_identifier_list_with_parentheses_return

    MySQLParser_real_ulong_number_return real_ulong_number3082;
    #undef	RETURN_TYPE_real_ulong_number3082
    #define	RETURN_TYPE_real_ulong_number3082 MySQLParser_real_ulong_number_return

    MySQLParser_partition_definitions_return partition_definitions3083;
    #undef	RETURN_TYPE_partition_definitions3083
    #define	RETURN_TYPE_partition_definitions3083 MySQLParser_partition_definitions_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL3052_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3053_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL3054_tree;
    pANTLR3_BASE_TREE HASH_SYMBOL3055_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3056_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3058_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL3059_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL3060_tree;
    pANTLR3_BASE_TREE set3063_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3064_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3066_tree;
    pANTLR3_BASE_TREE COLUMNS_SYMBOL3067_tree;
    pANTLR3_BASE_TREE PARTITIONS_SYMBOL3069_tree;
    pANTLR3_BASE_TREE SUBPARTITION_SYMBOL3071_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3072_tree;
    pANTLR3_BASE_TREE LINEAR_SYMBOL3073_tree;
    pANTLR3_BASE_TREE HASH_SYMBOL3074_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3075_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3077_tree;
    pANTLR3_BASE_TREE KEY_SYMBOL3078_tree;
    pANTLR3_BASE_TREE SUBPARTITIONS_SYMBOL3081_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL3052       = NULL;
    BY_SYMBOL3053       = NULL;
    LINEAR_SYMBOL3054       = NULL;
    HASH_SYMBOL3055       = NULL;
    OPEN_PAR_SYMBOL3056       = NULL;
    CLOSE_PAR_SYMBOL3058       = NULL;
    LINEAR_SYMBOL3059       = NULL;
    KEY_SYMBOL3060       = NULL;
    set3063       = NULL;
    OPEN_PAR_SYMBOL3064       = NULL;
    CLOSE_PAR_SYMBOL3066       = NULL;
    COLUMNS_SYMBOL3067       = NULL;
    PARTITIONS_SYMBOL3069       = NULL;
    SUBPARTITION_SYMBOL3071       = NULL;
    BY_SYMBOL3072       = NULL;
    LINEAR_SYMBOL3073       = NULL;
    HASH_SYMBOL3074       = NULL;
    OPEN_PAR_SYMBOL3075       = NULL;
    CLOSE_PAR_SYMBOL3077       = NULL;
    KEY_SYMBOL3078       = NULL;
    SUBPARTITIONS_SYMBOL3081       = NULL;
    expression3057.tree = NULL;

    partition_key_algorithm3061.tree = NULL;

    identifier_list_with_parentheses3062.tree = NULL;

    expression3065.tree = NULL;

    identifier_list_with_parentheses3068.tree = NULL;

    real_ulong_number3070.tree = NULL;

    bitwise_or_expression3076.tree = NULL;

    partition_key_algorithm3079.tree = NULL;

    identifier_list_with_parentheses3080.tree = NULL;

    real_ulong_number3082.tree = NULL;

    partition_definitions3083.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL3052_tree   = NULL;
    BY_SYMBOL3053_tree   = NULL;
    LINEAR_SYMBOL3054_tree   = NULL;
    HASH_SYMBOL3055_tree   = NULL;
    OPEN_PAR_SYMBOL3056_tree   = NULL;
    CLOSE_PAR_SYMBOL3058_tree   = NULL;
    LINEAR_SYMBOL3059_tree   = NULL;
    KEY_SYMBOL3060_tree   = NULL;
    set3063_tree   = NULL;
    OPEN_PAR_SYMBOL3064_tree   = NULL;
    CLOSE_PAR_SYMBOL3066_tree   = NULL;
    COLUMNS_SYMBOL3067_tree   = NULL;
    PARTITIONS_SYMBOL3069_tree   = NULL;
    SUBPARTITION_SYMBOL3071_tree   = NULL;
    BY_SYMBOL3072_tree   = NULL;
    LINEAR_SYMBOL3073_tree   = NULL;
    HASH_SYMBOL3074_tree   = NULL;
    OPEN_PAR_SYMBOL3075_tree   = NULL;
    CLOSE_PAR_SYMBOL3077_tree   = NULL;
    KEY_SYMBOL3078_tree   = NULL;
    SUBPARTITIONS_SYMBOL3081_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3034:13: ({...}? PARTITION_SYMBOL ^ BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses | ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? COLUMNS_SYMBOL identifier_list_with_parentheses ) ) ( PARTITIONS_SYMBOL real_ulong_number )? ( SUBPARTITION_SYMBOL BY_SYMBOL ( LINEAR_SYMBOL )? ( ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses ) ( SUBPARTITIONS_SYMBOL real_ulong_number )? )? )? ( partition_definitions )? )
        // MySQL.g:3035:2: {...}? PARTITION_SYMBOL ^ BY_SYMBOL ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses | ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? COLUMNS_SYMBOL identifier_list_with_parentheses ) ) ( PARTITIONS_SYMBOL real_ulong_number )? ( SUBPARTITION_SYMBOL BY_SYMBOL ( LINEAR_SYMBOL )? ( ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses ) ( SUBPARTITIONS_SYMBOL real_ulong_number )? )? )? ( 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_SYMBOL3052 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partitioning16038);
            if  (HASEXCEPTION())
            {
                goto rulepartitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL3052_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL3052))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, PARTITION_SYMBOL3052_tree, root_0));
            }

            BY_SYMBOL3053 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_partitioning16041);
            if  (HASEXCEPTION())
            {
                goto rulepartitioningEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL3053_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3053));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3053_tree);
            }

            // MySQL.g:3036:2: ( ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL | ( LINEAR_SYMBOL )? KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses | ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? COLUMNS_SYMBOL identifier_list_with_parentheses ) )
            {
                int alt881=3;
                switch ( LA(1) )
                {
                case LINEAR_SYMBOL:
                	{
                		switch ( LA(2) )
                		{
                		case HASH_SYMBOL:
                			{
                				alt881=1;
                			}
                		    break;
                		case KEY_SYMBOL:
                			{
                				alt881=2;
                			}
                		    break;

                		default:
                		    if (BACKTRACKING>0)
                		    {
                		        FAILEDFLAG = ANTLR3_TRUE;
                		        return retval;
                		    }

                		    CONSTRUCTEX();
                		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                		    EXCEPTION->message      = (void *)"";
                		    EXCEPTION->decisionNum  = 881;
                		    EXCEPTION->state        = 1;


                		    goto rulepartitioningEx;

                		}

                	}
                    break;
                case HASH_SYMBOL:
                	{
                		alt881=1;
                	}
                    break;
                case KEY_SYMBOL:
                	{
                		alt881=2;
                	}
                    break;
                case LIST_SYMBOL:
                case RANGE_SYMBOL:
                	{
                		alt881=3;
                	}
                    break;

                default:
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 881;
                    EXCEPTION->state        = 0;


                    goto rulepartitioningEx;

                }

                switch (alt881)
                {
            	case 1:
            	    // MySQL.g:3037:3: ( LINEAR_SYMBOL )? HASH_SYMBOL OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	    {
            	        // MySQL.g:3037:3: ( LINEAR_SYMBOL )?
            	        {
            	            int alt877=2;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		alt877=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt877)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3037:3: LINEAR_SYMBOL
            	        	    {
            	        	        LINEAR_SYMBOL3054 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning16048);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LINEAR_SYMBOL3054_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL3054));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL3054_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        HASH_SYMBOL3055 = (pANTLR3_COMMON_TOKEN) MATCHT(HASH_SYMBOL, &FOLLOW_HASH_SYMBOL_in_partitioning16051);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        HASH_SYMBOL3055_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HASH_SYMBOL3055));
            	        ADAPTOR->addChild(ADAPTOR, root_0, HASH_SYMBOL3055_tree);
            	        }

            	        OPEN_PAR_SYMBOL3056 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16053);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL3056_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3056));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3056_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_expression_in_partitioning16055);
            	        expression3057=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3057.tree);

            	        CLOSE_PAR_SYMBOL3058 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16057);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL3058_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3058));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3058_tree);
            	        }

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3038:5: ( LINEAR_SYMBOL )? KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses
            	    {
            	        // MySQL.g:3038:5: ( LINEAR_SYMBOL )?
            	        {
            	            int alt878=2;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		alt878=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt878)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3038:5: LINEAR_SYMBOL
            	        	    {
            	        	        LINEAR_SYMBOL3059 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning16063);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LINEAR_SYMBOL3059_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL3059));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL3059_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        KEY_SYMBOL3060 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_partitioning16066);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        KEY_SYMBOL3060_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL3060));
            	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL3060_tree);
            	        }

            	        // MySQL.g:3038:31: ( partition_key_algorithm )?
            	        {
            	            int alt879=2;
            	            switch ( LA(1) )
            	            {
            	                case ALGORITHM_SYMBOL:
            	                	{
            	                		alt879=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt879)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3038:31: partition_key_algorithm
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_partition_key_algorithm_in_partitioning16068);
            	        	        partition_key_algorithm3061=partition_key_algorithm(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_key_algorithm3061.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning16071);
            	        identifier_list_with_parentheses3062=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_parentheses3062.tree);

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:3039:5: ( RANGE_SYMBOL | LIST_SYMBOL ) ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? COLUMNS_SYMBOL identifier_list_with_parentheses )
            	    {
            	        set3063=(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, set3063))
            	            );
            	            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:3040:4: ( OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL |{...}? COLUMNS_SYMBOL identifier_list_with_parentheses )
            	        {
            	            int alt880=2;
            	            switch ( LA(1) )
            	            {
            	            case OPEN_PAR_SYMBOL:
            	            	{
            	            		alt880=1;
            	            	}
            	                break;
            	            case COLUMNS_SYMBOL:
            	            	{
            	            		alt880=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 880;
            	                EXCEPTION->state        = 0;


            	                goto rulepartitioningEx;

            	            }

            	            switch (alt880)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3041:5: OPEN_PAR_SYMBOL expression CLOSE_PAR_SYMBOL
            	        	    {
            	        	        OPEN_PAR_SYMBOL3064 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16095);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        OPEN_PAR_SYMBOL3064_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3064));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3064_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_expression_in_partitioning16097);
            	        	        expression3065=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3065.tree);

            	        	        CLOSE_PAR_SYMBOL3066 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16099);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        CLOSE_PAR_SYMBOL3066_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3066));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3066_tree);
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3042:7: {...}? 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_SYMBOL3067 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_partitioning16109);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COLUMNS_SYMBOL3067_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL3067));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL3067_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning16111);
            	        	        identifier_list_with_parentheses3068=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_parentheses3068.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:3045:2: ( PARTITIONS_SYMBOL real_ulong_number )?
            {
                int alt882=2;
                switch ( LA(1) )
                {
                    case PARTITIONS_SYMBOL:
                    	{
                    		alt882=1;
                    	}
                        break;
                }

                switch (alt882)
                {
            	case 1:
            	    // MySQL.g:3045:3: PARTITIONS_SYMBOL real_ulong_number
            	    {
            	        PARTITIONS_SYMBOL3069 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITIONS_SYMBOL, &FOLLOW_PARTITIONS_SYMBOL_in_partitioning16123);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        PARTITIONS_SYMBOL3069_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITIONS_SYMBOL3069));
            	        ADAPTOR->addChild(ADAPTOR, root_0, PARTITIONS_SYMBOL3069_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_partitioning16125);
            	        real_ulong_number3070=real_ulong_number(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3070.tree);

            	    }
            	    break;

                }
            }

            // MySQL.g:3046:2: ( SUBPARTITION_SYMBOL BY_SYMBOL ( LINEAR_SYMBOL )? ( ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses ) ( SUBPARTITIONS_SYMBOL real_ulong_number )? )? )?
            {
                int alt888=2;
                switch ( LA(1) )
                {
                    case SUBPARTITION_SYMBOL:
                    	{
                    		alt888=1;
                    	}
                        break;
                }

                switch (alt888)
                {
            	case 1:
            	    // MySQL.g:3047:3: SUBPARTITION_SYMBOL BY_SYMBOL ( LINEAR_SYMBOL )? ( ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses ) ( SUBPARTITIONS_SYMBOL real_ulong_number )? )?
            	    {
            	        SUBPARTITION_SYMBOL3071 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITION_SYMBOL, &FOLLOW_SUBPARTITION_SYMBOL_in_partitioning16134);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        SUBPARTITION_SYMBOL3071_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITION_SYMBOL3071));
            	        ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITION_SYMBOL3071_tree);
            	        }

            	        BY_SYMBOL3072 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_partitioning16136);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BY_SYMBOL3072_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3072));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3072_tree);
            	        }

            	        // MySQL.g:3047:33: ( LINEAR_SYMBOL )?
            	        {
            	            int alt883=2;
            	            switch ( LA(1) )
            	            {
            	                case LINEAR_SYMBOL:
            	                	{
            	                		alt883=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt883)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3047:33: LINEAR_SYMBOL
            	        	    {
            	        	        LINEAR_SYMBOL3073 = (pANTLR3_COMMON_TOKEN) MATCHT(LINEAR_SYMBOL, &FOLLOW_LINEAR_SYMBOL_in_partitioning16138);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartitioningEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LINEAR_SYMBOL3073_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINEAR_SYMBOL3073));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LINEAR_SYMBOL3073_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	        // MySQL.g:3048:3: ( ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses ) ( SUBPARTITIONS_SYMBOL real_ulong_number )? )?
            	        {
            	            int alt887=2;
            	            switch ( LA(1) )
            	            {
            	                case HASH_SYMBOL:
            	                case KEY_SYMBOL:
            	                	{
            	                		alt887=1;
            	                	}
            	                    break;
            	            }

            	            switch (alt887)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3049:4: ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses ) ( SUBPARTITIONS_SYMBOL real_ulong_number )?
            	        	    {
            	        	        // MySQL.g:3049:4: ( HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL | KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses )
            	        	        {
            	        	            int alt885=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case HASH_SYMBOL:
            	        	            	{
            	        	            		alt885=1;
            	        	            	}
            	        	                break;
            	        	            case KEY_SYMBOL:
            	        	            	{
            	        	            		alt885=2;
            	        	            	}
            	        	                break;

            	        	            default:
            	        	                if (BACKTRACKING>0)
            	        	                {
            	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	                    return retval;
            	        	                }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"";
            	        	                EXCEPTION->decisionNum  = 885;
            	        	                EXCEPTION->state        = 0;


            	        	                goto rulepartitioningEx;

            	        	            }

            	        	            switch (alt885)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3050:6: HASH_SYMBOL OPEN_PAR_SYMBOL bitwise_or_expression CLOSE_PAR_SYMBOL
            	        	        	    {
            	        	        	        HASH_SYMBOL3074 = (pANTLR3_COMMON_TOKEN) MATCHT(HASH_SYMBOL, &FOLLOW_HASH_SYMBOL_in_partitioning16155);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        HASH_SYMBOL3074_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HASH_SYMBOL3074));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, HASH_SYMBOL3074_tree);
            	        	        	        }

            	        	        	        OPEN_PAR_SYMBOL3075 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partitioning16157);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        OPEN_PAR_SYMBOL3075_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3075));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3075_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_bitwise_or_expression_in_partitioning16159);
            	        	        	        bitwise_or_expression3076=bitwise_or_expression(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bitwise_or_expression3076.tree);

            	        	        	        CLOSE_PAR_SYMBOL3077 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partitioning16161);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        CLOSE_PAR_SYMBOL3077_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3077));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3077_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:3051:7: KEY_SYMBOL ( partition_key_algorithm )? identifier_list_with_parentheses
            	        	        	    {
            	        	        	        KEY_SYMBOL3078 = (pANTLR3_COMMON_TOKEN) MATCHT(KEY_SYMBOL, &FOLLOW_KEY_SYMBOL_in_partitioning16169);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        KEY_SYMBOL3078_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, KEY_SYMBOL3078));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, KEY_SYMBOL3078_tree);
            	        	        	        }

            	        	        	        // MySQL.g:3051:18: ( partition_key_algorithm )?
            	        	        	        {
            	        	        	            int alt884=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	                case ALGORITHM_SYMBOL:
            	        	        	                	{
            	        	        	                		alt884=1;
            	        	        	                	}
            	        	        	                    break;
            	        	        	            }

            	        	        	            switch (alt884)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:3051:18: partition_key_algorithm
            	        	        	        	    {
            	        	        	        	        FOLLOWPUSH(FOLLOW_partition_key_algorithm_in_partitioning16171);
            	        	        	        	        partition_key_algorithm3079=partition_key_algorithm(ctx);

            	        	        	        	        FOLLOWPOP();
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulepartitioningEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_key_algorithm3079.tree);

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_partitioning16174);
            	        	        	        identifier_list_with_parentheses3080=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_parentheses3080.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        // MySQL.g:3053:4: ( SUBPARTITIONS_SYMBOL real_ulong_number )?
            	        	        {
            	        	            int alt886=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case SUBPARTITIONS_SYMBOL:
            	        	                	{
            	        	                		alt886=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt886)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3053:5: SUBPARTITIONS_SYMBOL real_ulong_number
            	        	        	    {
            	        	        	        SUBPARTITIONS_SYMBOL3081 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITIONS_SYMBOL, &FOLLOW_SUBPARTITIONS_SYMBOL_in_partitioning16185);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        SUBPARTITIONS_SYMBOL3081_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITIONS_SYMBOL3081));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITIONS_SYMBOL3081_tree);
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_partitioning16187);
            	        	        	        real_ulong_number3082=real_ulong_number(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartitioningEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3082.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:3056:5: ( partition_definitions )?
            {
                int alt889=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		switch ( LA(2) )
                    		{
                    		    case PARTITION_SYMBOL:
                    		    	{
                    		    		alt889=1;
                    		    	}
                    		        break;
                    		}

                    	}
                        break;
                }

                switch (alt889)
                {
            	case 1:
            	    // MySQL.g:3056:5: partition_definitions
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_definitions_in_partitioning16207);
            	        partition_definitions3083=partition_definitions(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartitioningEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definitions3083.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_key_algorithm
 * MySQL.g:3059:1: partition_key_algorithm :{...}? ALGORITHM_SYMBOL EQUAL_OPERATOR real_ulong_number ;
 */
static MySQLParser_partition_key_algorithm_return
partition_key_algorithm(pMySQLParser ctx)
{
    MySQLParser_partition_key_algorithm_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    ALGORITHM_SYMBOL3084;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3085;
    MySQLParser_real_ulong_number_return real_ulong_number3086;
    #undef	RETURN_TYPE_real_ulong_number3086
    #define	RETURN_TYPE_real_ulong_number3086 MySQLParser_real_ulong_number_return

    pANTLR3_BASE_TREE ALGORITHM_SYMBOL3084_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3085_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    ALGORITHM_SYMBOL3084       = NULL;
    EQUAL_OPERATOR3085       = NULL;
    real_ulong_number3086.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    ALGORITHM_SYMBOL3084_tree   = NULL;
    EQUAL_OPERATOR3085_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3059:24: ({...}? ALGORITHM_SYMBOL EQUAL_OPERATOR real_ulong_number )
        // MySQL.g:3060:2: {...}? ALGORITHM_SYMBOL EQUAL_OPERATOR real_ulong_number
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            if ( !((SERVER_VERSION >= 50700)) )
            {
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
                    EXCEPTION->message      = (void *)"SERVER_VERSION >= 50700";
                    EXCEPTION->ruleName	 = (void *)"partition_key_algorithm";


            }

            ALGORITHM_SYMBOL3084 = (pANTLR3_COMMON_TOKEN) MATCHT(ALGORITHM_SYMBOL, &FOLLOW_ALGORITHM_SYMBOL_in_partition_key_algorithm16220);
            if  (HASEXCEPTION())
            {
                goto rulepartition_key_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            ALGORITHM_SYMBOL3084_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ALGORITHM_SYMBOL3084));
            ADAPTOR->addChild(ADAPTOR, root_0, ALGORITHM_SYMBOL3084_tree);
            }

            EQUAL_OPERATOR3085 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_key_algorithm16222);
            if  (HASEXCEPTION())
            {
                goto rulepartition_key_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR3085_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3085));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3085_tree);
            }

            FOLLOWPUSH(FOLLOW_real_ulong_number_in_partition_key_algorithm16224);
            real_ulong_number3086=real_ulong_number(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_key_algorithmEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3086.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto rulepartition_key_algorithmEx; /* Prevent compiler warnings */
    rulepartition_key_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 partition_key_algorithm */

/**
 * $ANTLR start partition_definitions
 * MySQL.g:3063: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_SYMBOL3087;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3089;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3091;
    MySQLParser_partition_definition_return partition_definition3088;
    #undef	RETURN_TYPE_partition_definition3088
    #define	RETURN_TYPE_partition_definition3088 MySQLParser_partition_definition_return

    MySQLParser_partition_definition_return partition_definition3090;
    #undef	RETURN_TYPE_partition_definition3090
    #define	RETURN_TYPE_partition_definition3090 MySQLParser_partition_definition_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3087_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3089_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3091_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3087       = NULL;
    COMMA_SYMBOL3089       = NULL;
    CLOSE_PAR_SYMBOL3091       = NULL;
    partition_definition3088.tree = NULL;

    partition_definition3090.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3087_tree   = NULL;
    COMMA_SYMBOL3089_tree   = NULL;
    CLOSE_PAR_SYMBOL3091_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3063:22: ( OPEN_PAR_SYMBOL partition_definition ( COMMA_SYMBOL partition_definition )* CLOSE_PAR_SYMBOL )
        // MySQL.g:3064:2: OPEN_PAR_SYMBOL partition_definition ( COMMA_SYMBOL partition_definition )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3087 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_definitions16233);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3087_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3087));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3087_tree);
            }

            FOLLOWPUSH(FOLLOW_partition_definition_in_partition_definitions16235);
            partition_definition3088=partition_definition(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definition3088.tree);

            // MySQL.g:3064:39: ( COMMA_SYMBOL partition_definition )*

            for (;;)
            {
                int alt890=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt890=1;
                	}
                    break;

                }

                switch (alt890)
                {
            	case 1:
            	    // MySQL.g:3064:40: COMMA_SYMBOL partition_definition
            	    {
            	        COMMA_SYMBOL3089 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_definitions16238);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3089_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3089));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3089_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_partition_definition_in_partition_definitions16240);
            	        partition_definition3090=partition_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_definition3090.tree);

            	    }
            	    break;

            	default:
            	    goto loop890;	/* break out of the loop */
            	    break;
                }
            }
            loop890: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL3091 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definitions16244);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3091_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3091));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3091_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:3067:1: partition_definition : PARTITION_SYMBOL identifier ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )? ( partition_option )* ( 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_SYMBOL3092;
    pANTLR3_COMMON_TOKEN    VALUES_SYMBOL3094;
    pANTLR3_COMMON_TOKEN    LESS_SYMBOL3095;
    pANTLR3_COMMON_TOKEN    THAN_SYMBOL3096;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL3098;
    pANTLR3_COMMON_TOKEN    IN_SYMBOL3099;
    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3102;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3104;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3106;
    MySQLParser_identifier_return identifier3093;
    #undef	RETURN_TYPE_identifier3093
    #define	RETURN_TYPE_identifier3093 MySQLParser_identifier_return

    MySQLParser_partition_value_list_return partition_value_list3097;
    #undef	RETURN_TYPE_partition_value_list3097
    #define	RETURN_TYPE_partition_value_list3097 MySQLParser_partition_value_list_return

    MySQLParser_partition_value_list_return partition_value_list3100;
    #undef	RETURN_TYPE_partition_value_list3100
    #define	RETURN_TYPE_partition_value_list3100 MySQLParser_partition_value_list_return

    MySQLParser_partition_option_return partition_option3101;
    #undef	RETURN_TYPE_partition_option3101
    #define	RETURN_TYPE_partition_option3101 MySQLParser_partition_option_return

    MySQLParser_subpartition_definition_return subpartition_definition3103;
    #undef	RETURN_TYPE_subpartition_definition3103
    #define	RETURN_TYPE_subpartition_definition3103 MySQLParser_subpartition_definition_return

    MySQLParser_subpartition_definition_return subpartition_definition3105;
    #undef	RETURN_TYPE_subpartition_definition3105
    #define	RETURN_TYPE_subpartition_definition3105 MySQLParser_subpartition_definition_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL3092_tree;
    pANTLR3_BASE_TREE VALUES_SYMBOL3094_tree;
    pANTLR3_BASE_TREE LESS_SYMBOL3095_tree;
    pANTLR3_BASE_TREE THAN_SYMBOL3096_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL3098_tree;
    pANTLR3_BASE_TREE IN_SYMBOL3099_tree;
    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3102_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3104_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3106_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL3092       = NULL;
    VALUES_SYMBOL3094       = NULL;
    LESS_SYMBOL3095       = NULL;
    THAN_SYMBOL3096       = NULL;
    MAXVALUE_SYMBOL3098       = NULL;
    IN_SYMBOL3099       = NULL;
    OPEN_PAR_SYMBOL3102       = NULL;
    COMMA_SYMBOL3104       = NULL;
    CLOSE_PAR_SYMBOL3106       = NULL;
    identifier3093.tree = NULL;

    partition_value_list3097.tree = NULL;

    partition_value_list3100.tree = NULL;

    partition_option3101.tree = NULL;

    subpartition_definition3103.tree = NULL;

    subpartition_definition3105.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL3092_tree   = NULL;
    VALUES_SYMBOL3094_tree   = NULL;
    LESS_SYMBOL3095_tree   = NULL;
    THAN_SYMBOL3096_tree   = NULL;
    MAXVALUE_SYMBOL3098_tree   = NULL;
    IN_SYMBOL3099_tree   = NULL;
    OPEN_PAR_SYMBOL3102_tree   = NULL;
    COMMA_SYMBOL3104_tree   = NULL;
    CLOSE_PAR_SYMBOL3106_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3067:21: ( PARTITION_SYMBOL identifier ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )? ( partition_option )* ( OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL )? )
        // MySQL.g:3068:2: PARTITION_SYMBOL identifier ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )? ( partition_option )* ( OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            PARTITION_SYMBOL3092 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_partition_definition16253);
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL3092_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL3092));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL3092_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_partition_definition16255);
            identifier3093=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulepartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3093.tree);

            // MySQL.g:3069:2: ( VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list ) )?
            {
                int alt893=2;
                switch ( LA(1) )
                {
                    case VALUES_SYMBOL:
                    	{
                    		alt893=1;
                    	}
                        break;
                }

                switch (alt893)
                {
            	case 1:
            	    // MySQL.g:3070:3: VALUES_SYMBOL ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list )
            	    {
            	        VALUES_SYMBOL3094 = (pANTLR3_COMMON_TOKEN) MATCHT(VALUES_SYMBOL, &FOLLOW_VALUES_SYMBOL_in_partition_definition16262);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        VALUES_SYMBOL3094_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VALUES_SYMBOL3094));
            	        ADAPTOR->addChild(ADAPTOR, root_0, VALUES_SYMBOL3094_tree);
            	        }

            	        // MySQL.g:3071:3: ( LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL ) | IN_SYMBOL partition_value_list )
            	        {
            	            int alt892=2;
            	            switch ( LA(1) )
            	            {
            	            case LESS_SYMBOL:
            	            	{
            	            		alt892=1;
            	            	}
            	                break;
            	            case IN_SYMBOL:
            	            	{
            	            		alt892=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 892;
            	                EXCEPTION->state        = 0;


            	                goto rulepartition_definitionEx;

            	            }

            	            switch (alt892)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3072:4: LESS_SYMBOL THAN_SYMBOL ( partition_value_list | MAXVALUE_SYMBOL )
            	        	    {
            	        	        LESS_SYMBOL3095 = (pANTLR3_COMMON_TOKEN) MATCHT(LESS_SYMBOL, &FOLLOW_LESS_SYMBOL_in_partition_definition16271);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        LESS_SYMBOL3095_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LESS_SYMBOL3095));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, LESS_SYMBOL3095_tree);
            	        	        }

            	        	        THAN_SYMBOL3096 = (pANTLR3_COMMON_TOKEN) MATCHT(THAN_SYMBOL, &FOLLOW_THAN_SYMBOL_in_partition_definition16273);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        THAN_SYMBOL3096_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, THAN_SYMBOL3096));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, THAN_SYMBOL3096_tree);
            	        	        }

            	        	        // MySQL.g:3072:28: ( partition_value_list | MAXVALUE_SYMBOL )
            	        	        {
            	        	            int alt891=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	            case OPEN_PAR_SYMBOL:
            	        	            	{
            	        	            		alt891=1;
            	        	            	}
            	        	                break;
            	        	            case MAXVALUE_SYMBOL:
            	        	            	{
            	        	            		alt891=2;
            	        	            	}
            	        	                break;

            	        	            default:
            	        	                if (BACKTRACKING>0)
            	        	                {
            	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	                    return retval;
            	        	                }

            	        	                CONSTRUCTEX();
            	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	                EXCEPTION->message      = (void *)"";
            	        	                EXCEPTION->decisionNum  = 891;
            	        	                EXCEPTION->state        = 0;


            	        	                goto rulepartition_definitionEx;

            	        	            }

            	        	            switch (alt891)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3072:29: partition_value_list
            	        	        	    {
            	        	        	        FOLLOWPUSH(FOLLOW_partition_value_list_in_partition_definition16276);
            	        	        	        partition_value_list3097=partition_value_list(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartition_definitionEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_value_list3097.tree);

            	        	        	    }
            	        	        	    break;
            	        	        	case 2:
            	        	        	    // MySQL.g:3072:52: MAXVALUE_SYMBOL
            	        	        	    {
            	        	        	        MAXVALUE_SYMBOL3098 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_definition16280);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulepartition_definitionEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        MAXVALUE_SYMBOL3098_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL3098));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL3098_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3073:6: IN_SYMBOL partition_value_list
            	        	    {
            	        	        IN_SYMBOL3099 = (pANTLR3_COMMON_TOKEN) MATCHT(IN_SYMBOL, &FOLLOW_IN_SYMBOL_in_partition_definition16288);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        IN_SYMBOL3099_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IN_SYMBOL3099));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, IN_SYMBOL3099_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_partition_value_list_in_partition_definition16290);
            	        	        partition_value_list3100=partition_value_list(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_value_list3100.tree);

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:3076:2: ( partition_option )*

            for (;;)
            {
                int alt894=2;
                switch ( LA(1) )
                {
                case COMMENT_SYMBOL:
                case DATA_SYMBOL:
                case ENGINE_SYMBOL:
                case MAX_ROWS_SYMBOL:
                case MIN_ROWS_SYMBOL:
                case NODEGROUP_SYMBOL:
                case STORAGE_SYMBOL:
                case TABLESPACE_SYMBOL:
                case INDEX_SYMBOL:
                	{
                		alt894=1;
                	}
                    break;

                }

                switch (alt894)
                {
            	case 1:
            	    // MySQL.g:3076:3: partition_option
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_option_in_partition_definition16302);
            	        partition_option3101=partition_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_option3101.tree);

            	    }
            	    break;

            	default:
            	    goto loop894;	/* break out of the loop */
            	    break;
                }
            }
            loop894: ; /* Jump out to here if this rule does not match */


            // MySQL.g:3077:2: ( OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL )?
            {
                int alt896=2;
                switch ( LA(1) )
                {
                    case OPEN_PAR_SYMBOL:
                    	{
                    		alt896=1;
                    	}
                        break;
                }

                switch (alt896)
                {
            	case 1:
            	    // MySQL.g:3077:3: OPEN_PAR_SYMBOL subpartition_definition ( COMMA_SYMBOL subpartition_definition )* CLOSE_PAR_SYMBOL
            	    {
            	        OPEN_PAR_SYMBOL3102 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_definition16308);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        OPEN_PAR_SYMBOL3102_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3102));
            	        ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3102_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_subpartition_definition_in_partition_definition16310);
            	        subpartition_definition3103=subpartition_definition(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subpartition_definition3103.tree);

            	        // MySQL.g:3077:43: ( COMMA_SYMBOL subpartition_definition )*

            	        for (;;)
            	        {
            	            int alt895=2;
            	            switch ( LA(1) )
            	            {
            	            case COMMA_SYMBOL:
            	            	{
            	            		alt895=1;
            	            	}
            	                break;

            	            }

            	            switch (alt895)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3077:44: COMMA_SYMBOL subpartition_definition
            	        	    {
            	        	        COMMA_SYMBOL3104 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_definition16313);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        COMMA_SYMBOL3104_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3104));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3104_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_subpartition_definition_in_partition_definition16315);
            	        	        subpartition_definition3105=subpartition_definition(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_definitionEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, subpartition_definition3105.tree);

            	        	    }
            	        	    break;

            	        	default:
            	        	    goto loop895;	/* break out of the loop */
            	        	    break;
            	            }
            	        }
            	        loop895: ; /* Jump out to here if this rule does not match */


            	        CLOSE_PAR_SYMBOL3106 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_definition16319);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        CLOSE_PAR_SYMBOL3106_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3106));
            	        ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3106_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 partition_option
 * MySQL.g:3080:1: partition_option : ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref | NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number | ( MAX_ROWS_SYMBOL | MIN_ROWS_SYMBOL ) ( EQUAL_OPERATOR )? real_ulong_number | ( DATA_SYMBOL | INDEX_SYMBOL ) DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal | COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal );
 */
static MySQLParser_partition_option_return
partition_option(pMySQLParser ctx)
{
    MySQLParser_partition_option_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TABLESPACE_SYMBOL3107;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3108;
    pANTLR3_COMMON_TOKEN    STORAGE_SYMBOL3110;
    pANTLR3_COMMON_TOKEN    ENGINE_SYMBOL3111;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3112;
    pANTLR3_COMMON_TOKEN    NODEGROUP_SYMBOL3114;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3115;
    pANTLR3_COMMON_TOKEN    set3117;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3118;
    pANTLR3_COMMON_TOKEN    set3120;
    pANTLR3_COMMON_TOKEN    DIRECTORY_SYMBOL3121;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3122;
    pANTLR3_COMMON_TOKEN    COMMENT_SYMBOL3124;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3125;
    MySQLParser_identifier_return identifier3109;
    #undef	RETURN_TYPE_identifier3109
    #define	RETURN_TYPE_identifier3109 MySQLParser_identifier_return

    MySQLParser_engine_ref_return engine_ref3113;
    #undef	RETURN_TYPE_engine_ref3113
    #define	RETURN_TYPE_engine_ref3113 MySQLParser_engine_ref_return

    MySQLParser_real_ulong_number_return real_ulong_number3116;
    #undef	RETURN_TYPE_real_ulong_number3116
    #define	RETURN_TYPE_real_ulong_number3116 MySQLParser_real_ulong_number_return

    MySQLParser_real_ulong_number_return real_ulong_number3119;
    #undef	RETURN_TYPE_real_ulong_number3119
    #define	RETURN_TYPE_real_ulong_number3119 MySQLParser_real_ulong_number_return

    MySQLParser_string_literal_return string_literal3123;
    #undef	RETURN_TYPE_string_literal3123
    #define	RETURN_TYPE_string_literal3123 MySQLParser_string_literal_return

    MySQLParser_string_literal_return string_literal3126;
    #undef	RETURN_TYPE_string_literal3126
    #define	RETURN_TYPE_string_literal3126 MySQLParser_string_literal_return

    pANTLR3_BASE_TREE TABLESPACE_SYMBOL3107_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3108_tree;
    pANTLR3_BASE_TREE STORAGE_SYMBOL3110_tree;
    pANTLR3_BASE_TREE ENGINE_SYMBOL3111_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3112_tree;
    pANTLR3_BASE_TREE NODEGROUP_SYMBOL3114_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3115_tree;
    pANTLR3_BASE_TREE set3117_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3118_tree;
    pANTLR3_BASE_TREE set3120_tree;
    pANTLR3_BASE_TREE DIRECTORY_SYMBOL3121_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3122_tree;
    pANTLR3_BASE_TREE COMMENT_SYMBOL3124_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3125_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TABLESPACE_SYMBOL3107       = NULL;
    EQUAL_OPERATOR3108       = NULL;
    STORAGE_SYMBOL3110       = NULL;
    ENGINE_SYMBOL3111       = NULL;
    EQUAL_OPERATOR3112       = NULL;
    NODEGROUP_SYMBOL3114       = NULL;
    EQUAL_OPERATOR3115       = NULL;
    set3117       = NULL;
    EQUAL_OPERATOR3118       = NULL;
    set3120       = NULL;
    DIRECTORY_SYMBOL3121       = NULL;
    EQUAL_OPERATOR3122       = NULL;
    COMMENT_SYMBOL3124       = NULL;
    EQUAL_OPERATOR3125       = NULL;
    identifier3109.tree = NULL;

    engine_ref3113.tree = NULL;

    real_ulong_number3116.tree = NULL;

    real_ulong_number3119.tree = NULL;

    string_literal3123.tree = NULL;

    string_literal3126.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TABLESPACE_SYMBOL3107_tree   = NULL;
    EQUAL_OPERATOR3108_tree   = NULL;
    STORAGE_SYMBOL3110_tree   = NULL;
    ENGINE_SYMBOL3111_tree   = NULL;
    EQUAL_OPERATOR3112_tree   = NULL;
    NODEGROUP_SYMBOL3114_tree   = NULL;
    EQUAL_OPERATOR3115_tree   = NULL;
    set3117_tree   = NULL;
    EQUAL_OPERATOR3118_tree   = NULL;
    set3120_tree   = NULL;
    DIRECTORY_SYMBOL3121_tree   = NULL;
    EQUAL_OPERATOR3122_tree   = NULL;
    COMMENT_SYMBOL3124_tree   = NULL;
    EQUAL_OPERATOR3125_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3080:17: ( TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier | ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref | NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number | ( MAX_ROWS_SYMBOL | MIN_ROWS_SYMBOL ) ( EQUAL_OPERATOR )? real_ulong_number | ( DATA_SYMBOL | INDEX_SYMBOL ) DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal | COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal )

            ANTLR3_UINT32 alt904;

            alt904=6;

            switch ( LA(1) )
            {
            case TABLESPACE_SYMBOL:
            	{
            		alt904=1;
            	}
                break;
            case ENGINE_SYMBOL:
            case STORAGE_SYMBOL:
            	{
            		alt904=2;
            	}
                break;
            case NODEGROUP_SYMBOL:
            	{
            		alt904=3;
            	}
                break;
            case MAX_ROWS_SYMBOL:
            case MIN_ROWS_SYMBOL:
            	{
            		alt904=4;
            	}
                break;
            case DATA_SYMBOL:
            case INDEX_SYMBOL:
            	{
            		alt904=5;
            	}
                break;
            case COMMENT_SYMBOL:
            	{
            		alt904=6;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 904;
                EXCEPTION->state        = 0;


                goto rulepartition_optionEx;

            }

            switch (alt904)
            {
        	case 1:
        	    // MySQL.g:3081:2: TABLESPACE_SYMBOL ( EQUAL_OPERATOR )? identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TABLESPACE_SYMBOL3107 = (pANTLR3_COMMON_TOKEN) MATCHT(TABLESPACE_SYMBOL, &FOLLOW_TABLESPACE_SYMBOL_in_partition_option16330);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TABLESPACE_SYMBOL3107_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TABLESPACE_SYMBOL3107));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TABLESPACE_SYMBOL3107_tree);
        	        }

        	        // MySQL.g:3081:20: ( EQUAL_OPERATOR )?
        	        {
        	            int alt897=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt897=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt897)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3081:20: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3108 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16332);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3108_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3108));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3108_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_partition_option16335);
        	        identifier3109=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3109.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3082:4: ( STORAGE_SYMBOL )? ENGINE_SYMBOL ( EQUAL_OPERATOR )? engine_ref
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3082:4: ( STORAGE_SYMBOL )?
        	        {
        	            int alt898=2;
        	            switch ( LA(1) )
        	            {
        	                case STORAGE_SYMBOL:
        	                	{
        	                		alt898=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt898)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3082:4: STORAGE_SYMBOL
        	        	    {
        	        	        STORAGE_SYMBOL3110 = (pANTLR3_COMMON_TOKEN) MATCHT(STORAGE_SYMBOL, &FOLLOW_STORAGE_SYMBOL_in_partition_option16340);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        STORAGE_SYMBOL3110_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, STORAGE_SYMBOL3110));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, STORAGE_SYMBOL3110_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENGINE_SYMBOL3111 = (pANTLR3_COMMON_TOKEN) MATCHT(ENGINE_SYMBOL, &FOLLOW_ENGINE_SYMBOL_in_partition_option16343);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENGINE_SYMBOL3111_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENGINE_SYMBOL3111));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENGINE_SYMBOL3111_tree);
        	        }

        	        // MySQL.g:3082:34: ( EQUAL_OPERATOR )?
        	        {
        	            int alt899=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt899=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt899)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3082:34: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3112 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16345);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3112_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3112));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3112_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_engine_ref_in_partition_option16348);
        	        engine_ref3113=engine_ref(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, engine_ref3113.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3083:4: NODEGROUP_SYMBOL ( EQUAL_OPERATOR )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NODEGROUP_SYMBOL3114 = (pANTLR3_COMMON_TOKEN) MATCHT(NODEGROUP_SYMBOL, &FOLLOW_NODEGROUP_SYMBOL_in_partition_option16353);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NODEGROUP_SYMBOL3114_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NODEGROUP_SYMBOL3114));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NODEGROUP_SYMBOL3114_tree);
        	        }

        	        // MySQL.g:3083:21: ( EQUAL_OPERATOR )?
        	        {
        	            int alt900=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt900=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt900)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3083:21: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3115 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16355);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3115_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3115));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3115_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_partition_option16358);
        	        real_ulong_number3116=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3116.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3084:4: ( MAX_ROWS_SYMBOL | MIN_ROWS_SYMBOL ) ( EQUAL_OPERATOR )? real_ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set3117=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == MAX_ROWS_SYMBOL || LA(1) == MIN_ROWS_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3117))
        	            );
        	            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 rulepartition_optionEx;
        	        }


        	        // MySQL.g:3084:40: ( EQUAL_OPERATOR )?
        	        {
        	            int alt901=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt901=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt901)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3084:40: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3118 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16371);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3118_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3118));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3118_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_real_ulong_number_in_partition_option16374);
        	        real_ulong_number3119=real_ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulong_number3119.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3085:4: ( DATA_SYMBOL | INDEX_SYMBOL ) DIRECTORY_SYMBOL ( EQUAL_OPERATOR )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set3120=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( LA(1) == DATA_SYMBOL || LA(1) == INDEX_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3120))
        	            );
        	            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 rulepartition_optionEx;
        	        }


        	        DIRECTORY_SYMBOL3121 = (pANTLR3_COMMON_TOKEN) MATCHT(DIRECTORY_SYMBOL, &FOLLOW_DIRECTORY_SYMBOL_in_partition_option16387);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DIRECTORY_SYMBOL3121_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DIRECTORY_SYMBOL3121));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DIRECTORY_SYMBOL3121_tree);
        	        }

        	        // MySQL.g:3085:50: ( EQUAL_OPERATOR )?
        	        {
        	            int alt902=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt902=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt902)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3085:50: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3122 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16389);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3122_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3122));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3122_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_partition_option16392);
        	        string_literal3123=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal3123.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:3086:4: COMMENT_SYMBOL ( EQUAL_OPERATOR )? string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        COMMENT_SYMBOL3124 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMENT_SYMBOL, &FOLLOW_COMMENT_SYMBOL_in_partition_option16397);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        COMMENT_SYMBOL3124_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMENT_SYMBOL3124));
        	        ADAPTOR->addChild(ADAPTOR, root_0, COMMENT_SYMBOL3124_tree);
        	        }

        	        // MySQL.g:3086:19: ( EQUAL_OPERATOR )?
        	        {
        	            int alt903=2;
        	            switch ( LA(1) )
        	            {
        	                case EQUAL_OPERATOR:
        	                	{
        	                		alt903=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt903)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3086:19: EQUAL_OPERATOR
        	        	    {
        	        	        EQUAL_OPERATOR3125 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_partition_option16399);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulepartition_optionEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        EQUAL_OPERATOR3125_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3125));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3125_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        FOLLOWPUSH(FOLLOW_string_literal_in_partition_option16402);
        	        string_literal3126=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepartition_optionEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal3126.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulepartition_optionEx; /* Prevent compiler warnings */
    rulepartition_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_option */

/**
 * $ANTLR start subpartition_definition
 * MySQL.g:3089:1: subpartition_definition : SUBPARTITION_SYMBOL identifier ( partition_option )* ;
 */
static MySQLParser_subpartition_definition_return
subpartition_definition(pMySQLParser ctx)
{
    MySQLParser_subpartition_definition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SUBPARTITION_SYMBOL3127;
    MySQLParser_identifier_return identifier3128;
    #undef	RETURN_TYPE_identifier3128
    #define	RETURN_TYPE_identifier3128 MySQLParser_identifier_return

    MySQLParser_partition_option_return partition_option3129;
    #undef	RETURN_TYPE_partition_option3129
    #define	RETURN_TYPE_partition_option3129 MySQLParser_partition_option_return

    pANTLR3_BASE_TREE SUBPARTITION_SYMBOL3127_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SUBPARTITION_SYMBOL3127       = NULL;
    identifier3128.tree = NULL;

    partition_option3129.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SUBPARTITION_SYMBOL3127_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3089:24: ( SUBPARTITION_SYMBOL identifier ( partition_option )* )
        // MySQL.g:3090:2: SUBPARTITION_SYMBOL identifier ( partition_option )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            SUBPARTITION_SYMBOL3127 = (pANTLR3_COMMON_TOKEN) MATCHT(SUBPARTITION_SYMBOL, &FOLLOW_SUBPARTITION_SYMBOL_in_subpartition_definition16411);
            if  (HASEXCEPTION())
            {
                goto rulesubpartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            SUBPARTITION_SYMBOL3127_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SUBPARTITION_SYMBOL3127));
            ADAPTOR->addChild(ADAPTOR, root_0, SUBPARTITION_SYMBOL3127_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_in_subpartition_definition16413);
            identifier3128=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulesubpartition_definitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3128.tree);

            // MySQL.g:3090:33: ( partition_option )*

            for (;;)
            {
                int alt905=2;
                switch ( LA(1) )
                {
                case COMMENT_SYMBOL:
                case DATA_SYMBOL:
                case ENGINE_SYMBOL:
                case MAX_ROWS_SYMBOL:
                case MIN_ROWS_SYMBOL:
                case NODEGROUP_SYMBOL:
                case STORAGE_SYMBOL:
                case TABLESPACE_SYMBOL:
                case INDEX_SYMBOL:
                	{
                		alt905=1;
                	}
                    break;

                }

                switch (alt905)
                {
            	case 1:
            	    // MySQL.g:3090:34: partition_option
            	    {
            	        FOLLOWPUSH(FOLLOW_partition_option_in_subpartition_definition16416);
            	        partition_option3129=partition_option(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulesubpartition_definitionEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, partition_option3129.tree);

            	    }
            	    break;

            	default:
            	    goto loop905;	/* break out of the loop */
            	    break;
                }
            }
            loop905: ; /* Jump out to here if this rule does not match */


        }

    }

    // 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:3093: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_SYMBOL3130;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL3132;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3133;
    pANTLR3_COMMON_TOKEN    MAXVALUE_SYMBOL3135;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3136;
    MySQLParser_expression_return expression3131;
    #undef	RETURN_TYPE_expression3131
    #define	RETURN_TYPE_expression3131 MySQLParser_expression_return

    MySQLParser_expression_return expression3134;
    #undef	RETURN_TYPE_expression3134
    #define	RETURN_TYPE_expression3134 MySQLParser_expression_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3130_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL3132_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3133_tree;
    pANTLR3_BASE_TREE MAXVALUE_SYMBOL3135_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3136_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3130       = NULL;
    MAXVALUE_SYMBOL3132       = NULL;
    COMMA_SYMBOL3133       = NULL;
    MAXVALUE_SYMBOL3135       = NULL;
    CLOSE_PAR_SYMBOL3136       = NULL;
    expression3131.tree = NULL;

    expression3134.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3130_tree   = NULL;
    MAXVALUE_SYMBOL3132_tree   = NULL;
    COMMA_SYMBOL3133_tree   = NULL;
    MAXVALUE_SYMBOL3135_tree   = NULL;
    CLOSE_PAR_SYMBOL3136_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3093:21: ( OPEN_PAR_SYMBOL ( expression | MAXVALUE_SYMBOL ) ( COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL ) )* CLOSE_PAR_SYMBOL )
        // MySQL.g:3094: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_SYMBOL3130 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_partition_value_list16427);
            if  (HASEXCEPTION())
            {
                goto rulepartition_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3130_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3130));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3130_tree);
            }

            // MySQL.g:3094:18: ( expression | MAXVALUE_SYMBOL )
            {
                int alt906=2;
                {
                    int LA906_0 = LA(1);
                    if ( (((LA906_0 >= ACCOUNT_SYMBOL) && (LA906_0 <= YEAR_SYMBOL)) || ((LA906_0 >= AT_AT_SIGN_SYMBOL) && (LA906_0 <= AT_TEXT_SUFFIX)) || LA906_0 == BACK_TICK_QUOTED_ID || ((LA906_0 >= BINARY_SYMBOL) && (LA906_0 <= BIN_NUMBER)) || LA906_0 == BITWISE_NOT_OPERATOR || ((LA906_0 >= BIT_AND_SYMBOL) && (LA906_0 <= BIT_XOR_SYMBOL)) || ((LA906_0 >= CASE_SYMBOL) && (LA906_0 <= CAST_SYMBOL)) || LA906_0 == CHAR_SYMBOL || ((LA906_0 >= CONVERT_SYMBOL) && (LA906_0 <= COUNT_SYMBOL)) || LA906_0 == CURDATE_SYMBOL || LA906_0 == CURRENT_USER_SYMBOL || LA906_0 == CURTIME_SYMBOL || LA906_0 == DATABASE_SYMBOL || LA906_0 == DATE_ADD_SYMBOL || LA906_0 == DATE_SUB_SYMBOL || LA906_0 == DECIMAL_NUMBER || LA906_0 == DOT_SYMBOL || LA906_0 == DOUBLE_QUOTED_TEXT || LA906_0 == EXISTS_SYMBOL || ((LA906_0 >= EXTRACT_SYMBOL) && (LA906_0 <= FALSE_SYMBOL)) || LA906_0 == FLOAT_NUMBER || LA906_0 == GROUP_CONCAT_SYMBOL || LA906_0 == HEX_NUMBER || ((LA906_0 >= IDENTIFIER) && (LA906_0 <= IF_SYMBOL)) || LA906_0 == INSERT_SYMBOL || LA906_0 == INTERVAL_SYMBOL || LA906_0 == INT_NUMBER || LA906_0 == LEFT_SYMBOL || LA906_0 == LOGICAL_NOT_OPERATOR || LA906_0 == LONG_NUMBER || LA906_0 == MATCH_SYMBOL || LA906_0 == MAX_SYMBOL || LA906_0 == MINUS_OPERATOR || LA906_0 == MIN_SYMBOL || LA906_0 == MOD_SYMBOL || LA906_0 == NCHAR_TEXT || LA906_0 == NOT2_SYMBOL || ((LA906_0 >= NOT_SYMBOL) && (LA906_0 <= NOW_SYMBOL)) || LA906_0 == NULL2_SYMBOL || LA906_0 == NULL_SYMBOL || ((LA906_0 >= OPEN_CURLY_SYMBOL) && (LA906_0 <= OPEN_PAR_SYMBOL)) || LA906_0 == PARAM_MARKER || ((LA906_0 >= PLUS_OPERATOR) && (LA906_0 <= POSITION_SYMBOL)) || ((LA906_0 >= REPEAT_SYMBOL) && (LA906_0 <= REPLACE_SYMBOL)) || LA906_0 == RIGHT_SYMBOL || LA906_0 == SINGLE_QUOTED_TEXT || LA906_0 == STDDEV_SAMP_SYMBOL || LA906_0 == STD_SYMBOL || LA906_0 == SUBSTRING_SYMBOL || ((LA906_0 >= SUM_SYMBOL) && (LA906_0 <= SYSDATE_SYMBOL)) || ((LA906_0 >= TRIM_SYMBOL) && (LA906_0 <= TRUE_SYMBOL)) || LA906_0 == ULONGLONG_NUMBER || LA906_0 == UNDERSCORE_CHARSET || ((LA906_0 >= UTC_DATE_SYMBOL) && (LA906_0 <= UTC_TIME_SYMBOL)) || LA906_0 == VALUES_SYMBOL || LA906_0 == VARIANCE_SYMBOL || LA906_0 == VAR_SAMP_SYMBOL))
                    {
                        alt906=1;
                    }
                    else if ( (LA906_0 == MAXVALUE_SYMBOL))
                    {
                        alt906=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 906;
                        EXCEPTION->state        = 0;


                        goto rulepartition_value_listEx;

                    }
                }
                switch (alt906)
                {
            	case 1:
            	    // MySQL.g:3094:19: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_partition_value_list16430);
            	        expression3131=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3131.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3094:32: MAXVALUE_SYMBOL
            	    {
            	        MAXVALUE_SYMBOL3132 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16434);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        MAXVALUE_SYMBOL3132_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL3132));
            	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL3132_tree);
            	        }

            	    }
            	    break;

                }
            }

            // MySQL.g:3094:49: ( COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL ) )*

            for (;;)
            {
                int alt908=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt908=1;
                	}
                    break;

                }

                switch (alt908)
                {
            	case 1:
            	    // MySQL.g:3094:50: COMMA_SYMBOL ( expression | MAXVALUE_SYMBOL )
            	    {
            	        COMMA_SYMBOL3133 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_partition_value_list16438);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulepartition_value_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3133_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3133));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3133_tree);
            	        }

            	        // MySQL.g:3094:63: ( expression | MAXVALUE_SYMBOL )
            	        {
            	            int alt907=2;
            	            {
            	                int LA907_0 = LA(1);
            	                if ( (((LA907_0 >= ACCOUNT_SYMBOL) && (LA907_0 <= YEAR_SYMBOL)) || ((LA907_0 >= AT_AT_SIGN_SYMBOL) && (LA907_0 <= AT_TEXT_SUFFIX)) || LA907_0 == BACK_TICK_QUOTED_ID || ((LA907_0 >= BINARY_SYMBOL) && (LA907_0 <= BIN_NUMBER)) || LA907_0 == BITWISE_NOT_OPERATOR || ((LA907_0 >= BIT_AND_SYMBOL) && (LA907_0 <= BIT_XOR_SYMBOL)) || ((LA907_0 >= CASE_SYMBOL) && (LA907_0 <= CAST_SYMBOL)) || LA907_0 == CHAR_SYMBOL || ((LA907_0 >= CONVERT_SYMBOL) && (LA907_0 <= COUNT_SYMBOL)) || LA907_0 == CURDATE_SYMBOL || LA907_0 == CURRENT_USER_SYMBOL || LA907_0 == CURTIME_SYMBOL || LA907_0 == DATABASE_SYMBOL || LA907_0 == DATE_ADD_SYMBOL || LA907_0 == DATE_SUB_SYMBOL || LA907_0 == DECIMAL_NUMBER || LA907_0 == DOT_SYMBOL || LA907_0 == DOUBLE_QUOTED_TEXT || LA907_0 == EXISTS_SYMBOL || ((LA907_0 >= EXTRACT_SYMBOL) && (LA907_0 <= FALSE_SYMBOL)) || LA907_0 == FLOAT_NUMBER || LA907_0 == GROUP_CONCAT_SYMBOL || LA907_0 == HEX_NUMBER || ((LA907_0 >= IDENTIFIER) && (LA907_0 <= IF_SYMBOL)) || LA907_0 == INSERT_SYMBOL || LA907_0 == INTERVAL_SYMBOL || LA907_0 == INT_NUMBER || LA907_0 == LEFT_SYMBOL || LA907_0 == LOGICAL_NOT_OPERATOR || LA907_0 == LONG_NUMBER || LA907_0 == MATCH_SYMBOL || LA907_0 == MAX_SYMBOL || LA907_0 == MINUS_OPERATOR || LA907_0 == MIN_SYMBOL || LA907_0 == MOD_SYMBOL || LA907_0 == NCHAR_TEXT || LA907_0 == NOT2_SYMBOL || ((LA907_0 >= NOT_SYMBOL) && (LA907_0 <= NOW_SYMBOL)) || LA907_0 == NULL2_SYMBOL || LA907_0 == NULL_SYMBOL || ((LA907_0 >= OPEN_CURLY_SYMBOL) && (LA907_0 <= OPEN_PAR_SYMBOL)) || LA907_0 == PARAM_MARKER || ((LA907_0 >= PLUS_OPERATOR) && (LA907_0 <= POSITION_SYMBOL)) || ((LA907_0 >= REPEAT_SYMBOL) && (LA907_0 <= REPLACE_SYMBOL)) || LA907_0 == RIGHT_SYMBOL || LA907_0 == SINGLE_QUOTED_TEXT || LA907_0 == STDDEV_SAMP_SYMBOL || LA907_0 == STD_SYMBOL || LA907_0 == SUBSTRING_SYMBOL || ((LA907_0 >= SUM_SYMBOL) && (LA907_0 <= SYSDATE_SYMBOL)) || ((LA907_0 >= TRIM_SYMBOL) && (LA907_0 <= TRUE_SYMBOL)) || LA907_0 == ULONGLONG_NUMBER || LA907_0 == UNDERSCORE_CHARSET || ((LA907_0 >= UTC_DATE_SYMBOL) && (LA907_0 <= UTC_TIME_SYMBOL)) || LA907_0 == VALUES_SYMBOL || LA907_0 == VARIANCE_SYMBOL || LA907_0 == VAR_SAMP_SYMBOL))
            	                {
            	                    alt907=1;
            	                }
            	                else if ( (LA907_0 == MAXVALUE_SYMBOL))
            	                {
            	                    alt907=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 907;
            	                    EXCEPTION->state        = 0;


            	                    goto rulepartition_value_listEx;

            	                }
            	            }
            	            switch (alt907)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3094:64: expression
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_expression_in_partition_value_list16441);
            	        	        expression3134=expression(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_value_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3134.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3094:77: MAXVALUE_SYMBOL
            	        	    {
            	        	        MAXVALUE_SYMBOL3135 = (pANTLR3_COMMON_TOKEN) MATCHT(MAXVALUE_SYMBOL, &FOLLOW_MAXVALUE_SYMBOL_in_partition_value_list16445);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulepartition_value_listEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MAXVALUE_SYMBOL3135_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MAXVALUE_SYMBOL3135));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MAXVALUE_SYMBOL3135_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

            	default:
            	    goto loop908;	/* break out of the loop */
            	    break;
                }
            }
            loop908: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL3136 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_partition_value_list16450);
            if  (HASEXCEPTION())
            {
                goto rulepartition_value_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3136_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3136));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3136_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:3097: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_SYMBOL3137;
    pANTLR3_COMMON_TOKEN    EQUAL_OPERATOR3138;
    MySQLParser_user_return user3139;
    #undef	RETURN_TYPE_user3139
    #define	RETURN_TYPE_user3139 MySQLParser_user_return

    pANTLR3_BASE_TREE DEFINER_SYMBOL3137_tree;
    pANTLR3_BASE_TREE EQUAL_OPERATOR3138_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFINER_SYMBOL3137       = NULL;
    EQUAL_OPERATOR3138       = NULL;
    user3139.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFINER_SYMBOL3137_tree   = NULL;
    EQUAL_OPERATOR3138_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3097:15: ( DEFINER_SYMBOL ^ EQUAL_OPERATOR user )
        // MySQL.g:3098:2: DEFINER_SYMBOL ^ EQUAL_OPERATOR user
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            DEFINER_SYMBOL3137 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFINER_SYMBOL, &FOLLOW_DEFINER_SYMBOL_in_definer_clause16459);
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DEFINER_SYMBOL3137_tree = 
            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFINER_SYMBOL3137))
            ;
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, DEFINER_SYMBOL3137_tree, root_0));
            }

            EQUAL_OPERATOR3138 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_definer_clause16462);
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR3138_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3138));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3138_tree);
            }

            FOLLOWPUSH(FOLLOW_user_in_definer_clause16464);
            user3139=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruledefiner_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user3139.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_exists
 * MySQL.g:3101:1: if_exists : IF_SYMBOL EXISTS_SYMBOL ;
 */
static MySQLParser_if_exists_return
if_exists(pMySQLParser ctx)
{
    MySQLParser_if_exists_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    IF_SYMBOL3140;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL3141;

    pANTLR3_BASE_TREE IF_SYMBOL3140_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL3141_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IF_SYMBOL3140       = NULL;
    EXISTS_SYMBOL3141       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IF_SYMBOL3140_tree   = NULL;
    EXISTS_SYMBOL3141_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3101:10: ( IF_SYMBOL EXISTS_SYMBOL )
        // MySQL.g:3102:2: IF_SYMBOL EXISTS_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            IF_SYMBOL3140 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_exists16473);
            if  (HASEXCEPTION())
            {
                goto ruleif_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL3140_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL3140));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL3140_tree);
            }

            EXISTS_SYMBOL3141 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_if_exists16475);
            if  (HASEXCEPTION())
            {
                goto ruleif_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXISTS_SYMBOL3141_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL3141));
            ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL3141_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleif_existsEx; /* Prevent compiler warnings */
    ruleif_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_exists */

/**
 * $ANTLR start if_not_exists
 * MySQL.g:3105:1: if_not_exists : IF_SYMBOL not_rule 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_SYMBOL3142;
    pANTLR3_COMMON_TOKEN    EXISTS_SYMBOL3144;
    MySQLParser_not_rule_return not_rule3143;
    #undef	RETURN_TYPE_not_rule3143
    #define	RETURN_TYPE_not_rule3143 MySQLParser_not_rule_return

    pANTLR3_BASE_TREE IF_SYMBOL3142_tree;
    pANTLR3_BASE_TREE EXISTS_SYMBOL3144_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IF_SYMBOL3142       = NULL;
    EXISTS_SYMBOL3144       = NULL;
    not_rule3143.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IF_SYMBOL3142_tree   = NULL;
    EXISTS_SYMBOL3144_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3105:14: ( IF_SYMBOL not_rule EXISTS_SYMBOL )
        // MySQL.g:3106:2: IF_SYMBOL not_rule EXISTS_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            IF_SYMBOL3142 = (pANTLR3_COMMON_TOKEN) MATCHT(IF_SYMBOL, &FOLLOW_IF_SYMBOL_in_if_not_exists16484);
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            IF_SYMBOL3142_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IF_SYMBOL3142));
            ADAPTOR->addChild(ADAPTOR, root_0, IF_SYMBOL3142_tree);
            }

            FOLLOWPUSH(FOLLOW_not_rule_in_if_not_exists16486);
            not_rule3143=not_rule(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, not_rule3143.tree);

            EXISTS_SYMBOL3144 = (pANTLR3_COMMON_TOKEN) MATCHT(EXISTS_SYMBOL, &FOLLOW_EXISTS_SYMBOL_in_if_not_exists16488);
            if  (HASEXCEPTION())
            {
                goto ruleif_not_existsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EXISTS_SYMBOL3144_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EXISTS_SYMBOL3144));
            ADAPTOR->addChild(ADAPTOR, root_0, EXISTS_SYMBOL3144_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:3109:1: procedure_parameter : ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )? function_parameter ;
 */
static MySQLParser_procedure_parameter_return
procedure_parameter(pMySQLParser ctx)
{
    MySQLParser_procedure_parameter_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3145;
    MySQLParser_function_parameter_return function_parameter3146;
    #undef	RETURN_TYPE_function_parameter3146
    #define	RETURN_TYPE_function_parameter3146 MySQLParser_function_parameter_return

    pANTLR3_BASE_TREE set3145_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3145       = NULL;
    function_parameter3146.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3145_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3109:20: ( ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )? function_parameter )
        // MySQL.g:3110:2: ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )? function_parameter
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            // MySQL.g:3110:2: ( IN_SYMBOL | OUT_SYMBOL | INOUT_SYMBOL )?
            {
                int alt909=2;
                switch ( LA(1) )
                {
                    case INOUT_SYMBOL:
                    case IN_SYMBOL:
                    case OUT_SYMBOL:
                    	{
                    		alt909=1;
                    	}
                        break;
                }

                switch (alt909)
                {
            	case 1:
            	    // MySQL.g:
            	    {
            	        set3145=(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, set3145))
            	            );
            	            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_function_parameter_in_procedure_parameter16510);
            function_parameter3146=function_parameter(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, function_parameter3146.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:3113: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 identifier3147;
    #undef	RETURN_TYPE_identifier3147
    #define	RETURN_TYPE_identifier3147 MySQLParser_identifier_return

    MySQLParser_data_type_return data_type3148;
    #undef	RETURN_TYPE_data_type3148
    #define	RETURN_TYPE_data_type3148 MySQLParser_data_type_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3147.tree = NULL;

    data_type3148.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        // MySQL.g:3113:19: ( identifier data_type )
        // MySQL.g:3114:2: identifier data_type
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_function_parameter16519);
            identifier3147=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3147.tree);

            FOLLOWPUSH(FOLLOW_data_type_in_function_parameter16521);
            data_type3148=data_type(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_parameterEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, data_type3148.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 schema_identifier_pair
 * MySQL.g:3117:1: schema_identifier_pair : OPEN_PAR_SYMBOL schema_ref COMMA_SYMBOL schema_ref CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_schema_identifier_pair_return
schema_identifier_pair(pMySQLParser ctx)
{
    MySQLParser_schema_identifier_pair_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3149;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3151;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3153;
    MySQLParser_schema_ref_return schema_ref3150;
    #undef	RETURN_TYPE_schema_ref3150
    #define	RETURN_TYPE_schema_ref3150 MySQLParser_schema_ref_return

    MySQLParser_schema_ref_return schema_ref3152;
    #undef	RETURN_TYPE_schema_ref3152
    #define	RETURN_TYPE_schema_ref3152 MySQLParser_schema_ref_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3149_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3151_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3153_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3149       = NULL;
    COMMA_SYMBOL3151       = NULL;
    CLOSE_PAR_SYMBOL3153       = NULL;
    schema_ref3150.tree = NULL;

    schema_ref3152.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3149_tree   = NULL;
    COMMA_SYMBOL3151_tree   = NULL;
    CLOSE_PAR_SYMBOL3153_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3117:23: ( OPEN_PAR_SYMBOL schema_ref COMMA_SYMBOL schema_ref CLOSE_PAR_SYMBOL )
        // MySQL.g:3118:2: OPEN_PAR_SYMBOL schema_ref COMMA_SYMBOL schema_ref CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3149 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_schema_identifier_pair16530);
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3149_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3149));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3149_tree);
            }

            FOLLOWPUSH(FOLLOW_schema_ref_in_schema_identifier_pair16532);
            schema_ref3150=schema_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref3150.tree);

            COMMA_SYMBOL3151 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_schema_identifier_pair16534);
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COMMA_SYMBOL3151_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3151));
            ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3151_tree);
            }

            FOLLOWPUSH(FOLLOW_schema_ref_in_schema_identifier_pair16536);
            schema_ref3152=schema_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, schema_ref3152.tree);

            CLOSE_PAR_SYMBOL3153 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_schema_identifier_pair16538);
            if  (HASEXCEPTION())
            {
                goto ruleschema_identifier_pairEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3153_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3153));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3153_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleschema_identifier_pairEx; /* Prevent compiler warnings */
    ruleschema_identifier_pairEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end schema_identifier_pair */

/**
 * $ANTLR start view_identifier_list
 * MySQL.g:3121:1: view_identifier_list : view_ref ( COMMA_SYMBOL view_ref )* ;
 */
static MySQLParser_view_identifier_list_return
view_identifier_list(pMySQLParser ctx)
{
    MySQLParser_view_identifier_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3155;
    MySQLParser_view_ref_return view_ref3154;
    #undef	RETURN_TYPE_view_ref3154
    #define	RETURN_TYPE_view_ref3154 MySQLParser_view_ref_return

    MySQLParser_view_ref_return view_ref3156;
    #undef	RETURN_TYPE_view_ref3156
    #define	RETURN_TYPE_view_ref3156 MySQLParser_view_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3155_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3155       = NULL;
    view_ref3154.tree = NULL;

    view_ref3156.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3155_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3121:21: ( view_ref ( COMMA_SYMBOL view_ref )* )
        // MySQL.g:3122:2: view_ref ( COMMA_SYMBOL view_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_view_ref_in_view_identifier_list16547);
            view_ref3154=view_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleview_identifier_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_ref3154.tree);

            // MySQL.g:3122:11: ( COMMA_SYMBOL view_ref )*

            for (;;)
            {
                int alt910=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt910=1;
                	}
                    break;

                }

                switch (alt910)
                {
            	case 1:
            	    // MySQL.g:3122:12: COMMA_SYMBOL view_ref
            	    {
            	        COMMA_SYMBOL3155 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_view_identifier_list16550);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleview_identifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3155_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3155));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3155_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_view_ref_in_view_identifier_list16552);
            	        view_ref3156=view_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleview_identifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, view_ref3156.tree);

            	    }
            	    break;

            	default:
            	    goto loop910;	/* break out of the loop */
            	    break;
                }
            }
            loop910: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleview_identifier_listEx; /* Prevent compiler warnings */
    ruleview_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 view_identifier_list */

/**
 * $ANTLR start field_name_list
 * MySQL.g:3125:1: field_name_list : column_ref ( COMMA_SYMBOL column_ref )* ;
 */
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_SYMBOL3158;
    MySQLParser_column_ref_return column_ref3157;
    #undef	RETURN_TYPE_column_ref3157
    #define	RETURN_TYPE_column_ref3157 MySQLParser_column_ref_return

    MySQLParser_column_ref_return column_ref3159;
    #undef	RETURN_TYPE_column_ref3159
    #define	RETURN_TYPE_column_ref3159 MySQLParser_column_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3158_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3158       = NULL;
    column_ref3157.tree = NULL;

    column_ref3159.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3158_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3125:16: ( column_ref ( COMMA_SYMBOL column_ref )* )
        // MySQL.g:3126:2: column_ref ( COMMA_SYMBOL column_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_column_ref_in_field_name_list16570);
            column_ref3157=column_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefield_name_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref3157.tree);

            // MySQL.g:3126:13: ( COMMA_SYMBOL column_ref )*

            for (;;)
            {
                int alt911=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt911=1;
                	}
                    break;

                }

                switch (alt911)
                {
            	case 1:
            	    // MySQL.g:3126:14: COMMA_SYMBOL column_ref
            	    {
            	        COMMA_SYMBOL3158 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_field_name_list16573);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_name_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3158_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3158));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3158_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_column_ref_in_field_name_list16575);
            	        column_ref3159=column_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefield_name_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref3159.tree);

            	    }
            	    break;

            	default:
            	    goto loop911;	/* break out of the loop */
            	    break;
                }
            }
            loop911: ; /* 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 column_assignment_list_with_default
 * MySQL.g:3129:1: column_assignment_list_with_default : column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )* -> ^( COLUMN_ASSIGNMENT_LIST_TOKEN 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_SYMBOL3161;
    MySQLParser_column_assignment_with_default_return column_assignment_with_default3160;
    #undef	RETURN_TYPE_column_assignment_with_default3160
    #define	RETURN_TYPE_column_assignment_with_default3160 MySQLParser_column_assignment_with_default_return

    MySQLParser_column_assignment_with_default_return column_assignment_with_default3162;
    #undef	RETURN_TYPE_column_assignment_with_default3162
    #define	RETURN_TYPE_column_assignment_with_default3162 MySQLParser_column_assignment_with_default_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3161_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_COMMA_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_column_assignment_with_default;
    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3161       = NULL;
    column_assignment_with_default3160.tree = NULL;

    column_assignment_with_default3162.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3161_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_column_assignment_with_default   = NULL;
    #define CREATE_stream_column_assignment_with_default  if (stream_column_assignment_with_default == NULL) {stream_column_assignment_with_default = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule column_assignment_with_default"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3129:36: ( column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )* -> ^( COLUMN_ASSIGNMENT_LIST_TOKEN column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )* ) )
        // MySQL.g:3130:2: column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )*
        {
            FOLLOWPUSH(FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16586);
            column_assignment_with_default3160=column_assignment_with_default(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignment_list_with_defaultEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_column_assignment_with_default; stream_column_assignment_with_default->add(stream_column_assignment_with_default, column_assignment_with_default3160.tree, NULL); }

            // MySQL.g:3130:33: ( COMMA_SYMBOL column_assignment_with_default )*

            for (;;)
            {
                int alt912=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt912=1;
                	}
                    break;

                }

                switch (alt912)
                {
            	case 1:
            	    // MySQL.g:3130:34: COMMA_SYMBOL column_assignment_with_default
            	    {
            	        COMMA_SYMBOL3161 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_column_assignment_list_with_default16589);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_list_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_COMMA_SYMBOL; stream_COMMA_SYMBOL->add(stream_COMMA_SYMBOL, COMMA_SYMBOL3161, NULL); }


            	        FOLLOWPUSH(FOLLOW_column_assignment_with_default_in_column_assignment_list_with_default16591);
            	        column_assignment_with_default3162=column_assignment_with_default(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_list_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) { CREATE_stream_column_assignment_with_default; stream_column_assignment_with_default->add(stream_column_assignment_with_default, column_assignment_with_default3162.tree, NULL); }

            	    }
            	    break;

            	default:
            	    goto loop912;	/* break out of the loop */
            	    break;
                }
            }
            loop912: ; /* Jump out to here if this rule does not match */


            /* AST REWRITE
             * elements          : column_assignment_with_default, column_assignment_with_default, 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;
            	// 3131:3: -> ^( COLUMN_ASSIGNMENT_LIST_TOKEN column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )* )
            	{
            	    // MySQL.g:3131:6: ^( COLUMN_ASSIGNMENT_LIST_TOKEN column_assignment_with_default ( COMMA_SYMBOL column_assignment_with_default )* )
            	    {
            	        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, COLUMN_ASSIGNMENT_LIST_TOKEN, (pANTLR3_UINT8)"COLUMN_ASSIGNMENT_LIST_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_column_assignment_with_default == NULL ? NULL : stream_column_assignment_with_default->nextTree(stream_column_assignment_with_default));

            	        // MySQL.g:3131:68: ( COMMA_SYMBOL column_assignment_with_default )*
            	        {
            	        	while ( (stream_column_assignment_with_default != NULL && stream_column_assignment_with_default->hasNext(stream_column_assignment_with_default)) || (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_column_assignment_with_default == NULL ? NULL : stream_column_assignment_with_default->nextTree(stream_column_assignment_with_default));

            	        	}
            	        	if (stream_column_assignment_with_default != NULL) stream_column_assignment_with_default->reset(stream_column_assignment_with_default);
            	        	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 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 (stream_COMMA_SYMBOL != NULL) stream_COMMA_SYMBOL->free(stream_COMMA_SYMBOL);
        if (stream_column_assignment_with_default != NULL) stream_column_assignment_with_default->free(stream_column_assignment_with_default);
    }


            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:3134:1: column_assignment_with_default : column_ref 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_OPERATOR3164;
    pANTLR3_COMMON_TOKEN    DEFAULT_SYMBOL3166;
    MySQLParser_column_ref_return column_ref3163;
    #undef	RETURN_TYPE_column_ref3163
    #define	RETURN_TYPE_column_ref3163 MySQLParser_column_ref_return

    MySQLParser_expression_return expression3165;
    #undef	RETURN_TYPE_expression3165
    #define	RETURN_TYPE_expression3165 MySQLParser_expression_return

    pANTLR3_BASE_TREE EQUAL_OPERATOR3164_tree;
    pANTLR3_BASE_TREE DEFAULT_SYMBOL3166_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    EQUAL_OPERATOR3164       = NULL;
    DEFAULT_SYMBOL3166       = NULL;
    column_ref3163.tree = NULL;

    expression3165.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    EQUAL_OPERATOR3164_tree   = NULL;
    DEFAULT_SYMBOL3166_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3134:31: ( column_ref EQUAL_OPERATOR ( expression | DEFAULT_SYMBOL ) )
        // MySQL.g:3135:2: column_ref EQUAL_OPERATOR ( expression | DEFAULT_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_column_ref_in_column_assignment_with_default16619);
            column_ref3163=column_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignment_with_defaultEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, column_ref3163.tree);

            EQUAL_OPERATOR3164 = (pANTLR3_COMMON_TOKEN) MATCHT(EQUAL_OPERATOR, &FOLLOW_EQUAL_OPERATOR_in_column_assignment_with_default16621);
            if  (HASEXCEPTION())
            {
                goto rulecolumn_assignment_with_defaultEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            EQUAL_OPERATOR3164_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, EQUAL_OPERATOR3164));
            ADAPTOR->addChild(ADAPTOR, root_0, EQUAL_OPERATOR3164_tree);
            }

            // MySQL.g:3135:28: ( expression | DEFAULT_SYMBOL )
            {
                int alt913=2;
                {
                    int LA913_0 = LA(1);
                    if ( (((LA913_0 >= ACCOUNT_SYMBOL) && (LA913_0 <= YEAR_SYMBOL)) || ((LA913_0 >= AT_AT_SIGN_SYMBOL) && (LA913_0 <= AT_TEXT_SUFFIX)) || LA913_0 == BACK_TICK_QUOTED_ID || ((LA913_0 >= BINARY_SYMBOL) && (LA913_0 <= BIN_NUMBER)) || LA913_0 == BITWISE_NOT_OPERATOR || ((LA913_0 >= BIT_AND_SYMBOL) && (LA913_0 <= BIT_XOR_SYMBOL)) || ((LA913_0 >= CASE_SYMBOL) && (LA913_0 <= CAST_SYMBOL)) || LA913_0 == CHAR_SYMBOL || ((LA913_0 >= CONVERT_SYMBOL) && (LA913_0 <= COUNT_SYMBOL)) || LA913_0 == CURDATE_SYMBOL || LA913_0 == CURRENT_USER_SYMBOL || LA913_0 == CURTIME_SYMBOL || LA913_0 == DATABASE_SYMBOL || LA913_0 == DATE_ADD_SYMBOL || LA913_0 == DATE_SUB_SYMBOL || LA913_0 == DECIMAL_NUMBER || LA913_0 == DOT_SYMBOL || LA913_0 == DOUBLE_QUOTED_TEXT || LA913_0 == EXISTS_SYMBOL || ((LA913_0 >= EXTRACT_SYMBOL) && (LA913_0 <= FALSE_SYMBOL)) || LA913_0 == FLOAT_NUMBER || LA913_0 == GROUP_CONCAT_SYMBOL || LA913_0 == HEX_NUMBER || ((LA913_0 >= IDENTIFIER) && (LA913_0 <= IF_SYMBOL)) || LA913_0 == INSERT_SYMBOL || LA913_0 == INTERVAL_SYMBOL || LA913_0 == INT_NUMBER || LA913_0 == LEFT_SYMBOL || LA913_0 == LOGICAL_NOT_OPERATOR || LA913_0 == LONG_NUMBER || LA913_0 == MATCH_SYMBOL || LA913_0 == MAX_SYMBOL || LA913_0 == MINUS_OPERATOR || LA913_0 == MIN_SYMBOL || LA913_0 == MOD_SYMBOL || LA913_0 == NCHAR_TEXT || LA913_0 == NOT2_SYMBOL || ((LA913_0 >= NOT_SYMBOL) && (LA913_0 <= NOW_SYMBOL)) || LA913_0 == NULL2_SYMBOL || LA913_0 == NULL_SYMBOL || ((LA913_0 >= OPEN_CURLY_SYMBOL) && (LA913_0 <= OPEN_PAR_SYMBOL)) || LA913_0 == PARAM_MARKER || ((LA913_0 >= PLUS_OPERATOR) && (LA913_0 <= POSITION_SYMBOL)) || ((LA913_0 >= REPEAT_SYMBOL) && (LA913_0 <= REPLACE_SYMBOL)) || LA913_0 == RIGHT_SYMBOL || LA913_0 == SINGLE_QUOTED_TEXT || LA913_0 == STDDEV_SAMP_SYMBOL || LA913_0 == STD_SYMBOL || LA913_0 == SUBSTRING_SYMBOL || ((LA913_0 >= SUM_SYMBOL) && (LA913_0 <= SYSDATE_SYMBOL)) || ((LA913_0 >= TRIM_SYMBOL) && (LA913_0 <= TRUE_SYMBOL)) || LA913_0 == ULONGLONG_NUMBER || LA913_0 == UNDERSCORE_CHARSET || ((LA913_0 >= UTC_DATE_SYMBOL) && (LA913_0 <= UTC_TIME_SYMBOL)) || LA913_0 == VALUES_SYMBOL || LA913_0 == VARIANCE_SYMBOL || LA913_0 == VAR_SAMP_SYMBOL))
                    {
                        alt913=1;
                    }
                    else if ( (LA913_0 == DEFAULT_SYMBOL))
                    {
                        alt913=2;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 913;
                        EXCEPTION->state        = 0;


                        goto rulecolumn_assignment_with_defaultEx;

                    }
                }
                switch (alt913)
                {
            	case 1:
            	    // MySQL.g:3135:29: expression
            	    {
            	        FOLLOWPUSH(FOLLOW_expression_in_column_assignment_with_default16624);
            	        expression3165=expression(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, expression3165.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3135:42: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL3166 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_column_assignment_with_default16628);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_assignment_with_defaultEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL3166_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3166));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3166_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:3138: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_SYMBOL3169;
    pANTLR3_COMMON_TOKEN    BINARY_SYMBOL3170;
    MySQLParser_charset_return charset3167;
    #undef	RETURN_TYPE_charset3167
    #define	RETURN_TYPE_charset3167 MySQLParser_charset_return

    MySQLParser_text_or_identifier_return text_or_identifier3168;
    #undef	RETURN_TYPE_text_or_identifier3168
    #define	RETURN_TYPE_text_or_identifier3168 MySQLParser_text_or_identifier_return

    pANTLR3_BASE_TREE DEFAULT_SYMBOL3169_tree;
    pANTLR3_BASE_TREE BINARY_SYMBOL3170_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DEFAULT_SYMBOL3169       = NULL;
    BINARY_SYMBOL3170       = NULL;
    charset3167.tree = NULL;

    text_or_identifier3168.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DEFAULT_SYMBOL3169_tree   = NULL;
    BINARY_SYMBOL3170_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3138:15: ( charset ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL ) )
        // MySQL.g:3139:2: charset ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL )
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_charset_in_charset_clause16638);
            charset3167=charset(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecharset_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, charset3167.tree);

            // MySQL.g:3139:10: ( text_or_identifier | DEFAULT_SYMBOL | BINARY_SYMBOL )
            {
                int alt914=3;
                {
                    int LA914_0 = LA(1);
                    if ( (((LA914_0 >= ACCOUNT_SYMBOL) && (LA914_0 <= YEAR_SYMBOL)) || LA914_0 == BACK_TICK_QUOTED_ID || LA914_0 == DOUBLE_QUOTED_TEXT || LA914_0 == IDENTIFIER || LA914_0 == SINGLE_QUOTED_TEXT))
                    {
                        alt914=1;
                    }
                    else if ( (LA914_0 == DEFAULT_SYMBOL))
                    {
                        alt914=2;
                    }
                    else if ( (LA914_0 == BINARY_SYMBOL))
                    {
                        alt914=3;
                    }
                    else
                    {
                        if (BACKTRACKING>0)
                        {
                            FAILEDFLAG = ANTLR3_TRUE;
                            return retval;
                        }


                        CONSTRUCTEX();
                        EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                        EXCEPTION->message      = (void *)"";
                        EXCEPTION->decisionNum  = 914;
                        EXCEPTION->state        = 0;


                        goto rulecharset_clauseEx;

                    }
                }
                switch (alt914)
                {
            	case 1:
            	    // MySQL.g:3139:11: text_or_identifier
            	    {
            	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_charset_clause16641);
            	        text_or_identifier3168=text_or_identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier3168.tree);

            	    }
            	    break;
            	case 2:
            	    // MySQL.g:3139:32: DEFAULT_SYMBOL
            	    {
            	        DEFAULT_SYMBOL3169 = (pANTLR3_COMMON_TOKEN) MATCHT(DEFAULT_SYMBOL, &FOLLOW_DEFAULT_SYMBOL_in_charset_clause16645);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DEFAULT_SYMBOL3169_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DEFAULT_SYMBOL3169));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DEFAULT_SYMBOL3169_tree);
            	        }

            	    }
            	    break;
            	case 3:
            	    // MySQL.g:3139:49: BINARY_SYMBOL
            	    {
            	        BINARY_SYMBOL3170 = (pANTLR3_COMMON_TOKEN) MATCHT(BINARY_SYMBOL, &FOLLOW_BINARY_SYMBOL_in_charset_clause16649);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecharset_clauseEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        BINARY_SYMBOL3170_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BINARY_SYMBOL3170));
            	        ADAPTOR->addChild(ADAPTOR, root_0, BINARY_SYMBOL3170_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:3142: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_SYMBOL3171;
    MySQLParser_field_term_return field_term3172;
    #undef	RETURN_TYPE_field_term3172
    #define	RETURN_TYPE_field_term3172 MySQLParser_field_term_return

    pANTLR3_BASE_TREE COLUMNS_SYMBOL3171_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COLUMNS_SYMBOL3171       = NULL;
    field_term3172.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COLUMNS_SYMBOL3171_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3142:14: ( COLUMNS_SYMBOL ( field_term )+ )
        // MySQL.g:3143:2: COLUMNS_SYMBOL ( field_term )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            COLUMNS_SYMBOL3171 = (pANTLR3_COMMON_TOKEN) MATCHT(COLUMNS_SYMBOL, &FOLLOW_COLUMNS_SYMBOL_in_fields_clause16659);
            if  (HASEXCEPTION())
            {
                goto rulefields_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COLUMNS_SYMBOL3171_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COLUMNS_SYMBOL3171));
            ADAPTOR->addChild(ADAPTOR, root_0, COLUMNS_SYMBOL3171_tree);
            }

            // MySQL.g:3143:17: ( field_term )+
            {
                int cnt915=0;

                for (;;)
                {
                    int alt915=2;
            	switch ( LA(1) )
            	{
            	case ENCLOSED_SYMBOL:
            	case ESCAPED_SYMBOL:
            	case OPTIONALLY_SYMBOL:
            	case TERMINATED_SYMBOL:
            		{
            			alt915=1;
            		}
            	    break;

            	}

            	switch (alt915)
            	{
            	    case 1:
            	        // MySQL.g:3143:17: field_term
            	        {
            	            FOLLOWPUSH(FOLLOW_field_term_in_fields_clause16661);
            	            field_term3172=field_term(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulefields_clauseEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, field_term3172.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt915 >= 1 )
            		{
            		    goto loop915;
            		}
            		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;
            	}
            	cnt915++;
                }
                loop915: ;	/* 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:3146:1: field_term : ( TERMINATED_SYMBOL BY_SYMBOL text_string | ( OPTIONALLY_SYMBOL )? ENCLOSED_SYMBOL BY_SYMBOL text_string | ESCAPED_SYMBOL BY_SYMBOL text_string );
 */
static MySQLParser_field_term_return
field_term(pMySQLParser ctx)
{
    MySQLParser_field_term_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    TERMINATED_SYMBOL3173;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3174;
    pANTLR3_COMMON_TOKEN    OPTIONALLY_SYMBOL3176;
    pANTLR3_COMMON_TOKEN    ENCLOSED_SYMBOL3177;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3178;
    pANTLR3_COMMON_TOKEN    ESCAPED_SYMBOL3180;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3181;
    MySQLParser_text_string_return text_string3175;
    #undef	RETURN_TYPE_text_string3175
    #define	RETURN_TYPE_text_string3175 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3179;
    #undef	RETURN_TYPE_text_string3179
    #define	RETURN_TYPE_text_string3179 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3182;
    #undef	RETURN_TYPE_text_string3182
    #define	RETURN_TYPE_text_string3182 MySQLParser_text_string_return

    pANTLR3_BASE_TREE TERMINATED_SYMBOL3173_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3174_tree;
    pANTLR3_BASE_TREE OPTIONALLY_SYMBOL3176_tree;
    pANTLR3_BASE_TREE ENCLOSED_SYMBOL3177_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3178_tree;
    pANTLR3_BASE_TREE ESCAPED_SYMBOL3180_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3181_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    TERMINATED_SYMBOL3173       = NULL;
    BY_SYMBOL3174       = NULL;
    OPTIONALLY_SYMBOL3176       = NULL;
    ENCLOSED_SYMBOL3177       = NULL;
    BY_SYMBOL3178       = NULL;
    ESCAPED_SYMBOL3180       = NULL;
    BY_SYMBOL3181       = NULL;
    text_string3175.tree = NULL;

    text_string3179.tree = NULL;

    text_string3182.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    TERMINATED_SYMBOL3173_tree   = NULL;
    BY_SYMBOL3174_tree   = NULL;
    OPTIONALLY_SYMBOL3176_tree   = NULL;
    ENCLOSED_SYMBOL3177_tree   = NULL;
    BY_SYMBOL3178_tree   = NULL;
    ESCAPED_SYMBOL3180_tree   = NULL;
    BY_SYMBOL3181_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3146:11: ( TERMINATED_SYMBOL BY_SYMBOL text_string | ( OPTIONALLY_SYMBOL )? ENCLOSED_SYMBOL BY_SYMBOL text_string | ESCAPED_SYMBOL BY_SYMBOL text_string )

            ANTLR3_UINT32 alt917;

            alt917=3;

            switch ( LA(1) )
            {
            case TERMINATED_SYMBOL:
            	{
            		alt917=1;
            	}
                break;
            case ENCLOSED_SYMBOL:
            case OPTIONALLY_SYMBOL:
            	{
            		alt917=2;
            	}
                break;
            case ESCAPED_SYMBOL:
            	{
            		alt917=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 917;
                EXCEPTION->state        = 0;


                goto rulefield_termEx;

            }

            switch (alt917)
            {
        	case 1:
        	    // MySQL.g:3147:2: TERMINATED_SYMBOL BY_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TERMINATED_SYMBOL3173 = (pANTLR3_COMMON_TOKEN) MATCHT(TERMINATED_SYMBOL, &FOLLOW_TERMINATED_SYMBOL_in_field_term16671);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TERMINATED_SYMBOL3173_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TERMINATED_SYMBOL3173));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TERMINATED_SYMBOL3173_tree);
        	        }

        	        BY_SYMBOL3174 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term16673);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL3174_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3174));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3174_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_field_term16675);
        	        text_string3175=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3175.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3148:4: ( OPTIONALLY_SYMBOL )? ENCLOSED_SYMBOL BY_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3148:4: ( OPTIONALLY_SYMBOL )?
        	        {
        	            int alt916=2;
        	            switch ( LA(1) )
        	            {
        	                case OPTIONALLY_SYMBOL:
        	                	{
        	                		alt916=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt916)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3148:4: OPTIONALLY_SYMBOL
        	        	    {
        	        	        OPTIONALLY_SYMBOL3176 = (pANTLR3_COMMON_TOKEN) MATCHT(OPTIONALLY_SYMBOL, &FOLLOW_OPTIONALLY_SYMBOL_in_field_term16680);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulefield_termEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        OPTIONALLY_SYMBOL3176_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPTIONALLY_SYMBOL3176));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, OPTIONALLY_SYMBOL3176_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        ENCLOSED_SYMBOL3177 = (pANTLR3_COMMON_TOKEN) MATCHT(ENCLOSED_SYMBOL, &FOLLOW_ENCLOSED_SYMBOL_in_field_term16683);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ENCLOSED_SYMBOL3177_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ENCLOSED_SYMBOL3177));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ENCLOSED_SYMBOL3177_tree);
        	        }

        	        BY_SYMBOL3178 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term16685);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL3178_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3178));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3178_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_field_term16687);
        	        text_string3179=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3179.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3149:4: ESCAPED_SYMBOL BY_SYMBOL text_string
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        ESCAPED_SYMBOL3180 = (pANTLR3_COMMON_TOKEN) MATCHT(ESCAPED_SYMBOL, &FOLLOW_ESCAPED_SYMBOL_in_field_term16692);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        ESCAPED_SYMBOL3180_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, ESCAPED_SYMBOL3180));
        	        ADAPTOR->addChild(ADAPTOR, root_0, ESCAPED_SYMBOL3180_tree);
        	        }

        	        BY_SYMBOL3181 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_field_term16694);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BY_SYMBOL3181_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3181));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3181_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_text_string_in_field_term16696);
        	        text_string3182=text_string(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulefield_termEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3182.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:3152: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_SYMBOL3183;
    MySQLParser_line_term_return line_term3184;
    #undef	RETURN_TYPE_line_term3184
    #define	RETURN_TYPE_line_term3184 MySQLParser_line_term_return

    pANTLR3_BASE_TREE LINES_SYMBOL3183_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LINES_SYMBOL3183       = NULL;
    line_term3184.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LINES_SYMBOL3183_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3152:13: ( LINES_SYMBOL ( line_term )+ )
        // MySQL.g:3153:2: LINES_SYMBOL ( line_term )+
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LINES_SYMBOL3183 = (pANTLR3_COMMON_TOKEN) MATCHT(LINES_SYMBOL, &FOLLOW_LINES_SYMBOL_in_lines_clause16705);
            if  (HASEXCEPTION())
            {
                goto rulelines_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LINES_SYMBOL3183_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LINES_SYMBOL3183));
            ADAPTOR->addChild(ADAPTOR, root_0, LINES_SYMBOL3183_tree);
            }

            // MySQL.g:3153:15: ( line_term )+
            {
                int cnt918=0;

                for (;;)
                {
                    int alt918=2;
            	switch ( LA(1) )
            	{
            	case STARTING_SYMBOL:
            	case TERMINATED_SYMBOL:
            		{
            			alt918=1;
            		}
            	    break;

            	}

            	switch (alt918)
            	{
            	    case 1:
            	        // MySQL.g:3153:15: line_term
            	        {
            	            FOLLOWPUSH(FOLLOW_line_term_in_lines_clause16707);
            	            line_term3184=line_term(ctx);

            	            FOLLOWPOP();
            	            if  (HASEXCEPTION())
            	            {
            	                goto rulelines_clauseEx;
            	            }
            	            if (HASFAILED())
            	            {
            	                return retval;
            	            }

            	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, line_term3184.tree);

            	        }
            	        break;

            	    default:

            		if ( cnt918 >= 1 )
            		{
            		    goto loop918;
            		}
            		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;
            	}
            	cnt918++;
                }
                loop918: ;	/* 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:3156:1: line_term : ( TERMINATED_SYMBOL | STARTING_SYMBOL ) BY_SYMBOL text_string ;
 */
static MySQLParser_line_term_return
line_term(pMySQLParser ctx)
{
    MySQLParser_line_term_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3185;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3186;
    MySQLParser_text_string_return text_string3187;
    #undef	RETURN_TYPE_text_string3187
    #define	RETURN_TYPE_text_string3187 MySQLParser_text_string_return

    pANTLR3_BASE_TREE set3185_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3186_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3185       = NULL;
    BY_SYMBOL3186       = NULL;
    text_string3187.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3185_tree   = NULL;
    BY_SYMBOL3186_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3156:10: ( ( TERMINATED_SYMBOL | STARTING_SYMBOL ) BY_SYMBOL text_string )
        // MySQL.g:3157:2: ( TERMINATED_SYMBOL | STARTING_SYMBOL ) BY_SYMBOL text_string
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3185=(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, set3185))
                );
                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_SYMBOL3186 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_line_term16725);
            if  (HASEXCEPTION())
            {
                goto ruleline_termEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            BY_SYMBOL3186_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3186));
            ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3186_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_in_line_term16727);
            text_string3187=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleline_termEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3187.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:3160: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_SYMBOL3189;
    MySQLParser_user_return user3188;
    #undef	RETURN_TYPE_user3188
    #define	RETURN_TYPE_user3188 MySQLParser_user_return

    MySQLParser_user_return user3190;
    #undef	RETURN_TYPE_user3190
    #define	RETURN_TYPE_user3190 MySQLParser_user_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3189_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3189       = NULL;
    user3188.tree = NULL;

    user3190.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3189_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3160:10: ( user ( COMMA_SYMBOL user )* )
        // MySQL.g:3161:2: user ( COMMA_SYMBOL user )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_user_in_user_list16736);
            user3188=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleuser_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user3188.tree);

            // MySQL.g:3161:7: ( COMMA_SYMBOL user )*

            for (;;)
            {
                int alt919=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt919=1;
                	}
                    break;

                }

                switch (alt919)
                {
            	case 1:
            	    // MySQL.g:3161:8: COMMA_SYMBOL user
            	    {
            	        COMMA_SYMBOL3189 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_user_list16739);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleuser_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3189_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3189));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3189_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_user_in_user_list16741);
            	        user3190=user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleuser_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user3190.tree);

            	    }
            	    break;

            	default:
            	    goto loop919;	/* break out of the loop */
            	    break;
                }
            }
            loop919: ; /* 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 grant_list
 * MySQL.g:3164:1: grant_list : grant_user ( COMMA_SYMBOL grant_user )* ;
 */
static MySQLParser_grant_list_return
grant_list(pMySQLParser ctx)
{
    MySQLParser_grant_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3192;
    MySQLParser_grant_user_return grant_user3191;
    #undef	RETURN_TYPE_grant_user3191
    #define	RETURN_TYPE_grant_user3191 MySQLParser_grant_user_return

    MySQLParser_grant_user_return grant_user3193;
    #undef	RETURN_TYPE_grant_user3193
    #define	RETURN_TYPE_grant_user3193 MySQLParser_grant_user_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3192_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3192       = NULL;
    grant_user3191.tree = NULL;

    grant_user3193.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3192_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3164:11: ( grant_user ( COMMA_SYMBOL grant_user )* )
        // MySQL.g:3165:2: grant_user ( COMMA_SYMBOL grant_user )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_grant_user_in_grant_list16752);
            grant_user3191=grant_user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user3191.tree);

            // MySQL.g:3165:13: ( COMMA_SYMBOL grant_user )*

            for (;;)
            {
                int alt920=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt920=1;
                	}
                    break;

                }

                switch (alt920)
                {
            	case 1:
            	    // MySQL.g:3165:14: COMMA_SYMBOL grant_user
            	    {
            	        COMMA_SYMBOL3192 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_grant_list16755);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3192_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3192));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3192_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_grant_user_in_grant_list16757);
            	        grant_user3193=grant_user(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, grant_user3193.tree);

            	    }
            	    break;

            	default:
            	    goto loop920;	/* break out of the loop */
            	    break;
                }
            }
            loop920: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto rulegrant_listEx; /* Prevent compiler warnings */
    rulegrant_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 grant_list */

/**
 * $ANTLR start grant_user
 * MySQL.g:3168:1: grant_user : user ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? ) )? ;
 */
static MySQLParser_grant_user_return
grant_user(pMySQLParser ctx)
{
    MySQLParser_grant_user_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    IDENTIFIED_SYMBOL3195;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3196;
    pANTLR3_COMMON_TOKEN    PASSWORD_SYMBOL3197;
    pANTLR3_COMMON_TOKEN    WITH_SYMBOL3199;
    pANTLR3_COMMON_TOKEN    AS_SYMBOL3201;
    pANTLR3_COMMON_TOKEN    BY_SYMBOL3202;
    MySQLParser_user_return user3194;
    #undef	RETURN_TYPE_user3194
    #define	RETURN_TYPE_user3194 MySQLParser_user_return

    MySQLParser_text_string_return text_string3198;
    #undef	RETURN_TYPE_text_string3198
    #define	RETURN_TYPE_text_string3198 MySQLParser_text_string_return

    MySQLParser_text_or_identifier_return text_or_identifier3200;
    #undef	RETURN_TYPE_text_or_identifier3200
    #define	RETURN_TYPE_text_or_identifier3200 MySQLParser_text_or_identifier_return

    MySQLParser_text_string_return text_string3203;
    #undef	RETURN_TYPE_text_string3203
    #define	RETURN_TYPE_text_string3203 MySQLParser_text_string_return

    pANTLR3_BASE_TREE IDENTIFIED_SYMBOL3195_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3196_tree;
    pANTLR3_BASE_TREE PASSWORD_SYMBOL3197_tree;
    pANTLR3_BASE_TREE WITH_SYMBOL3199_tree;
    pANTLR3_BASE_TREE AS_SYMBOL3201_tree;
    pANTLR3_BASE_TREE BY_SYMBOL3202_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IDENTIFIED_SYMBOL3195       = NULL;
    BY_SYMBOL3196       = NULL;
    PASSWORD_SYMBOL3197       = NULL;
    WITH_SYMBOL3199       = NULL;
    AS_SYMBOL3201       = NULL;
    BY_SYMBOL3202       = NULL;
    user3194.tree = NULL;

    text_string3198.tree = NULL;

    text_or_identifier3200.tree = NULL;

    text_string3203.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IDENTIFIED_SYMBOL3195_tree   = NULL;
    BY_SYMBOL3196_tree   = NULL;
    PASSWORD_SYMBOL3197_tree   = NULL;
    WITH_SYMBOL3199_tree   = NULL;
    AS_SYMBOL3201_tree   = NULL;
    BY_SYMBOL3202_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3168:11: ( user ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? ) )? )
        // MySQL.g:3169:2: user ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? ) )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_user_in_grant_user16768);
            user3194=user(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulegrant_userEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, user3194.tree);

            // MySQL.g:3170:2: ( IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? ) )?
            {
                int alt925=2;
                switch ( LA(1) )
                {
                    case IDENTIFIED_SYMBOL:
                    	{
                    		alt925=1;
                    	}
                        break;
                }

                switch (alt925)
                {
            	case 1:
            	    // MySQL.g:3171:3: IDENTIFIED_SYMBOL ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? )
            	    {
            	        IDENTIFIED_SYMBOL3195 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIED_SYMBOL, &FOLLOW_IDENTIFIED_SYMBOL_in_grant_user16775);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulegrant_userEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        IDENTIFIED_SYMBOL3195_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIED_SYMBOL3195));
            	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIED_SYMBOL3195_tree);
            	        }

            	        // MySQL.g:3172:3: ( BY_SYMBOL ( PASSWORD_SYMBOL )? text_string |{...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )? )
            	        {
            	            int alt924=2;
            	            switch ( LA(1) )
            	            {
            	            case BY_SYMBOL:
            	            	{
            	            		alt924=1;
            	            	}
            	                break;
            	            case WITH_SYMBOL:
            	            	{
            	            		alt924=2;
            	            	}
            	                break;

            	            default:
            	                if (BACKTRACKING>0)
            	                {
            	                    FAILEDFLAG = ANTLR3_TRUE;
            	                    return retval;
            	                }

            	                CONSTRUCTEX();
            	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                EXCEPTION->message      = (void *)"";
            	                EXCEPTION->decisionNum  = 924;
            	                EXCEPTION->state        = 0;


            	                goto rulegrant_userEx;

            	            }

            	            switch (alt924)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3173:4: BY_SYMBOL ( PASSWORD_SYMBOL )? text_string
            	        	    {
            	        	        BY_SYMBOL3196 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_grant_user16784);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_userEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        BY_SYMBOL3196_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3196));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3196_tree);
            	        	        }

            	        	        // MySQL.g:3173:14: ( PASSWORD_SYMBOL )?
            	        	        {
            	        	            int alt921=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case PASSWORD_SYMBOL:
            	        	                	{
            	        	                		alt921=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt921)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3173:14: PASSWORD_SYMBOL
            	        	        	    {
            	        	        	        PASSWORD_SYMBOL3197 = (pANTLR3_COMMON_TOKEN) MATCHT(PASSWORD_SYMBOL, &FOLLOW_PASSWORD_SYMBOL_in_grant_user16786);
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulegrant_userEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        PASSWORD_SYMBOL3197_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PASSWORD_SYMBOL3197));
            	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PASSWORD_SYMBOL3197_tree);
            	        	        	        }

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_text_string_in_grant_user16789);
            	        	        text_string3198=text_string(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_userEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3198.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3174:6: {...}? WITH_SYMBOL text_or_identifier ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )?
            	        	    {
            	        	        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 *)"grant_user";


            	        	        }

            	        	        WITH_SYMBOL3199 = (pANTLR3_COMMON_TOKEN) MATCHT(WITH_SYMBOL, &FOLLOW_WITH_SYMBOL_in_grant_user16798);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_userEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        WITH_SYMBOL3199_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, WITH_SYMBOL3199));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, WITH_SYMBOL3199_tree);
            	        	        }

            	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_grant_user16800);
            	        	        text_or_identifier3200=text_or_identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulegrant_userEx;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier3200.tree);

            	        	        // MySQL.g:3174:64: ( ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string )?
            	        	        {
            	        	            int alt923=2;
            	        	            switch ( LA(1) )
            	        	            {
            	        	                case AS_SYMBOL:
            	        	                case BY_SYMBOL:
            	        	                	{
            	        	                		alt923=1;
            	        	                	}
            	        	                    break;
            	        	            }

            	        	            switch (alt923)
            	        	            {
            	        	        	case 1:
            	        	        	    // MySQL.g:3175:5: ( AS_SYMBOL |{...}? BY_SYMBOL ) text_string
            	        	        	    {
            	        	        	        // MySQL.g:3175:5: ( AS_SYMBOL |{...}? BY_SYMBOL )
            	        	        	        {
            	        	        	            int alt922=2;
            	        	        	            switch ( LA(1) )
            	        	        	            {
            	        	        	            case AS_SYMBOL:
            	        	        	            	{
            	        	        	            		alt922=1;
            	        	        	            	}
            	        	        	                break;
            	        	        	            case BY_SYMBOL:
            	        	        	            	{
            	        	        	            		alt922=2;
            	        	        	            	}
            	        	        	                break;

            	        	        	            default:
            	        	        	                if (BACKTRACKING>0)
            	        	        	                {
            	        	        	                    FAILEDFLAG = ANTLR3_TRUE;
            	        	        	                    return retval;
            	        	        	                }

            	        	        	                CONSTRUCTEX();
            	        	        	                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	        	        	                EXCEPTION->message      = (void *)"";
            	        	        	                EXCEPTION->decisionNum  = 922;
            	        	        	                EXCEPTION->state        = 0;


            	        	        	                goto rulegrant_userEx;

            	        	        	            }

            	        	        	            switch (alt922)
            	        	        	            {
            	        	        	        	case 1:
            	        	        	        	    // MySQL.g:3175:6: AS_SYMBOL
            	        	        	        	    {
            	        	        	        	        AS_SYMBOL3201 = (pANTLR3_COMMON_TOKEN) MATCHT(AS_SYMBOL, &FOLLOW_AS_SYMBOL_in_grant_user16809);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulegrant_userEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        	        AS_SYMBOL3201_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AS_SYMBOL3201));
            	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AS_SYMBOL3201_tree);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;
            	        	        	        	case 2:
            	        	        	        	    // MySQL.g:3175:18: {...}? BY_SYMBOL
            	        	        	        	    {
            	        	        	        	        if ( !((SERVER_VERSION >= 50706)) )
            	        	        	        	        {
            	        	        	        	            if (BACKTRACKING>0)
            	        	        	        	            {
            	        	        	        	                FAILEDFLAG = ANTLR3_TRUE;
            	        	        	        	                return retval;
            	        	        	        	            }

            	        	        	        	                CONSTRUCTEX();
            	        	        	        	                EXCEPTION->type         = ANTLR3_FAILED_PREDICATE_EXCEPTION;
            	        	        	        	                EXCEPTION->message      = (void *)"SERVER_VERSION >= 50706";
            	        	        	        	                EXCEPTION->ruleName	 = (void *)"grant_user";


            	        	        	        	        }

            	        	        	        	        BY_SYMBOL3202 = (pANTLR3_COMMON_TOKEN) MATCHT(BY_SYMBOL, &FOLLOW_BY_SYMBOL_in_grant_user16815);
            	        	        	        	        if  (HASEXCEPTION())
            	        	        	        	        {
            	        	        	        	            goto rulegrant_userEx;
            	        	        	        	        }
            	        	        	        	        if (HASFAILED())
            	        	        	        	        {
            	        	        	        	            return retval;
            	        	        	        	        }

            	        	        	        	        if ( BACKTRACKING==0 ) {
            	        	        	        	        BY_SYMBOL3202_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BY_SYMBOL3202));
            	        	        	        	        ADAPTOR->addChild(ADAPTOR, root_0, BY_SYMBOL3202_tree);
            	        	        	        	        }

            	        	        	        	    }
            	        	        	        	    break;

            	        	        	            }
            	        	        	        }

            	        	        	        FOLLOWPUSH(FOLLOW_text_string_in_grant_user16818);
            	        	        	        text_string3203=text_string(ctx);

            	        	        	        FOLLOWPOP();
            	        	        	        if  (HASEXCEPTION())
            	        	        	        {
            	        	        	            goto rulegrant_userEx;
            	        	        	        }
            	        	        	        if (HASFAILED())
            	        	        	        {
            	        	        	            return retval;
            	        	        	        }

            	        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3203.tree);

            	        	        	    }
            	        	        	    break;

            	        	            }
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulegrant_userEx; /* Prevent compiler warnings */
    rulegrant_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 grant_user */

/**
 * $ANTLR start user
 * MySQL.g:3180:1: user : ( text_or_identifier ( AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX )? | 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_SYMBOL3205;
    pANTLR3_COMMON_TOKEN    AT_TEXT_SUFFIX3207;
    pANTLR3_COMMON_TOKEN    CURRENT_USER_SYMBOL3208;
    MySQLParser_text_or_identifier_return text_or_identifier3204;
    #undef	RETURN_TYPE_text_or_identifier3204
    #define	RETURN_TYPE_text_or_identifier3204 MySQLParser_text_or_identifier_return

    MySQLParser_text_or_identifier_return text_or_identifier3206;
    #undef	RETURN_TYPE_text_or_identifier3206
    #define	RETURN_TYPE_text_or_identifier3206 MySQLParser_text_or_identifier_return

    MySQLParser_parentheses_return parentheses3209;
    #undef	RETURN_TYPE_parentheses3209
    #define	RETURN_TYPE_parentheses3209 MySQLParser_parentheses_return

    pANTLR3_BASE_TREE AT_SIGN_SYMBOL3205_tree;
    pANTLR3_BASE_TREE AT_TEXT_SUFFIX3207_tree;
    pANTLR3_BASE_TREE CURRENT_USER_SYMBOL3208_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    AT_SIGN_SYMBOL3205       = NULL;
    AT_TEXT_SUFFIX3207       = NULL;
    CURRENT_USER_SYMBOL3208       = NULL;
    text_or_identifier3204.tree = NULL;

    text_or_identifier3206.tree = NULL;

    parentheses3209.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    AT_SIGN_SYMBOL3205_tree   = NULL;
    AT_TEXT_SUFFIX3207_tree   = NULL;
    CURRENT_USER_SYMBOL3208_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3180:5: ( text_or_identifier ( AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX )? | CURRENT_USER_SYMBOL ( parentheses )? )

            ANTLR3_UINT32 alt928;

            alt928=2;

            {
                int LA928_0 = LA(1);
                if ( (((LA928_0 >= ACCOUNT_SYMBOL) && (LA928_0 <= YEAR_SYMBOL)) || LA928_0 == BACK_TICK_QUOTED_ID || LA928_0 == DOUBLE_QUOTED_TEXT || LA928_0 == IDENTIFIER || LA928_0 == SINGLE_QUOTED_TEXT))
                {
                    alt928=1;
                }
                else if ( (LA928_0 == CURRENT_USER_SYMBOL))
                {
                    alt928=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 928;
                    EXCEPTION->state        = 0;


                    goto ruleuserEx;

                }
            }
            switch (alt928)
            {
        	case 1:
        	    // MySQL.g:3181:2: text_or_identifier ( AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_user16837);
        	        text_or_identifier3204=text_or_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleuserEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier3204.tree);

        	        // MySQL.g:3181:21: ( AT_SIGN_SYMBOL text_or_identifier | AT_TEXT_SUFFIX )?
        	        {
        	            int alt926=3;
        	            switch ( LA(1) )
        	            {
        	                case AT_SIGN_SYMBOL:
        	                	{
        	                		alt926=1;
        	                	}
        	                    break;
        	                case AT_TEXT_SUFFIX:
        	                	{
        	                		alt926=2;
        	                	}
        	                    break;
        	            }

        	            switch (alt926)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3181:22: AT_SIGN_SYMBOL text_or_identifier
        	        	    {
        	        	        AT_SIGN_SYMBOL3205 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_SIGN_SYMBOL, &FOLLOW_AT_SIGN_SYMBOL_in_user16840);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AT_SIGN_SYMBOL3205_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_SIGN_SYMBOL3205));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_SIGN_SYMBOL3205_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_text_or_identifier_in_user16842);
        	        	        text_or_identifier3206=text_or_identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_or_identifier3206.tree);

        	        	    }
        	        	    break;
        	        	case 2:
        	        	    // MySQL.g:3181:58: AT_TEXT_SUFFIX
        	        	    {
        	        	        AT_TEXT_SUFFIX3207 = (pANTLR3_COMMON_TOKEN) MATCHT(AT_TEXT_SUFFIX, &FOLLOW_AT_TEXT_SUFFIX_in_user16846);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        AT_TEXT_SUFFIX3207_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, AT_TEXT_SUFFIX3207));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, AT_TEXT_SUFFIX3207_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3182:4: CURRENT_USER_SYMBOL ( parentheses )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CURRENT_USER_SYMBOL3208 = (pANTLR3_COMMON_TOKEN) MATCHT(CURRENT_USER_SYMBOL, &FOLLOW_CURRENT_USER_SYMBOL_in_user16853);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleuserEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CURRENT_USER_SYMBOL3208_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CURRENT_USER_SYMBOL3208));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CURRENT_USER_SYMBOL3208_tree);
        	        }

        	        // MySQL.g:3182:24: ( parentheses )?
        	        {
        	            int alt927=2;
        	            switch ( LA(1) )
        	            {
        	                case OPEN_PAR_SYMBOL:
        	                	{
        	                		alt927=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt927)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3182:24: parentheses
        	        	    {
        	        	        FOLLOWPUSH(FOLLOW_parentheses_in_user16855);
        	        	        parentheses3209=parentheses(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleuserEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, parentheses3209.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:3185:1: like_clause : LIKE_SYMBOL text_string ;
 */
static MySQLParser_like_clause_return
like_clause(pMySQLParser ctx)
{
    MySQLParser_like_clause_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    LIKE_SYMBOL3210;
    MySQLParser_text_string_return text_string3211;
    #undef	RETURN_TYPE_text_string3211
    #define	RETURN_TYPE_text_string3211 MySQLParser_text_string_return

    pANTLR3_BASE_TREE LIKE_SYMBOL3210_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LIKE_SYMBOL3210       = NULL;
    text_string3211.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LIKE_SYMBOL3210_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3185:12: ( LIKE_SYMBOL text_string )
        // MySQL.g:3186:2: LIKE_SYMBOL text_string
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            LIKE_SYMBOL3210 = (pANTLR3_COMMON_TOKEN) MATCHT(LIKE_SYMBOL, &FOLLOW_LIKE_SYMBOL_in_like_clause16865);
            if  (HASEXCEPTION())
            {
                goto rulelike_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            LIKE_SYMBOL3210_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LIKE_SYMBOL3210));
            ADAPTOR->addChild(ADAPTOR, root_0, LIKE_SYMBOL3210_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_in_like_clause16867);
            text_string3211=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelike_clauseEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3211.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:3189: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_clause3212;
    #undef	RETURN_TYPE_like_clause3212
    #define	RETURN_TYPE_like_clause3212 MySQLParser_like_clause_return

    MySQLParser_where_clause_return where_clause3213;
    #undef	RETURN_TYPE_where_clause3213
    #define	RETURN_TYPE_where_clause3213 MySQLParser_where_clause_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    like_clause3212.tree = NULL;

    where_clause3213.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3189:14: ( like_clause | where_clause )

            ANTLR3_UINT32 alt929;

            alt929=2;

            switch ( LA(1) )
            {
            case LIKE_SYMBOL:
            	{
            		alt929=1;
            	}
                break;
            case WHERE_SYMBOL:
            	{
            		alt929=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 929;
                EXCEPTION->state        = 0;


                goto rulelike_or_whereEx;

            }

            switch (alt929)
            {
        	case 1:
        	    // MySQL.g:3190:2: like_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_like_clause_in_like_or_where16876);
        	        like_clause3212=like_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelike_or_whereEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, like_clause3212.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3190:16: where_clause
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_where_clause_in_like_or_where16880);
        	        where_clause3213=where_clause(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulelike_or_whereEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, where_clause3213.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:3193: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    set3214;

    pANTLR3_BASE_TREE set3214_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3214       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3214_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3193:14: ({...}? ( ONLINE_SYMBOL | OFFLINE_SYMBOL ) )
        // MySQL.g:3194: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";


            }

            set3214=(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, set3214))
                );
                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:3197:1: no_write_to_bin_log : ({...}? => LOCAL_SYMBOL | NO_WRITE_TO_BINLOG_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    LOCAL_SYMBOL3215;
    pANTLR3_COMMON_TOKEN    NO_WRITE_TO_BINLOG_SYMBOL3216;

    pANTLR3_BASE_TREE LOCAL_SYMBOL3215_tree;
    pANTLR3_BASE_TREE NO_WRITE_TO_BINLOG_SYMBOL3216_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    LOCAL_SYMBOL3215       = NULL;
    NO_WRITE_TO_BINLOG_SYMBOL3216       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    LOCAL_SYMBOL3215_tree   = NULL;
    NO_WRITE_TO_BINLOG_SYMBOL3216_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3197:20: ({...}? => LOCAL_SYMBOL | NO_WRITE_TO_BINLOG_SYMBOL )

            ANTLR3_UINT32 alt930;

            alt930=2;

            {
                int LA930_0 = LA(1);
                if ( ((LA(1) == LOCAL_SYMBOL)) && (LA930_0 == LOCAL_SYMBOL))
                {
                    alt930=1;
                }
                else if ( (LA930_0 == NO_WRITE_TO_BINLOG_SYMBOL))
                {
                    alt930=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 930;
                    EXCEPTION->state        = 0;


                    goto ruleno_write_to_bin_logEx;

                }
            }
            switch (alt930)
            {
        	case 1:
        	    // MySQL.g:3198:2: {...}? => 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_SYMBOL3215 = (pANTLR3_COMMON_TOKEN) MATCHT(LOCAL_SYMBOL, &FOLLOW_LOCAL_SYMBOL_in_no_write_to_bin_log16910);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleno_write_to_bin_logEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        LOCAL_SYMBOL3215_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, LOCAL_SYMBOL3215));
        	        ADAPTOR->addChild(ADAPTOR, root_0, LOCAL_SYMBOL3215_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3199:4: NO_WRITE_TO_BINLOG_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NO_WRITE_TO_BINLOG_SYMBOL3216 = (pANTLR3_COMMON_TOKEN) MATCHT(NO_WRITE_TO_BINLOG_SYMBOL, &FOLLOW_NO_WRITE_TO_BINLOG_SYMBOL_in_no_write_to_bin_log16916);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleno_write_to_bin_logEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NO_WRITE_TO_BINLOG_SYMBOL3216_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NO_WRITE_TO_BINLOG_SYMBOL3216));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NO_WRITE_TO_BINLOG_SYMBOL3216_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 use_partition
 * MySQL.g:3202:1: use_partition :{...}? => PARTITION_SYMBOL identifier_list_with_parentheses ;
 */
static MySQLParser_use_partition_return
use_partition(pMySQLParser ctx)
{
    MySQLParser_use_partition_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PARTITION_SYMBOL3217;
    MySQLParser_identifier_list_with_parentheses_return identifier_list_with_parentheses3218;
    #undef	RETURN_TYPE_identifier_list_with_parentheses3218
    #define	RETURN_TYPE_identifier_list_with_parentheses3218 MySQLParser_identifier_list_with_parentheses_return

    pANTLR3_BASE_TREE PARTITION_SYMBOL3217_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PARTITION_SYMBOL3217       = NULL;
    identifier_list_with_parentheses3218.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PARTITION_SYMBOL3217_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3202:14: ({...}? => PARTITION_SYMBOL identifier_list_with_parentheses )
        // MySQL.g:3203: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 *)"use_partition";


            }

            PARTITION_SYMBOL3217 = (pANTLR3_COMMON_TOKEN) MATCHT(PARTITION_SYMBOL, &FOLLOW_PARTITION_SYMBOL_in_use_partition16929);
            if  (HASEXCEPTION())
            {
                goto ruleuse_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            PARTITION_SYMBOL3217_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PARTITION_SYMBOL3217));
            ADAPTOR->addChild(ADAPTOR, root_0, PARTITION_SYMBOL3217_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_list_with_parentheses_in_use_partition16931);
            identifier_list_with_parentheses3218=identifier_list_with_parentheses(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleuse_partitionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list_with_parentheses3218.tree);

        }

    }

    // This is where rules clean up and exit
    //
    goto ruleuse_partitionEx; /* Prevent compiler warnings */
    ruleuse_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 use_partition */

/**
 * $ANTLR start column_name
 * MySQL.g:3214:1: column_name : identifier -> ^( COLUMN_NAME_TOKEN identifier ) ;
 */
static MySQLParser_column_name_return
column_name(pMySQLParser ctx)
{
    MySQLParser_column_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3219;
    #undef	RETURN_TYPE_identifier3219
    #define	RETURN_TYPE_identifier3219 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3219.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3214:12: ( identifier -> ^( COLUMN_NAME_TOKEN identifier ) )
        // MySQL.g:3215:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_column_name16948);
            identifier3219=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3219.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3215:13: -> ^( COLUMN_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3215:16: ^( COLUMN_NAME_TOKEN 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, COLUMN_NAME_TOKEN, (pANTLR3_UINT8)"COLUMN_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 rulecolumn_nameEx; /* Prevent compiler warnings */
    rulecolumn_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_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_name */

/**
 * $ANTLR start column_ref
 * MySQL.g:3218:1: column_ref : column_ref_variants -> ^( COLUMN_REF_TOKEN column_ref_variants ) ;
 */
static MySQLParser_column_ref_return
column_ref(pMySQLParser ctx)
{
    MySQLParser_column_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_column_ref_variants_return column_ref_variants3220;
    #undef	RETURN_TYPE_column_ref_variants3220
    #define	RETURN_TYPE_column_ref_variants3220 MySQLParser_column_ref_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_column_ref_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    column_ref_variants3220.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_column_ref_variants   = NULL;
    #define CREATE_stream_column_ref_variants  if (stream_column_ref_variants == NULL) {stream_column_ref_variants = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule column_ref_variants"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3218:11: ( column_ref_variants -> ^( COLUMN_REF_TOKEN column_ref_variants ) )
        // MySQL.g:3219:2: column_ref_variants
        {
            FOLLOWPUSH(FOLLOW_column_ref_variants_in_column_ref16965);
            column_ref_variants3220=column_ref_variants(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_column_ref_variants; stream_column_ref_variants->add(stream_column_ref_variants, column_ref_variants3220.tree, NULL); }

            /* AST REWRITE
             * elements          : column_ref_variants
             * 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;
            	// 3219:22: -> ^( COLUMN_REF_TOKEN column_ref_variants )
            	{
            	    // MySQL.g:3219:25: ^( COLUMN_REF_TOKEN column_ref_variants )
            	    {
            	        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, COLUMN_REF_TOKEN, (pANTLR3_UINT8)"COLUMN_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_column_ref_variants == NULL ? NULL : stream_column_ref_variants->nextTree(stream_column_ref_variants));

            	        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 rulecolumn_refEx; /* Prevent compiler warnings */
    rulecolumn_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 (stream_column_ref_variants != NULL) stream_column_ref_variants->free(stream_column_ref_variants);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_ref */

/**
 * $ANTLR start column_ref_variants
 * MySQL.g:3223:1: column_ref_variants : ( DOT_SYMBOL identifier | qualified_identifier ( options {greedy=true; } : DOT_SYMBOL identifier )? );
 */
static MySQLParser_column_ref_variants_return
column_ref_variants(pMySQLParser ctx)
{
    MySQLParser_column_ref_variants_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3221;
    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3224;
    MySQLParser_identifier_return identifier3222;
    #undef	RETURN_TYPE_identifier3222
    #define	RETURN_TYPE_identifier3222 MySQLParser_identifier_return

    MySQLParser_qualified_identifier_return qualified_identifier3223;
    #undef	RETURN_TYPE_qualified_identifier3223
    #define	RETURN_TYPE_qualified_identifier3223 MySQLParser_qualified_identifier_return

    MySQLParser_identifier_return identifier3225;
    #undef	RETURN_TYPE_identifier3225
    #define	RETURN_TYPE_identifier3225 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3221_tree;
    pANTLR3_BASE_TREE DOT_SYMBOL3224_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3221       = NULL;
    DOT_SYMBOL3224       = NULL;
    identifier3222.tree = NULL;

    qualified_identifier3223.tree = NULL;

    identifier3225.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3221_tree   = NULL;
    DOT_SYMBOL3224_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3223:20: ( DOT_SYMBOL identifier | qualified_identifier ( options {greedy=true; } : DOT_SYMBOL identifier )? )

            ANTLR3_UINT32 alt932;

            alt932=2;

            {
                int LA932_0 = LA(1);
                if ( (LA932_0 == DOT_SYMBOL))
                {
                    alt932=1;
                }
                else if ( (((LA932_0 >= ACCOUNT_SYMBOL) && (LA932_0 <= YEAR_SYMBOL)) || LA932_0 == BACK_TICK_QUOTED_ID || LA932_0 == DOUBLE_QUOTED_TEXT || LA932_0 == IDENTIFIER))
                {
                    alt932=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 932;
                    EXCEPTION->state        = 0;


                    goto rulecolumn_ref_variantsEx;

                }
            }
            switch (alt932)
            {
        	case 1:
        	    // MySQL.g:3224:2: DOT_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DOT_SYMBOL3221 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_column_ref_variants16983);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_ref_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOT_SYMBOL3221_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3221));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3221_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_column_ref_variants16985);
        	        identifier3222=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_ref_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3222.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3225:4: qualified_identifier ( options {greedy=true; } : DOT_SYMBOL identifier )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_column_ref_variants16990);
        	        qualified_identifier3223=qualified_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulecolumn_ref_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier3223.tree);

        	        // MySQL.g:3225:25: ( options {greedy=true; } : DOT_SYMBOL identifier )?
        	        {
        	            int alt931=2;
        	            switch ( LA(1) )
        	            {
        	                case DOT_SYMBOL:
        	                	{
        	                		{
        	                		    int LA931_1 = LA(2);
        	                		    if ( (LA931_1 == IDENTIFIER))
        	                		    {
        	                		        alt931=1;
        	                		    }
        	                		    else if ( (LA931_1 == BACK_TICK_QUOTED_ID))
        	                		    {
        	                		        alt931=1;
        	                		    }
        	                		    else if ( (LA931_1 == DOUBLE_QUOTED_TEXT))
        	                		    {
        	                		        alt931=1;
        	                		    }
        	                		    else if ( (((LA931_1 >= ACTION_SYMBOL) && (LA931_1 <= SHARE_SYMBOL)) || ((LA931_1 >= SLOW_SYMBOL) && (LA931_1 <= YEAR_SYMBOL))))
        	                		    {
        	                		        alt931=1;
        	                		    }
        	                		    else if ( (((LA931_1 >= ACCOUNT_SYMBOL) && (LA931_1 <= XA_SYMBOL)) || LA931_1 == SHUTDOWN_SYMBOL))
        	                		    {
        	                		        alt931=1;
        	                		    }
        	                		}
        	                	}
        	                    break;
        	            }

        	            switch (alt931)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3225:54: DOT_SYMBOL identifier
        	        	    {
        	        	        DOT_SYMBOL3224 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_column_ref_variants17005);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecolumn_ref_variantsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        DOT_SYMBOL3224_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3224));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3224_tree);
        	        	        }

        	        	        FOLLOWPUSH(FOLLOW_identifier_in_column_ref_variants17007);
        	        	        identifier3225=identifier(ctx);

        	        	        FOLLOWPOP();
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulecolumn_ref_variantsEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3225.tree);

        	        	    }
        	        	    break;

        	            }
        	        }

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulecolumn_ref_variantsEx; /* Prevent compiler warnings */
    rulecolumn_ref_variantsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_ref_variants */

/**
 * $ANTLR start column_internal_ref
 * MySQL.g:3228:1: column_internal_ref : column_ref_variants -> ^( COLUMN_INTERNAL_REF_TOKEN column_ref_variants ) ;
 */
static MySQLParser_column_internal_ref_return
column_internal_ref(pMySQLParser ctx)
{
    MySQLParser_column_internal_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_column_ref_variants_return column_ref_variants3226;
    #undef	RETURN_TYPE_column_ref_variants3226
    #define	RETURN_TYPE_column_ref_variants3226 MySQLParser_column_ref_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_column_ref_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    column_ref_variants3226.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_column_ref_variants   = NULL;
    #define CREATE_stream_column_ref_variants  if (stream_column_ref_variants == NULL) {stream_column_ref_variants = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule column_ref_variants"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3228:20: ( column_ref_variants -> ^( COLUMN_INTERNAL_REF_TOKEN column_ref_variants ) )
        // MySQL.g:3229:2: column_ref_variants
        {
            FOLLOWPUSH(FOLLOW_column_ref_variants_in_column_internal_ref17018);
            column_ref_variants3226=column_ref_variants(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_internal_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_column_ref_variants; stream_column_ref_variants->add(stream_column_ref_variants, column_ref_variants3226.tree, NULL); }

            /* AST REWRITE
             * elements          : column_ref_variants
             * 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;
            	// 3229:22: -> ^( COLUMN_INTERNAL_REF_TOKEN column_ref_variants )
            	{
            	    // MySQL.g:3229:25: ^( COLUMN_INTERNAL_REF_TOKEN column_ref_variants )
            	    {
            	        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, COLUMN_INTERNAL_REF_TOKEN, (pANTLR3_UINT8)"COLUMN_INTERNAL_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_column_ref_variants == NULL ? NULL : stream_column_ref_variants->nextTree(stream_column_ref_variants));

            	        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 rulecolumn_internal_refEx; /* Prevent compiler warnings */
    rulecolumn_internal_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 (stream_column_ref_variants != NULL) stream_column_ref_variants->free(stream_column_ref_variants);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_internal_ref */

/**
 * $ANTLR start column_ref_with_wildcard
 * MySQL.g:3232:1: column_ref_with_wildcard : column_ref_with_wildcard2 -> ^( COLUMN_REF_TOKEN column_ref_with_wildcard2 ) ;
 */
static MySQLParser_column_ref_with_wildcard_return
column_ref_with_wildcard(pMySQLParser ctx)
{
    MySQLParser_column_ref_with_wildcard_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_column_ref_with_wildcard2_return column_ref_with_wildcard23227;
    #undef	RETURN_TYPE_column_ref_with_wildcard23227
    #define	RETURN_TYPE_column_ref_with_wildcard23227 MySQLParser_column_ref_with_wildcard2_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_column_ref_with_wildcard2;
    /* Initialize rule variables
     */

    root_0 = NULL;

    column_ref_with_wildcard23227.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_column_ref_with_wildcard2   = NULL;
    #define CREATE_stream_column_ref_with_wildcard2  if (stream_column_ref_with_wildcard2 == NULL) {stream_column_ref_with_wildcard2 = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule column_ref_with_wildcard2"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3232:25: ( column_ref_with_wildcard2 -> ^( COLUMN_REF_TOKEN column_ref_with_wildcard2 ) )
        // MySQL.g:3233:2: column_ref_with_wildcard2
        {
            FOLLOWPUSH(FOLLOW_column_ref_with_wildcard2_in_column_ref_with_wildcard17035);
            column_ref_with_wildcard23227=column_ref_with_wildcard2(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_ref_with_wildcardEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_column_ref_with_wildcard2; stream_column_ref_with_wildcard2->add(stream_column_ref_with_wildcard2, column_ref_with_wildcard23227.tree, NULL); }

            /* AST REWRITE
             * elements          : column_ref_with_wildcard2
             * 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;
            	// 3233:28: -> ^( COLUMN_REF_TOKEN column_ref_with_wildcard2 )
            	{
            	    // MySQL.g:3233:31: ^( COLUMN_REF_TOKEN column_ref_with_wildcard2 )
            	    {
            	        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, COLUMN_REF_TOKEN, (pANTLR3_UINT8)"COLUMN_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_column_ref_with_wildcard2 == NULL ? NULL : stream_column_ref_with_wildcard2->nextTree(stream_column_ref_with_wildcard2));

            	        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 rulecolumn_ref_with_wildcardEx; /* Prevent compiler warnings */
    rulecolumn_ref_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 (stream_column_ref_with_wildcard2 != NULL) stream_column_ref_with_wildcard2->free(stream_column_ref_with_wildcard2);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end column_ref_with_wildcard */

/**
 * $ANTLR start column_ref_with_wildcard2
 * MySQL.g:3238:1: column_ref_with_wildcard2 : qualified_identifier ( DOT_SYMBOL ( identifier | MULT_OPERATOR ) )? ;
 */
static MySQLParser_column_ref_with_wildcard2_return
column_ref_with_wildcard2(pMySQLParser ctx)
{
    MySQLParser_column_ref_with_wildcard2_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3229;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3231;
    MySQLParser_qualified_identifier_return qualified_identifier3228;
    #undef	RETURN_TYPE_qualified_identifier3228
    #define	RETURN_TYPE_qualified_identifier3228 MySQLParser_qualified_identifier_return

    MySQLParser_identifier_return identifier3230;
    #undef	RETURN_TYPE_identifier3230
    #define	RETURN_TYPE_identifier3230 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3229_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3231_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3229       = NULL;
    MULT_OPERATOR3231       = NULL;
    qualified_identifier3228.tree = NULL;

    identifier3230.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3229_tree   = NULL;
    MULT_OPERATOR3231_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3238:26: ( qualified_identifier ( DOT_SYMBOL ( identifier | MULT_OPERATOR ) )? )
        // MySQL.g:3239:2: qualified_identifier ( DOT_SYMBOL ( identifier | MULT_OPERATOR ) )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_qualified_identifier_in_column_ref_with_wildcard217054);
            qualified_identifier3228=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulecolumn_ref_with_wildcard2Ex;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier3228.tree);

            // MySQL.g:3239:23: ( DOT_SYMBOL ( identifier | MULT_OPERATOR ) )?
            {
                int alt934=2;
                switch ( LA(1) )
                {
                    case DOT_SYMBOL:
                    	{
                    		alt934=1;
                    	}
                        break;
                }

                switch (alt934)
                {
            	case 1:
            	    // MySQL.g:3239:24: DOT_SYMBOL ( identifier | MULT_OPERATOR )
            	    {
            	        DOT_SYMBOL3229 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_column_ref_with_wildcard217057);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulecolumn_ref_with_wildcard2Ex;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL3229_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3229));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3229_tree);
            	        }

            	        // MySQL.g:3239:35: ( identifier | MULT_OPERATOR )
            	        {
            	            int alt933=2;
            	            {
            	                int LA933_0 = LA(1);
            	                if ( (((LA933_0 >= ACCOUNT_SYMBOL) && (LA933_0 <= YEAR_SYMBOL)) || LA933_0 == BACK_TICK_QUOTED_ID || LA933_0 == DOUBLE_QUOTED_TEXT || LA933_0 == IDENTIFIER))
            	                {
            	                    alt933=1;
            	                }
            	                else if ( (LA933_0 == MULT_OPERATOR))
            	                {
            	                    alt933=2;
            	                }
            	                else
            	                {
            	                    if (BACKTRACKING>0)
            	                    {
            	                        FAILEDFLAG = ANTLR3_TRUE;
            	                        return retval;
            	                    }


            	                    CONSTRUCTEX();
            	                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            	                    EXCEPTION->message      = (void *)"";
            	                    EXCEPTION->decisionNum  = 933;
            	                    EXCEPTION->state        = 0;


            	                    goto rulecolumn_ref_with_wildcard2Ex;

            	                }
            	            }
            	            switch (alt933)
            	            {
            	        	case 1:
            	        	    // MySQL.g:3239:36: identifier
            	        	    {
            	        	        FOLLOWPUSH(FOLLOW_identifier_in_column_ref_with_wildcard217060);
            	        	        identifier3230=identifier(ctx);

            	        	        FOLLOWPOP();
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_ref_with_wildcard2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3230.tree);

            	        	    }
            	        	    break;
            	        	case 2:
            	        	    // MySQL.g:3239:49: MULT_OPERATOR
            	        	    {
            	        	        MULT_OPERATOR3231 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_column_ref_with_wildcard217064);
            	        	        if  (HASEXCEPTION())
            	        	        {
            	        	            goto rulecolumn_ref_with_wildcard2Ex;
            	        	        }
            	        	        if (HASFAILED())
            	        	        {
            	        	            return retval;
            	        	        }

            	        	        if ( BACKTRACKING==0 ) {
            	        	        MULT_OPERATOR3231_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR3231));
            	        	        ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR3231_tree);
            	        	        }

            	        	    }
            	        	    break;

            	            }
            	        }

            	    }
            	    break;

                }
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto rulecolumn_ref_with_wildcard2Ex; /* Prevent compiler warnings */
    rulecolumn_ref_with_wildcard2Ex: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_ref_with_wildcard2 */

/**
 * $ANTLR start index_name
 * MySQL.g:3242:1: index_name : identifier -> ^( INDEX_NAME_TOKEN identifier ) ;
 */
static MySQLParser_index_name_return
index_name(pMySQLParser ctx)
{
    MySQLParser_index_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3232;
    #undef	RETURN_TYPE_identifier3232
    #define	RETURN_TYPE_identifier3232 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3232.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3242:11: ( identifier -> ^( INDEX_NAME_TOKEN identifier ) )
        // MySQL.g:3243:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_index_name17076);
            identifier3232=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3232.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3243:13: -> ^( INDEX_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3243:16: ^( INDEX_NAME_TOKEN 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, INDEX_NAME_TOKEN, (pANTLR3_UINT8)"INDEX_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruleindex_nameEx; /* Prevent compiler warnings */
    ruleindex_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_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_name */

/**
 * $ANTLR start index_ref
 * MySQL.g:3246:1: index_ref : identifier -> ^( INDEX_REF_TOKEN identifier ) ;
 */
static MySQLParser_index_ref_return
index_ref(pMySQLParser ctx)
{
    MySQLParser_index_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3233;
    #undef	RETURN_TYPE_identifier3233
    #define	RETURN_TYPE_identifier3233 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3233.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3246:10: ( identifier -> ^( INDEX_REF_TOKEN identifier ) )
        // MySQL.g:3247:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_index_ref17093);
            identifier3233=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleindex_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3233.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3247:13: -> ^( INDEX_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3247:16: ^( INDEX_REF_TOKEN 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, INDEX_REF_TOKEN, (pANTLR3_UINT8)"INDEX_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruleindex_refEx; /* Prevent compiler warnings */
    ruleindex_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 (stream_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end index_ref */

/**
 * $ANTLR start table_wild
 * MySQL.g:3250:1: table_wild : qualified_identifier DOT_SYMBOL MULT_OPERATOR ;
 */
static MySQLParser_table_wild_return
table_wild(pMySQLParser ctx)
{
    MySQLParser_table_wild_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3235;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3236;
    MySQLParser_qualified_identifier_return qualified_identifier3234;
    #undef	RETURN_TYPE_qualified_identifier3234
    #define	RETURN_TYPE_qualified_identifier3234 MySQLParser_qualified_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3235_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3236_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3235       = NULL;
    MULT_OPERATOR3236       = NULL;
    qualified_identifier3234.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3235_tree   = NULL;
    MULT_OPERATOR3236_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3250:11: ( qualified_identifier DOT_SYMBOL MULT_OPERATOR )
        // MySQL.g:3251:2: qualified_identifier DOT_SYMBOL MULT_OPERATOR
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_qualified_identifier_in_table_wild17110);
            qualified_identifier3234=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_wildEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier3234.tree);

            DOT_SYMBOL3235 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_wild17112);
            if  (HASEXCEPTION())
            {
                goto ruletable_wildEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            DOT_SYMBOL3235_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3235));
            ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3235_tree);
            }

            MULT_OPERATOR3236 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_table_wild17114);
            if  (HASEXCEPTION())
            {
                goto ruletable_wildEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            MULT_OPERATOR3236_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MULT_OPERATOR3236));
            ADAPTOR->addChild(ADAPTOR, root_0, MULT_OPERATOR3236_tree);
            }

        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_wildEx; /* Prevent compiler warnings */
    ruletable_wildEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_wild */

/**
 * $ANTLR start schema_name
 * MySQL.g:3254:1: schema_name : identifier -> ^( SCHEMA_NAME_TOKEN identifier ) ;
 */
static MySQLParser_schema_name_return
schema_name(pMySQLParser ctx)
{
    MySQLParser_schema_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3237;
    #undef	RETURN_TYPE_identifier3237
    #define	RETURN_TYPE_identifier3237 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3237.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3254:12: ( identifier -> ^( SCHEMA_NAME_TOKEN identifier ) )
        // MySQL.g:3255:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_schema_name17130);
            identifier3237=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleschema_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3237.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3255:13: -> ^( SCHEMA_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3255:16: ^( SCHEMA_NAME_TOKEN 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, SCHEMA_NAME_TOKEN, (pANTLR3_UINT8)"SCHEMA_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruleschema_nameEx; /* Prevent compiler warnings */
    ruleschema_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_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end schema_name */

/**
 * $ANTLR start schema_ref
 * MySQL.g:3258:1: schema_ref : identifier -> ^( SCHEMA_REF_TOKEN identifier ) ;
 */
static MySQLParser_schema_ref_return
schema_ref(pMySQLParser ctx)
{
    MySQLParser_schema_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3238;
    #undef	RETURN_TYPE_identifier3238
    #define	RETURN_TYPE_identifier3238 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3238.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3258:11: ( identifier -> ^( SCHEMA_REF_TOKEN identifier ) )
        // MySQL.g:3259:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_schema_ref17147);
            identifier3238=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleschema_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3238.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3259:13: -> ^( SCHEMA_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3259:16: ^( SCHEMA_REF_TOKEN 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, SCHEMA_REF_TOKEN, (pANTLR3_UINT8)"SCHEMA_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruleschema_refEx; /* Prevent compiler warnings */
    ruleschema_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 (stream_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end schema_ref */

/**
 * $ANTLR start procedure_name
 * MySQL.g:3262:1: procedure_name : qualified_identifier -> ^( PROCEDURE_NAME_TOKEN qualified_identifier ) ;
 */
static MySQLParser_procedure_name_return
procedure_name(pMySQLParser ctx)
{
    MySQLParser_procedure_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3239;
    #undef	RETURN_TYPE_qualified_identifier3239
    #define	RETURN_TYPE_qualified_identifier3239 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3239.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:3262:15: ( qualified_identifier -> ^( PROCEDURE_NAME_TOKEN qualified_identifier ) )
        // MySQL.g:3263:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_procedure_name17164);
            qualified_identifier3239=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3239.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;
            	// 3263:23: -> ^( PROCEDURE_NAME_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3263:26: ^( PROCEDURE_NAME_TOKEN 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, PROCEDURE_NAME_TOKEN, (pANTLR3_UINT8)"PROCEDURE_NAME_TOKEN")
            	        , 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 ruleprocedure_nameEx; /* Prevent compiler warnings */
    ruleprocedure_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_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 procedure_name */

/**
 * $ANTLR start procedure_ref
 * MySQL.g:3266:1: procedure_ref : qualified_identifier -> ^( PROCEDURE_REF_TOKEN qualified_identifier ) ;
 */
static MySQLParser_procedure_ref_return
procedure_ref(pMySQLParser ctx)
{
    MySQLParser_procedure_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3240;
    #undef	RETURN_TYPE_qualified_identifier3240
    #define	RETURN_TYPE_qualified_identifier3240 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3240.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:3266:14: ( qualified_identifier -> ^( PROCEDURE_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3267:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_procedure_ref17181);
            qualified_identifier3240=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleprocedure_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3240.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;
            	// 3267:23: -> ^( PROCEDURE_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3267:26: ^( PROCEDURE_REF_TOKEN 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, PROCEDURE_REF_TOKEN, (pANTLR3_UINT8)"PROCEDURE_REF_TOKEN")
            	        , 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 ruleprocedure_refEx; /* Prevent compiler warnings */
    ruleprocedure_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 (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 procedure_ref */

/**
 * $ANTLR start function_name
 * MySQL.g:3270:1: function_name : qualified_identifier -> ^( FUNCTION_NAME_TOKEN qualified_identifier ) ;
 */
static MySQLParser_function_name_return
function_name(pMySQLParser ctx)
{
    MySQLParser_function_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3241;
    #undef	RETURN_TYPE_qualified_identifier3241
    #define	RETURN_TYPE_qualified_identifier3241 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3241.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:3270:14: ( qualified_identifier -> ^( FUNCTION_NAME_TOKEN qualified_identifier ) )
        // MySQL.g:3271:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_function_name17198);
            qualified_identifier3241=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3241.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;
            	// 3271:23: -> ^( FUNCTION_NAME_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3271:26: ^( FUNCTION_NAME_TOKEN 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, FUNCTION_NAME_TOKEN, (pANTLR3_UINT8)"FUNCTION_NAME_TOKEN")
            	        , 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 rulefunction_nameEx; /* Prevent compiler warnings */
    rulefunction_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_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 function_name */

/**
 * $ANTLR start function_ref
 * MySQL.g:3274:1: function_ref : qualified_identifier -> ^( FUNCTION_REF_TOKEN qualified_identifier ) ;
 */
static MySQLParser_function_ref_return
function_ref(pMySQLParser ctx)
{
    MySQLParser_function_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3242;
    #undef	RETURN_TYPE_qualified_identifier3242
    #define	RETURN_TYPE_qualified_identifier3242 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3242.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:3274:13: ( qualified_identifier -> ^( FUNCTION_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3275:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_function_ref17215);
            qualified_identifier3242=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefunction_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3242.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;
            	// 3275:23: -> ^( FUNCTION_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3275:26: ^( FUNCTION_REF_TOKEN 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, FUNCTION_REF_TOKEN, (pANTLR3_UINT8)"FUNCTION_REF_TOKEN")
            	        , 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 rulefunction_refEx; /* Prevent compiler warnings */
    rulefunction_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 (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 function_ref */

/**
 * $ANTLR start trigger_name
 * MySQL.g:3278:1: trigger_name : qualified_identifier -> ^( TRIGGER_NAME_TOKEN qualified_identifier ) ;
 */
static MySQLParser_trigger_name_return
trigger_name(pMySQLParser ctx)
{
    MySQLParser_trigger_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3243;
    #undef	RETURN_TYPE_qualified_identifier3243
    #define	RETURN_TYPE_qualified_identifier3243 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3243.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:3278:13: ( qualified_identifier -> ^( TRIGGER_NAME_TOKEN qualified_identifier ) )
        // MySQL.g:3279:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_trigger_name17232);
            qualified_identifier3243=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletrigger_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3243.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;
            	// 3279:23: -> ^( TRIGGER_NAME_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3279:26: ^( TRIGGER_NAME_TOKEN 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, TRIGGER_NAME_TOKEN, (pANTLR3_UINT8)"TRIGGER_NAME_TOKEN")
            	        , 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 ruletrigger_nameEx; /* Prevent compiler warnings */
    ruletrigger_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_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 trigger_name */

/**
 * $ANTLR start trigger_ref
 * MySQL.g:3282:1: trigger_ref : qualified_identifier -> ^( TRIGGER_REF_TOKEN qualified_identifier ) ;
 */
static MySQLParser_trigger_ref_return
trigger_ref(pMySQLParser ctx)
{
    MySQLParser_trigger_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3244;
    #undef	RETURN_TYPE_qualified_identifier3244
    #define	RETURN_TYPE_qualified_identifier3244 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3244.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:3282:12: ( qualified_identifier -> ^( TRIGGER_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3283:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_trigger_ref17249);
            qualified_identifier3244=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletrigger_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3244.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;
            	// 3283:23: -> ^( TRIGGER_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3283:26: ^( TRIGGER_REF_TOKEN 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, TRIGGER_REF_TOKEN, (pANTLR3_UINT8)"TRIGGER_REF_TOKEN")
            	        , 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 ruletrigger_refEx; /* Prevent compiler warnings */
    ruletrigger_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 (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 trigger_ref */

/**
 * $ANTLR start view_name
 * MySQL.g:3286:1: view_name : table_name_variants -> ^( VIEW_NAME_TOKEN table_name_variants ) ;
 */
static MySQLParser_view_name_return
view_name(pMySQLParser ctx)
{
    MySQLParser_view_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_table_name_variants_return table_name_variants3245;
    #undef	RETURN_TYPE_table_name_variants3245
    #define	RETURN_TYPE_table_name_variants3245 MySQLParser_table_name_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_name_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    table_name_variants3245.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_table_name_variants   = NULL;
    #define CREATE_stream_table_name_variants  if (stream_table_name_variants == NULL) {stream_table_name_variants = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule table_name_variants"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3286:10: ( table_name_variants -> ^( VIEW_NAME_TOKEN table_name_variants ) )
        // MySQL.g:3287:2: table_name_variants
        {
            FOLLOWPUSH(FOLLOW_table_name_variants_in_view_name17266);
            table_name_variants3245=table_name_variants(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleview_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_table_name_variants; stream_table_name_variants->add(stream_table_name_variants, table_name_variants3245.tree, NULL); }

            /* AST REWRITE
             * elements          : table_name_variants
             * 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;
            	// 3287:22: -> ^( VIEW_NAME_TOKEN table_name_variants )
            	{
            	    // MySQL.g:3287:25: ^( VIEW_NAME_TOKEN table_name_variants )
            	    {
            	        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, VIEW_NAME_TOKEN, (pANTLR3_UINT8)"VIEW_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_table_name_variants == NULL ? NULL : stream_table_name_variants->nextTree(stream_table_name_variants));

            	        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 ruleview_nameEx; /* Prevent compiler warnings */
    ruleview_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_table_name_variants != NULL) stream_table_name_variants->free(stream_table_name_variants);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end view_name */

/**
 * $ANTLR start view_ref
 * MySQL.g:3290:1: view_ref : qualified_identifier -> ^( VIEW_REF_TOKEN qualified_identifier ) ;
 */
static MySQLParser_view_ref_return
view_ref(pMySQLParser ctx)
{
    MySQLParser_view_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3246;
    #undef	RETURN_TYPE_qualified_identifier3246
    #define	RETURN_TYPE_qualified_identifier3246 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3246.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:3290:9: ( qualified_identifier -> ^( VIEW_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3291:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_view_ref17283);
            qualified_identifier3246=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleview_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3246.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;
            	// 3291:23: -> ^( VIEW_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3291:26: ^( VIEW_REF_TOKEN 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, VIEW_REF_TOKEN, (pANTLR3_UINT8)"VIEW_REF_TOKEN")
            	        , 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 ruleview_refEx; /* Prevent compiler warnings */
    ruleview_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 (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 view_ref */

/**
 * $ANTLR start tablespace_name
 * MySQL.g:3294:1: tablespace_name : identifier -> ^( TABLESPACE_NAME_TOKEN identifier ) ;
 */
static MySQLParser_tablespace_name_return
tablespace_name(pMySQLParser ctx)
{
    MySQLParser_tablespace_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3247;
    #undef	RETURN_TYPE_identifier3247
    #define	RETURN_TYPE_identifier3247 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3247.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3294:16: ( identifier -> ^( TABLESPACE_NAME_TOKEN identifier ) )
        // MySQL.g:3295:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_tablespace_name17300);
            identifier3247=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletablespace_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3247.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3295:13: -> ^( TABLESPACE_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3295:16: ^( TABLESPACE_NAME_TOKEN 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, TABLESPACE_NAME_TOKEN, (pANTLR3_UINT8)"TABLESPACE_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruletablespace_nameEx; /* Prevent compiler warnings */
    ruletablespace_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_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end tablespace_name */

/**
 * $ANTLR start tablespace_ref
 * MySQL.g:3298:1: tablespace_ref : identifier -> ^( TABLESPACE_REF_TOKEN identifier ) ;
 */
static MySQLParser_tablespace_ref_return
tablespace_ref(pMySQLParser ctx)
{
    MySQLParser_tablespace_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3248;
    #undef	RETURN_TYPE_identifier3248
    #define	RETURN_TYPE_identifier3248 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3248.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3298:15: ( identifier -> ^( TABLESPACE_REF_TOKEN identifier ) )
        // MySQL.g:3299:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_tablespace_ref17317);
            identifier3248=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletablespace_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3248.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3299:13: -> ^( TABLESPACE_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3299:16: ^( TABLESPACE_REF_TOKEN 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, TABLESPACE_REF_TOKEN, (pANTLR3_UINT8)"TABLESPACE_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruletablespace_refEx; /* Prevent compiler warnings */
    ruletablespace_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 (stream_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end tablespace_ref */

/**
 * $ANTLR start logfile_group_name
 * MySQL.g:3302:1: logfile_group_name : identifier -> ^( LOGFILE_GROUP_NAME_TOKEN identifier ) ;
 */
static MySQLParser_logfile_group_name_return
logfile_group_name(pMySQLParser ctx)
{
    MySQLParser_logfile_group_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3249;
    #undef	RETURN_TYPE_identifier3249
    #define	RETURN_TYPE_identifier3249 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3249.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3302:19: ( identifier -> ^( LOGFILE_GROUP_NAME_TOKEN identifier ) )
        // MySQL.g:3303:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_logfile_group_name17334);
            identifier3249=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelogfile_group_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3249.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3303:13: -> ^( LOGFILE_GROUP_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3303:16: ^( LOGFILE_GROUP_NAME_TOKEN 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, LOGFILE_GROUP_NAME_TOKEN, (pANTLR3_UINT8)"LOGFILE_GROUP_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 rulelogfile_group_nameEx; /* Prevent compiler warnings */
    rulelogfile_group_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_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end logfile_group_name */

/**
 * $ANTLR start logfile_group_ref
 * MySQL.g:3306:1: logfile_group_ref : identifier -> ^( LOGFILE_GROUP_REF_TOKEN identifier ) ;
 */
static MySQLParser_logfile_group_ref_return
logfile_group_ref(pMySQLParser ctx)
{
    MySQLParser_logfile_group_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3250;
    #undef	RETURN_TYPE_identifier3250
    #define	RETURN_TYPE_identifier3250 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3250.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3306:18: ( identifier -> ^( LOGFILE_GROUP_REF_TOKEN identifier ) )
        // MySQL.g:3307:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_logfile_group_ref17351);
            identifier3250=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulelogfile_group_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3250.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3307:13: -> ^( LOGFILE_GROUP_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3307:16: ^( LOGFILE_GROUP_REF_TOKEN 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, LOGFILE_GROUP_REF_TOKEN, (pANTLR3_UINT8)"LOGFILE_GROUP_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 rulelogfile_group_refEx; /* Prevent compiler warnings */
    rulelogfile_group_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 (stream_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end logfile_group_ref */

/**
 * $ANTLR start event_name
 * MySQL.g:3310:1: event_name : qualified_identifier -> ^( EVENT_NAME_TOKEN qualified_identifier ) ;
 */
static MySQLParser_event_name_return
event_name(pMySQLParser ctx)
{
    MySQLParser_event_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3251;
    #undef	RETURN_TYPE_qualified_identifier3251
    #define	RETURN_TYPE_qualified_identifier3251 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3251.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:3310:11: ( qualified_identifier -> ^( EVENT_NAME_TOKEN qualified_identifier ) )
        // MySQL.g:3311:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_event_name17368);
            qualified_identifier3251=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleevent_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3251.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;
            	// 3311:23: -> ^( EVENT_NAME_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3311:26: ^( EVENT_NAME_TOKEN 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, EVENT_NAME_TOKEN, (pANTLR3_UINT8)"EVENT_NAME_TOKEN")
            	        , 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 ruleevent_nameEx; /* Prevent compiler warnings */
    ruleevent_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_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 event_name */

/**
 * $ANTLR start event_ref
 * MySQL.g:3314:1: event_ref : qualified_identifier -> ^( EVENT_REF_TOKEN qualified_identifier ) ;
 */
static MySQLParser_event_ref_return
event_ref(pMySQLParser ctx)
{
    MySQLParser_event_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_qualified_identifier_return qualified_identifier3252;
    #undef	RETURN_TYPE_qualified_identifier3252
    #define	RETURN_TYPE_qualified_identifier3252 MySQLParser_qualified_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    qualified_identifier3252.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:3314:10: ( qualified_identifier -> ^( EVENT_REF_TOKEN qualified_identifier ) )
        // MySQL.g:3315:2: qualified_identifier
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_event_ref17385);
            qualified_identifier3252=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleevent_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3252.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;
            	// 3315:23: -> ^( EVENT_REF_TOKEN qualified_identifier )
            	{
            	    // MySQL.g:3315:26: ^( EVENT_REF_TOKEN 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, EVENT_REF_TOKEN, (pANTLR3_UINT8)"EVENT_REF_TOKEN")
            	        , 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 ruleevent_refEx; /* Prevent compiler warnings */
    ruleevent_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 (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 event_ref */

/**
 * $ANTLR start udf_name
 * MySQL.g:3318:1: udf_name : identifier -> ^( UDF_NAME_TOKEN identifier ) ;
 */
static MySQLParser_udf_name_return
udf_name(pMySQLParser ctx)
{
    MySQLParser_udf_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3253;
    #undef	RETURN_TYPE_identifier3253
    #define	RETURN_TYPE_identifier3253 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3253.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3318:9: ( identifier -> ^( UDF_NAME_TOKEN identifier ) )
        // MySQL.g:3319:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_udf_name17403);
            identifier3253=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleudf_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3253.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3319:13: -> ^( UDF_NAME_TOKEN identifier )
            	{
            	    // MySQL.g:3319:16: ^( UDF_NAME_TOKEN 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, UDF_NAME_TOKEN, (pANTLR3_UINT8)"UDF_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruleudf_nameEx; /* Prevent compiler warnings */
    ruleudf_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_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end udf_name */

/**
 * $ANTLR start server_name
 * MySQL.g:3322:1: server_name : text_or_identifier -> ^( SERVER_NAME_TOKEN text_or_identifier ) ;
 */
static MySQLParser_server_name_return
server_name(pMySQLParser ctx)
{
    MySQLParser_server_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_text_or_identifier_return text_or_identifier3254;
    #undef	RETURN_TYPE_text_or_identifier3254
    #define	RETURN_TYPE_text_or_identifier3254 MySQLParser_text_or_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_or_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    text_or_identifier3254.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_text_or_identifier   = NULL;
    #define CREATE_stream_text_or_identifier  if (stream_text_or_identifier == NULL) {stream_text_or_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule text_or_identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3322:12: ( text_or_identifier -> ^( SERVER_NAME_TOKEN text_or_identifier ) )
        // MySQL.g:3323:2: text_or_identifier
        {
            FOLLOWPUSH(FOLLOW_text_or_identifier_in_server_name17420);
            text_or_identifier3254=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleserver_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_text_or_identifier; stream_text_or_identifier->add(stream_text_or_identifier, text_or_identifier3254.tree, NULL); }

            /* AST REWRITE
             * elements          : text_or_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;
            	// 3323:21: -> ^( SERVER_NAME_TOKEN text_or_identifier )
            	{
            	    // MySQL.g:3323:24: ^( SERVER_NAME_TOKEN text_or_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, SERVER_NAME_TOKEN, (pANTLR3_UINT8)"SERVER_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_text_or_identifier == NULL ? NULL : stream_text_or_identifier->nextTree(stream_text_or_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 ruleserver_nameEx; /* Prevent compiler warnings */
    ruleserver_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_text_or_identifier != NULL) stream_text_or_identifier->free(stream_text_or_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end server_name */

/**
 * $ANTLR start server_ref
 * MySQL.g:3326:1: server_ref : text_or_identifier -> ^( SERVER_REF_TOKEN text_or_identifier ) ;
 */
static MySQLParser_server_ref_return
server_ref(pMySQLParser ctx)
{
    MySQLParser_server_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_text_or_identifier_return text_or_identifier3255;
    #undef	RETURN_TYPE_text_or_identifier3255
    #define	RETURN_TYPE_text_or_identifier3255 MySQLParser_text_or_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_or_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    text_or_identifier3255.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_text_or_identifier   = NULL;
    #define CREATE_stream_text_or_identifier  if (stream_text_or_identifier == NULL) {stream_text_or_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule text_or_identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3326:11: ( text_or_identifier -> ^( SERVER_REF_TOKEN text_or_identifier ) )
        // MySQL.g:3327:2: text_or_identifier
        {
            FOLLOWPUSH(FOLLOW_text_or_identifier_in_server_ref17437);
            text_or_identifier3255=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleserver_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_text_or_identifier; stream_text_or_identifier->add(stream_text_or_identifier, text_or_identifier3255.tree, NULL); }

            /* AST REWRITE
             * elements          : text_or_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;
            	// 3327:21: -> ^( SERVER_REF_TOKEN text_or_identifier )
            	{
            	    // MySQL.g:3327:24: ^( SERVER_REF_TOKEN text_or_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, SERVER_REF_TOKEN, (pANTLR3_UINT8)"SERVER_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_text_or_identifier == NULL ? NULL : stream_text_or_identifier->nextTree(stream_text_or_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 ruleserver_refEx; /* Prevent compiler warnings */
    ruleserver_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 (stream_text_or_identifier != NULL) stream_text_or_identifier->free(stream_text_or_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end server_ref */

/**
 * $ANTLR start engine_ref
 * MySQL.g:3330:1: engine_ref : text_or_identifier -> ^( ENGINE_REF_TOKEN text_or_identifier ) ;
 */
static MySQLParser_engine_ref_return
engine_ref(pMySQLParser ctx)
{
    MySQLParser_engine_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_text_or_identifier_return text_or_identifier3256;
    #undef	RETURN_TYPE_text_or_identifier3256
    #define	RETURN_TYPE_text_or_identifier3256 MySQLParser_text_or_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_or_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    text_or_identifier3256.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_text_or_identifier   = NULL;
    #define CREATE_stream_text_or_identifier  if (stream_text_or_identifier == NULL) {stream_text_or_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule text_or_identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3330:11: ( text_or_identifier -> ^( ENGINE_REF_TOKEN text_or_identifier ) )
        // MySQL.g:3331:2: text_or_identifier
        {
            FOLLOWPUSH(FOLLOW_text_or_identifier_in_engine_ref17454);
            text_or_identifier3256=text_or_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleengine_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_text_or_identifier; stream_text_or_identifier->add(stream_text_or_identifier, text_or_identifier3256.tree, NULL); }

            /* AST REWRITE
             * elements          : text_or_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;
            	// 3331:21: -> ^( ENGINE_REF_TOKEN text_or_identifier )
            	{
            	    // MySQL.g:3331:24: ^( ENGINE_REF_TOKEN text_or_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, ENGINE_REF_TOKEN, (pANTLR3_UINT8)"ENGINE_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_text_or_identifier == NULL ? NULL : stream_text_or_identifier->nextTree(stream_text_or_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 ruleengine_refEx; /* Prevent compiler warnings */
    ruleengine_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 (stream_text_or_identifier != NULL) stream_text_or_identifier->free(stream_text_or_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end engine_ref */

/**
 * $ANTLR start table_name
 * MySQL.g:3334:1: table_name : table_name_variants -> ^( TABLE_NAME_TOKEN table_name_variants ) ;
 */
static MySQLParser_table_name_return
table_name(pMySQLParser ctx)
{
    MySQLParser_table_name_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_table_name_variants_return table_name_variants3257;
    #undef	RETURN_TYPE_table_name_variants3257
    #define	RETURN_TYPE_table_name_variants3257 MySQLParser_table_name_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_name_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    table_name_variants3257.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_table_name_variants   = NULL;
    #define CREATE_stream_table_name_variants  if (stream_table_name_variants == NULL) {stream_table_name_variants = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule table_name_variants"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3334:11: ( table_name_variants -> ^( TABLE_NAME_TOKEN table_name_variants ) )
        // MySQL.g:3335:2: table_name_variants
        {
            FOLLOWPUSH(FOLLOW_table_name_variants_in_table_name17471);
            table_name_variants3257=table_name_variants(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_nameEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_table_name_variants; stream_table_name_variants->add(stream_table_name_variants, table_name_variants3257.tree, NULL); }

            /* AST REWRITE
             * elements          : table_name_variants
             * 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;
            	// 3335:22: -> ^( TABLE_NAME_TOKEN table_name_variants )
            	{
            	    // MySQL.g:3335:25: ^( TABLE_NAME_TOKEN table_name_variants )
            	    {
            	        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_NAME_TOKEN, (pANTLR3_UINT8)"TABLE_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_table_name_variants == NULL ? NULL : stream_table_name_variants->nextTree(stream_table_name_variants));

            	        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_nameEx; /* Prevent compiler warnings */
    ruletable_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_table_name_variants != NULL) stream_table_name_variants->free(stream_table_name_variants);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_name */

/**
 * $ANTLR start filter_table_ref
 * MySQL.g:3338:1: filter_table_ref : identifier DOT_SYMBOL identifier -> ^( TABLE_NAME_TOKEN identifier DOT_SYMBOL identifier ) ;
 */
static MySQLParser_filter_table_ref_return
filter_table_ref(pMySQLParser ctx)
{
    MySQLParser_filter_table_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3259;
    MySQLParser_identifier_return identifier3258;
    #undef	RETURN_TYPE_identifier3258
    #define	RETURN_TYPE_identifier3258 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier3260;
    #undef	RETURN_TYPE_identifier3260
    #define	RETURN_TYPE_identifier3260 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3259_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_DOT_SYMBOL;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3259       = NULL;
    identifier3258.tree = NULL;

    identifier3260.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3259_tree   = NULL;

    stream_DOT_SYMBOL   = NULL;
    #define CREATE_stream_DOT_SYMBOL  if (stream_DOT_SYMBOL == NULL) {stream_DOT_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token DOT_SYMBOL"); } 
    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3338:17: ( identifier DOT_SYMBOL identifier -> ^( TABLE_NAME_TOKEN identifier DOT_SYMBOL identifier ) )
        // MySQL.g:3339:2: identifier DOT_SYMBOL identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_filter_table_ref17489);
            identifier3258=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_table_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3258.tree, NULL); }

            DOT_SYMBOL3259 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_filter_table_ref17491);
            if  (HASEXCEPTION())
            {
                goto rulefilter_table_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }
             
            if ( BACKTRACKING==0 ) { CREATE_stream_DOT_SYMBOL; stream_DOT_SYMBOL->add(stream_DOT_SYMBOL, DOT_SYMBOL3259, NULL); }


            FOLLOWPUSH(FOLLOW_identifier_in_filter_table_ref17493);
            identifier3260=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulefilter_table_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3260.tree, NULL); }

            /* AST REWRITE
             * elements          : DOT_SYMBOL, identifier, 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;
            	// 3339:35: -> ^( TABLE_NAME_TOKEN identifier DOT_SYMBOL identifier )
            	{
            	    // MySQL.g:3339:38: ^( TABLE_NAME_TOKEN identifier DOT_SYMBOL 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_NAME_TOKEN, (pANTLR3_UINT8)"TABLE_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_identifier));

            	        ADAPTOR->addChild(ADAPTOR, root_1, 
            	        stream_DOT_SYMBOL == NULL ? NULL : stream_DOT_SYMBOL->nextNode(stream_DOT_SYMBOL)
            	        );

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 rulefilter_table_refEx; /* Prevent compiler warnings */
    rulefilter_table_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 (stream_DOT_SYMBOL != NULL) stream_DOT_SYMBOL->free(stream_DOT_SYMBOL);
        if (stream_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end filter_table_ref */

/**
 * $ANTLR start table_ref_with_wildcard
 * MySQL.g:3342:1: table_ref_with_wildcard : qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? -> ^( TABLE_NAME_TOKEN qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? ) ;
 */
static MySQLParser_table_ref_with_wildcard_return
table_ref_with_wildcard(pMySQLParser ctx)
{
    MySQLParser_table_ref_with_wildcard_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3262;
    pANTLR3_COMMON_TOKEN    MULT_OPERATOR3263;
    MySQLParser_qualified_identifier_return qualified_identifier3261;
    #undef	RETURN_TYPE_qualified_identifier3261
    #define	RETURN_TYPE_qualified_identifier3261 MySQLParser_qualified_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3262_tree;
    pANTLR3_BASE_TREE MULT_OPERATOR3263_tree;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_DOT_SYMBOL;
    pANTLR3_REWRITE_RULE_TOKEN_STREAM stream_MULT_OPERATOR;
    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_qualified_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3262       = NULL;
    MULT_OPERATOR3263       = NULL;
    qualified_identifier3261.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3262_tree   = NULL;
    MULT_OPERATOR3263_tree   = NULL;

    stream_DOT_SYMBOL   = NULL;
    #define CREATE_stream_DOT_SYMBOL  if (stream_DOT_SYMBOL == NULL) {stream_DOT_SYMBOL = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token DOT_SYMBOL"); } 
    stream_MULT_OPERATOR   = NULL;
    #define CREATE_stream_MULT_OPERATOR  if (stream_MULT_OPERATOR == NULL) {stream_MULT_OPERATOR = antlr3RewriteRuleTOKENStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token MULT_OPERATOR"); } 
    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:3342:24: ( qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? -> ^( TABLE_NAME_TOKEN qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? ) )
        // MySQL.g:3343:2: qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )?
        {
            FOLLOWPUSH(FOLLOW_qualified_identifier_in_table_ref_with_wildcard17514);
            qualified_identifier3261=qualified_identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_ref_with_wildcardEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_qualified_identifier; stream_qualified_identifier->add(stream_qualified_identifier, qualified_identifier3261.tree, NULL); }

            // MySQL.g:3343:23: ( DOT_SYMBOL MULT_OPERATOR )?
            {
                int alt935=2;
                switch ( LA(1) )
                {
                    case DOT_SYMBOL:
                    	{
                    		alt935=1;
                    	}
                        break;
                }

                switch (alt935)
                {
            	case 1:
            	    // MySQL.g:3343:24: DOT_SYMBOL MULT_OPERATOR
            	    {
            	        DOT_SYMBOL3262 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_ref_with_wildcard17517);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_DOT_SYMBOL; stream_DOT_SYMBOL->add(stream_DOT_SYMBOL, DOT_SYMBOL3262, NULL); }


            	        MULT_OPERATOR3263 = (pANTLR3_COMMON_TOKEN) MATCHT(MULT_OPERATOR, &FOLLOW_MULT_OPERATOR_in_table_ref_with_wildcard17519);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }
            	         
            	        if ( BACKTRACKING==0 ) { CREATE_stream_MULT_OPERATOR; stream_MULT_OPERATOR->add(stream_MULT_OPERATOR, MULT_OPERATOR3263, NULL); }


            	    }
            	    break;

                }
            }

            /* AST REWRITE
             * elements          : qualified_identifier, DOT_SYMBOL, MULT_OPERATOR
             * 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;
            	// 3343:51: -> ^( TABLE_NAME_TOKEN qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? )
            	{
            	    // MySQL.g:3343:54: ^( TABLE_NAME_TOKEN qualified_identifier ( DOT_SYMBOL MULT_OPERATOR )? )
            	    {
            	        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_NAME_TOKEN, (pANTLR3_UINT8)"TABLE_NAME_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_qualified_identifier == NULL ? NULL : stream_qualified_identifier->nextTree(stream_qualified_identifier));

            	        // MySQL.g:3343:94: ( DOT_SYMBOL MULT_OPERATOR )?
            	        {
            	        	if ( (stream_DOT_SYMBOL != NULL && stream_DOT_SYMBOL->hasNext(stream_DOT_SYMBOL)) || (stream_MULT_OPERATOR != NULL && stream_MULT_OPERATOR->hasNext(stream_MULT_OPERATOR))  )
            	        	{
            	        		ADAPTOR->addChild(ADAPTOR, root_1, 
            	        		stream_DOT_SYMBOL == NULL ? NULL : stream_DOT_SYMBOL->nextNode(stream_DOT_SYMBOL)
            	        		);

            	        		ADAPTOR->addChild(ADAPTOR, root_1, 
            	        		stream_MULT_OPERATOR == NULL ? NULL : stream_MULT_OPERATOR->nextNode(stream_MULT_OPERATOR)
            	        		);

            	        	}
            	        	if ( stream_DOT_SYMBOL != NULL) stream_DOT_SYMBOL->reset(stream_DOT_SYMBOL);
            	        	if ( stream_MULT_OPERATOR != NULL) stream_MULT_OPERATOR->reset(stream_MULT_OPERATOR);

            	        }

            	        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_ref_with_wildcardEx; /* Prevent compiler warnings */
    ruletable_ref_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 (stream_DOT_SYMBOL != NULL) stream_DOT_SYMBOL->free(stream_DOT_SYMBOL);
        if (stream_MULT_OPERATOR != NULL) stream_MULT_OPERATOR->free(stream_MULT_OPERATOR);
        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 table_ref_with_wildcard */

/**
 * $ANTLR start table_ref
 * MySQL.g:3346:1: table_ref : table_name_variants -> ^( TABLE_REF_TOKEN table_name_variants ) ;
 */
static MySQLParser_table_ref_return
table_ref(pMySQLParser ctx)
{
    MySQLParser_table_ref_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_table_name_variants_return table_name_variants3264;
    #undef	RETURN_TYPE_table_name_variants3264
    #define	RETURN_TYPE_table_name_variants3264 MySQLParser_table_name_variants_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_table_name_variants;
    /* Initialize rule variables
     */

    root_0 = NULL;

    table_name_variants3264.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_table_name_variants   = NULL;
    #define CREATE_stream_table_name_variants  if (stream_table_name_variants == NULL) {stream_table_name_variants = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule table_name_variants"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3346:10: ( table_name_variants -> ^( TABLE_REF_TOKEN table_name_variants ) )
        // MySQL.g:3347:2: table_name_variants
        {
            FOLLOWPUSH(FOLLOW_table_name_variants_in_table_ref17545);
            table_name_variants3264=table_name_variants(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_refEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_table_name_variants; stream_table_name_variants->add(stream_table_name_variants, table_name_variants3264.tree, NULL); }

            /* AST REWRITE
             * elements          : table_name_variants
             * 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;
            	// 3347:22: -> ^( TABLE_REF_TOKEN table_name_variants )
            	{
            	    // MySQL.g:3347:25: ^( TABLE_REF_TOKEN table_name_variants )
            	    {
            	        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_TOKEN, (pANTLR3_UINT8)"TABLE_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_table_name_variants == NULL ? NULL : stream_table_name_variants->nextTree(stream_table_name_variants));

            	        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_refEx; /* Prevent compiler warnings */
    ruletable_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 (stream_table_name_variants != NULL) stream_table_name_variants->free(stream_table_name_variants);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_ref */

/**
 * $ANTLR start table_ref_no_db
 * MySQL.g:3350:1: table_ref_no_db : identifier -> ^( TABLE_REF_TOKEN identifier ) ;
 */
static MySQLParser_table_ref_no_db_return
table_ref_no_db(pMySQLParser ctx)
{
    MySQLParser_table_ref_no_db_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_identifier_return identifier3265;
    #undef	RETURN_TYPE_identifier3265
    #define	RETURN_TYPE_identifier3265 MySQLParser_identifier_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_identifier;
    /* Initialize rule variables
     */

    root_0 = NULL;

    identifier3265.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_identifier   = NULL;
    #define CREATE_stream_identifier  if (stream_identifier == NULL) {stream_identifier = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule identifier"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3350:16: ( identifier -> ^( TABLE_REF_TOKEN identifier ) )
        // MySQL.g:3351:2: identifier
        {
            FOLLOWPUSH(FOLLOW_identifier_in_table_ref_no_db17562);
            identifier3265=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_ref_no_dbEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_identifier; stream_identifier->add(stream_identifier, identifier3265.tree, NULL); }

            /* AST REWRITE
             * elements          : 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;
            	// 3351:13: -> ^( TABLE_REF_TOKEN identifier )
            	{
            	    // MySQL.g:3351:16: ^( TABLE_REF_TOKEN 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_TOKEN, (pANTLR3_UINT8)"TABLE_REF_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_identifier == NULL ? NULL : stream_identifier->nextTree(stream_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 ruletable_ref_no_dbEx; /* Prevent compiler warnings */
    ruletable_ref_no_dbEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	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_identifier != NULL) stream_identifier->free(stream_identifier);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end table_ref_no_db */

/**
 * $ANTLR start table_name_variants
 * MySQL.g:3354:1: table_name_variants : ( qualified_identifier | DOT_SYMBOL identifier );
 */
static MySQLParser_table_name_variants_return
table_name_variants(pMySQLParser ctx)
{
    MySQLParser_table_name_variants_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DOT_SYMBOL3267;
    MySQLParser_qualified_identifier_return qualified_identifier3266;
    #undef	RETURN_TYPE_qualified_identifier3266
    #define	RETURN_TYPE_qualified_identifier3266 MySQLParser_qualified_identifier_return

    MySQLParser_identifier_return identifier3268;
    #undef	RETURN_TYPE_identifier3268
    #define	RETURN_TYPE_identifier3268 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3267_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3267       = NULL;
    qualified_identifier3266.tree = NULL;

    identifier3268.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3267_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3354:20: ( qualified_identifier | DOT_SYMBOL identifier )

            ANTLR3_UINT32 alt936;

            alt936=2;

            {
                int LA936_0 = LA(1);
                if ( (((LA936_0 >= ACCOUNT_SYMBOL) && (LA936_0 <= YEAR_SYMBOL)) || LA936_0 == BACK_TICK_QUOTED_ID || LA936_0 == DOUBLE_QUOTED_TEXT || LA936_0 == IDENTIFIER))
                {
                    alt936=1;
                }
                else if ( (LA936_0 == DOT_SYMBOL))
                {
                    alt936=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 936;
                    EXCEPTION->state        = 0;


                    goto ruletable_name_variantsEx;

                }
            }
            switch (alt936)
            {
        	case 1:
        	    // MySQL.g:3355:2: qualified_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_qualified_identifier_in_table_name_variants17579);
        	        qualified_identifier3266=qualified_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_name_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, qualified_identifier3266.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3356:4: DOT_SYMBOL identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DOT_SYMBOL3267 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_table_name_variants17584);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_name_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOT_SYMBOL3267_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3267));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3267_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_identifier_in_table_name_variants17586);
        	        identifier3268=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletable_name_variantsEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3268.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto ruletable_name_variantsEx; /* Prevent compiler warnings */
    ruletable_name_variantsEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_variants */

/**
 * $ANTLR start table_ref_list
 * MySQL.g:3359:1: table_ref_list : table_ref ( COMMA_SYMBOL table_ref )* ;
 */
static MySQLParser_table_ref_list_return
table_ref_list(pMySQLParser ctx)
{
    MySQLParser_table_ref_list_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3270;
    MySQLParser_table_ref_return table_ref3269;
    #undef	RETURN_TYPE_table_ref3269
    #define	RETURN_TYPE_table_ref3269 MySQLParser_table_ref_return

    MySQLParser_table_ref_return table_ref3271;
    #undef	RETURN_TYPE_table_ref3271
    #define	RETURN_TYPE_table_ref3271 MySQLParser_table_ref_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3270_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3270       = NULL;
    table_ref3269.tree = NULL;

    table_ref3271.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3270_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3359:15: ( table_ref ( COMMA_SYMBOL table_ref )* )
        // MySQL.g:3360:2: table_ref ( COMMA_SYMBOL table_ref )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_ref_in_table_ref_list17595);
            table_ref3269=table_ref(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_ref_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref3269.tree);

            // MySQL.g:3360:12: ( COMMA_SYMBOL table_ref )*

            for (;;)
            {
                int alt937=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt937=1;
                	}
                    break;

                }

                switch (alt937)
                {
            	case 1:
            	    // MySQL.g:3360:13: COMMA_SYMBOL table_ref
            	    {
            	        COMMA_SYMBOL3270 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_table_ref_list17598);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3270_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3270));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3270_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_in_table_ref_list17600);
            	        table_ref3271=table_ref(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref3271.tree);

            	    }
            	    break;

            	default:
            	    goto loop937;	/* break out of the loop */
            	    break;
                }
            }
            loop937: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_ref_listEx; /* Prevent compiler warnings */
    ruletable_ref_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_ref_list */

/**
 * $ANTLR start table_ref_list_with_wildcard
 * MySQL.g:3363:1: table_ref_list_with_wildcard : table_ref_with_wildcard ( COMMA_SYMBOL table_ref_with_wildcard )* ;
 */
static MySQLParser_table_ref_list_with_wildcard_return
table_ref_list_with_wildcard(pMySQLParser ctx)
{
    MySQLParser_table_ref_list_with_wildcard_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3273;
    MySQLParser_table_ref_with_wildcard_return table_ref_with_wildcard3272;
    #undef	RETURN_TYPE_table_ref_with_wildcard3272
    #define	RETURN_TYPE_table_ref_with_wildcard3272 MySQLParser_table_ref_with_wildcard_return

    MySQLParser_table_ref_with_wildcard_return table_ref_with_wildcard3274;
    #undef	RETURN_TYPE_table_ref_with_wildcard3274
    #define	RETURN_TYPE_table_ref_with_wildcard3274 MySQLParser_table_ref_with_wildcard_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3273_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3273       = NULL;
    table_ref_with_wildcard3272.tree = NULL;

    table_ref_with_wildcard3274.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3273_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3363:29: ( table_ref_with_wildcard ( COMMA_SYMBOL table_ref_with_wildcard )* )
        // MySQL.g:3364:2: table_ref_with_wildcard ( COMMA_SYMBOL table_ref_with_wildcard )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17618);
            table_ref_with_wildcard3272=table_ref_with_wildcard(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletable_ref_list_with_wildcardEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_with_wildcard3272.tree);

            // MySQL.g:3364:26: ( COMMA_SYMBOL table_ref_with_wildcard )*

            for (;;)
            {
                int alt938=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt938=1;
                	}
                    break;

                }

                switch (alt938)
                {
            	case 1:
            	    // MySQL.g:3364:27: COMMA_SYMBOL table_ref_with_wildcard
            	    {
            	        COMMA_SYMBOL3273 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_table_ref_list_with_wildcard17621);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_list_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3273_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3273));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3273_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_table_ref_with_wildcard_in_table_ref_list_with_wildcard17623);
            	        table_ref_with_wildcard3274=table_ref_with_wildcard(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruletable_ref_list_with_wildcardEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, table_ref_with_wildcard3274.tree);

            	    }
            	    break;

            	default:
            	    goto loop938;	/* break out of the loop */
            	    break;
                }
            }
            loop938: ; /* Jump out to here if this rule does not match */


        }

    }

    // This is where rules clean up and exit
    //
    goto ruletable_ref_list_with_wildcardEx; /* Prevent compiler warnings */
    ruletable_ref_list_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 table_ref_list_with_wildcard */

/**
 * $ANTLR start pure_identifier
 * MySQL.g:3370: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    IDENTIFIER3275;
    pANTLR3_COMMON_TOKEN    BACK_TICK_QUOTED_ID3276;
    pANTLR3_COMMON_TOKEN    DOUBLE_QUOTED_TEXT3277;

    pANTLR3_BASE_TREE IDENTIFIER3275_tree;
    pANTLR3_BASE_TREE BACK_TICK_QUOTED_ID3276_tree;
    pANTLR3_BASE_TREE DOUBLE_QUOTED_TEXT3277_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    IDENTIFIER3275       = NULL;
    BACK_TICK_QUOTED_ID3276       = NULL;
    DOUBLE_QUOTED_TEXT3277       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    IDENTIFIER3275_tree   = NULL;
    BACK_TICK_QUOTED_ID3276_tree   = NULL;
    DOUBLE_QUOTED_TEXT3277_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3370:16: ( IDENTIFIER | BACK_TICK_QUOTED_ID |{...}? DOUBLE_QUOTED_TEXT )

            ANTLR3_UINT32 alt939;

            alt939=3;

            switch ( LA(1) )
            {
            case IDENTIFIER:
            	{
            		alt939=1;
            	}
                break;
            case BACK_TICK_QUOTED_ID:
            	{
            		alt939=2;
            	}
                break;
            case DOUBLE_QUOTED_TEXT:
            	{
            		alt939=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 939;
                EXCEPTION->state        = 0;


                goto rulepure_identifierEx;

            }

            switch (alt939)
            {
        	case 1:
        	    // MySQL.g:3371:2: IDENTIFIER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        IDENTIFIER3275 = (pANTLR3_COMMON_TOKEN) MATCHT(IDENTIFIER, &FOLLOW_IDENTIFIER_in_pure_identifier17637);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        IDENTIFIER3275_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, IDENTIFIER3275));
        	        ADAPTOR->addChild(ADAPTOR, root_0, IDENTIFIER3275_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3372:4: BACK_TICK_QUOTED_ID
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        BACK_TICK_QUOTED_ID3276 = (pANTLR3_COMMON_TOKEN) MATCHT(BACK_TICK_QUOTED_ID, &FOLLOW_BACK_TICK_QUOTED_ID_in_pure_identifier17642);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BACK_TICK_QUOTED_ID3276_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BACK_TICK_QUOTED_ID3276));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BACK_TICK_QUOTED_ID3276_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3373: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_TEXT3277 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_QUOTED_TEXT, &FOLLOW_DOUBLE_QUOTED_TEXT_in_pure_identifier17649);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulepure_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOUBLE_QUOTED_TEXT3277_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_QUOTED_TEXT3277));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_QUOTED_TEXT3277_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:3377: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_identifier3278;
    #undef	RETURN_TYPE_pure_identifier3278
    #define	RETURN_TYPE_pure_identifier3278 MySQLParser_pure_identifier_return

    MySQLParser_keyword_return keyword3279;
    #undef	RETURN_TYPE_keyword3279
    #define	RETURN_TYPE_keyword3279 MySQLParser_keyword_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    pure_identifier3278.tree = NULL;

    keyword3279.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3377:11: ( pure_identifier | keyword )

            ANTLR3_UINT32 alt940;

            alt940=2;

            {
                int LA940_0 = LA(1);
                if ( (LA940_0 == BACK_TICK_QUOTED_ID || LA940_0 == DOUBLE_QUOTED_TEXT || LA940_0 == IDENTIFIER))
                {
                    alt940=1;
                }
                else if ( (((LA940_0 >= ACCOUNT_SYMBOL) && (LA940_0 <= YEAR_SYMBOL))))
                {
                    alt940=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 940;
                    EXCEPTION->state        = 0;


                    goto ruleidentifierEx;

                }
            }
            switch (alt940)
            {
        	case 1:
        	    // MySQL.g:3378:2: pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_identifier17659);
        	        pure_identifier3278=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleidentifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier3278.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3379:4: keyword
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_in_identifier17664);
        	        keyword3279=keyword(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleidentifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword3279.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:3382: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_SYMBOL3281;
    MySQLParser_identifier_return identifier3280;
    #undef	RETURN_TYPE_identifier3280
    #define	RETURN_TYPE_identifier3280 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier3282;
    #undef	RETURN_TYPE_identifier3282
    #define	RETURN_TYPE_identifier3282 MySQLParser_identifier_return

    pANTLR3_BASE_TREE COMMA_SYMBOL3281_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    COMMA_SYMBOL3281       = NULL;
    identifier3280.tree = NULL;

    identifier3282.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    COMMA_SYMBOL3281_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3382:16: ( identifier ( options {greedy=true; } : COMMA_SYMBOL identifier )* )
        // MySQL.g:3383:2: identifier ( options {greedy=true; } : COMMA_SYMBOL identifier )*
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_identifier_list17673);
            identifier3280=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3280.tree);

            // MySQL.g:3383:13: ( options {greedy=true; } : COMMA_SYMBOL identifier )*

            for (;;)
            {
                int alt941=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt941=1;
                	}
                    break;

                }

                switch (alt941)
                {
            	case 1:
            	    // MySQL.g:3383:43: COMMA_SYMBOL identifier
            	    {
            	        COMMA_SYMBOL3281 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_identifier_list17689);
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleidentifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3281_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3281));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3281_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_identifier_list17691);
            	        identifier3282=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto ruleidentifier_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3282.tree);

            	    }
            	    break;

            	default:
            	    goto loop941;	/* break out of the loop */
            	    break;
                }
            }
            loop941: ; /* 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:3386: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_SYMBOL3283;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3285;
    MySQLParser_identifier_list_return identifier_list3284;
    #undef	RETURN_TYPE_identifier_list3284
    #define	RETURN_TYPE_identifier_list3284 MySQLParser_identifier_list_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3283_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3285_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3283       = NULL;
    CLOSE_PAR_SYMBOL3285       = NULL;
    identifier_list3284.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3283_tree   = NULL;
    CLOSE_PAR_SYMBOL3285_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3386:33: ( OPEN_PAR_SYMBOL identifier_list CLOSE_PAR_SYMBOL )
        // MySQL.g:3387:2: OPEN_PAR_SYMBOL identifier_list CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3283 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_identifier_list_with_parentheses17702);
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3283_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3283));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3283_tree);
            }

            FOLLOWPUSH(FOLLOW_identifier_list_in_identifier_list_with_parentheses17704);
            identifier_list3284=identifier_list(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier_list3284.tree);

            CLOSE_PAR_SYMBOL3285 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_identifier_list_with_parentheses17706);
            if  (HASEXCEPTION())
            {
                goto ruleidentifier_list_with_parenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3285_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3285));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3285_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 qualified_identifier
 * MySQL.g:3390:1: qualified_identifier : identifier ( options {greedy=true; } : 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_SYMBOL3287;
    MySQLParser_identifier_return identifier3286;
    #undef	RETURN_TYPE_identifier3286
    #define	RETURN_TYPE_identifier3286 MySQLParser_identifier_return

    MySQLParser_identifier_return identifier3288;
    #undef	RETURN_TYPE_identifier3288
    #define	RETURN_TYPE_identifier3288 MySQLParser_identifier_return

    pANTLR3_BASE_TREE DOT_SYMBOL3287_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DOT_SYMBOL3287       = NULL;
    identifier3286.tree = NULL;

    identifier3288.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DOT_SYMBOL3287_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3390:21: ( identifier ( options {greedy=true; } : DOT_SYMBOL identifier )? )
        // MySQL.g:3391:2: identifier ( options {greedy=true; } : DOT_SYMBOL identifier )?
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            FOLLOWPUSH(FOLLOW_identifier_in_qualified_identifier17715);
            identifier3286=identifier(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulequalified_identifierEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3286.tree);

            // MySQL.g:3391:13: ( options {greedy=true; } : DOT_SYMBOL identifier )?
            {
                int alt942=2;
                switch ( LA(1) )
                {
                    case DOT_SYMBOL:
                    	{
                    		{
                    		    int LA942_1 = LA(2);
                    		    if ( (LA942_1 == IDENTIFIER))
                    		    {
                    		        alt942=1;
                    		    }
                    		    else if ( (LA942_1 == BACK_TICK_QUOTED_ID))
                    		    {
                    		        alt942=1;
                    		    }
                    		    else if ( (LA942_1 == DOUBLE_QUOTED_TEXT))
                    		    {
                    		        alt942=1;
                    		    }
                    		    else if ( (((LA942_1 >= ACTION_SYMBOL) && (LA942_1 <= SHARE_SYMBOL)) || ((LA942_1 >= SLOW_SYMBOL) && (LA942_1 <= YEAR_SYMBOL))))
                    		    {
                    		        alt942=1;
                    		    }
                    		    else if ( (((LA942_1 >= ACCOUNT_SYMBOL) && (LA942_1 <= XA_SYMBOL)) || LA942_1 == SHUTDOWN_SYMBOL))
                    		    {
                    		        alt942=1;
                    		    }
                    		}
                    	}
                        break;
                }

                switch (alt942)
                {
            	case 1:
            	    // MySQL.g:3391:43: DOT_SYMBOL identifier
            	    {
            	        DOT_SYMBOL3287 = (pANTLR3_COMMON_TOKEN) MATCHT(DOT_SYMBOL, &FOLLOW_DOT_SYMBOL_in_qualified_identifier17731);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifierEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        DOT_SYMBOL3287_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOT_SYMBOL3287));
            	        ADAPTOR->addChild(ADAPTOR, root_0, DOT_SYMBOL3287_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_identifier_in_qualified_identifier17733);
            	        identifier3288=identifier(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulequalified_identifierEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3288.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 ulong_number
 * MySQL.g:3394:1: ulong_number : ( INT_NUMBER | HEX_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER );
 */
static MySQLParser_ulong_number_return
ulong_number(pMySQLParser ctx)
{
    MySQLParser_ulong_number_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3289;

    pANTLR3_BASE_TREE set3289_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3289       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3289_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3394:13: ( INT_NUMBER | HEX_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3289=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == DECIMAL_NUMBER || LA(1) == FLOAT_NUMBER || LA(1) == HEX_NUMBER || LA(1) == INT_NUMBER || LA(1) == LONG_NUMBER || LA(1) == ULONGLONG_NUMBER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3289))
                );
                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 ruleulong_numberEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleulong_numberEx; /* Prevent compiler warnings */
    ruleulong_numberEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end ulong_number */

/**
 * $ANTLR start real_ulong_number
 * MySQL.g:3403:1: real_ulong_number : ( INT_NUMBER | HEX_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER );
 */
static MySQLParser_real_ulong_number_return
real_ulong_number(pMySQLParser ctx)
{
    MySQLParser_real_ulong_number_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3290;

    pANTLR3_BASE_TREE set3290_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3290       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3290_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3403:18: ( INT_NUMBER | HEX_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3290=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == HEX_NUMBER || LA(1) == INT_NUMBER || LA(1) == LONG_NUMBER || LA(1) == ULONGLONG_NUMBER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3290))
                );
                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 rulereal_ulong_numberEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulereal_ulong_numberEx; /* Prevent compiler warnings */
    rulereal_ulong_numberEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_ulong_number */

/**
 * $ANTLR start ulonglong_number
 * MySQL.g:3410:1: ulonglong_number : ( INT_NUMBER | ULONGLONG_NUMBER | LONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER );
 */
static MySQLParser_ulonglong_number_return
ulonglong_number(pMySQLParser ctx)
{
    MySQLParser_ulonglong_number_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3291;

    pANTLR3_BASE_TREE set3291_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3291       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3291_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3410:17: ( INT_NUMBER | ULONGLONG_NUMBER | LONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3291=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == DECIMAL_NUMBER || LA(1) == FLOAT_NUMBER || LA(1) == INT_NUMBER || LA(1) == LONG_NUMBER || LA(1) == ULONGLONG_NUMBER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3291))
                );
                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 ruleulonglong_numberEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruleulonglong_numberEx; /* Prevent compiler warnings */
    ruleulonglong_numberEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end ulonglong_number */

/**
 * $ANTLR start real_ulonglong_number
 * MySQL.g:3418:1: real_ulonglong_number : ( INT_NUMBER | ULONGLONG_NUMBER | LONG_NUMBER );
 */
static MySQLParser_real_ulonglong_number_return
real_ulonglong_number(pMySQLParser ctx)
{
    MySQLParser_real_ulonglong_number_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3292;

    pANTLR3_BASE_TREE set3292_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3292       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3292_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3418:22: ( INT_NUMBER | ULONGLONG_NUMBER | LONG_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3292=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == INT_NUMBER || LA(1) == LONG_NUMBER || LA(1) == ULONGLONG_NUMBER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3292))
                );
                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 rulereal_ulonglong_numberEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulereal_ulonglong_numberEx; /* Prevent compiler warnings */
    rulereal_ulonglong_numberEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_ulonglong_number */

/**
 * $ANTLR start string_list
 * MySQL.g:3424:1: string_list : OPEN_PAR_SYMBOL text_string ( COMMA_SYMBOL text_string )* 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_SYMBOL3293;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3295;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3297;
    MySQLParser_text_string_return text_string3294;
    #undef	RETURN_TYPE_text_string3294
    #define	RETURN_TYPE_text_string3294 MySQLParser_text_string_return

    MySQLParser_text_string_return text_string3296;
    #undef	RETURN_TYPE_text_string3296
    #define	RETURN_TYPE_text_string3296 MySQLParser_text_string_return

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3293_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3295_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3297_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3293       = NULL;
    COMMA_SYMBOL3295       = NULL;
    CLOSE_PAR_SYMBOL3297       = NULL;
    text_string3294.tree = NULL;

    text_string3296.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3293_tree   = NULL;
    COMMA_SYMBOL3295_tree   = NULL;
    CLOSE_PAR_SYMBOL3297_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3424:12: ( OPEN_PAR_SYMBOL text_string ( COMMA_SYMBOL text_string )* CLOSE_PAR_SYMBOL )
        // MySQL.g:3425:2: OPEN_PAR_SYMBOL text_string ( COMMA_SYMBOL text_string )* CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3293 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_string_list17850);
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3293_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3293));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3293_tree);
            }

            FOLLOWPUSH(FOLLOW_text_string_in_string_list17852);
            text_string3294=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3294.tree);

            // MySQL.g:3425:30: ( COMMA_SYMBOL text_string )*

            for (;;)
            {
                int alt943=2;
                switch ( LA(1) )
                {
                case COMMA_SYMBOL:
                	{
                		alt943=1;
                	}
                    break;

                }

                switch (alt943)
                {
            	case 1:
            	    // MySQL.g:3425:31: COMMA_SYMBOL text_string
            	    {
            	        COMMA_SYMBOL3295 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_string_list17855);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestring_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3295_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3295));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3295_tree);
            	        }

            	        FOLLOWPUSH(FOLLOW_text_string_in_string_list17857);
            	        text_string3296=text_string(ctx);

            	        FOLLOWPOP();
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulestring_listEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, text_string3296.tree);

            	    }
            	    break;

            	default:
            	    goto loop943;	/* break out of the loop */
            	    break;
                }
            }
            loop943: ; /* Jump out to here if this rule does not match */


            CLOSE_PAR_SYMBOL3297 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_string_list17861);
            if  (HASEXCEPTION())
            {
                goto rulestring_listEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3297_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3297));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3297_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 text_string
 * MySQL.g:3428:1: text_string : ( SINGLE_QUOTED_TEXT | HEX_NUMBER | BIN_NUMBER );
 */
static MySQLParser_text_string_return
text_string(pMySQLParser ctx)
{
    MySQLParser_text_string_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3298;

    pANTLR3_BASE_TREE set3298_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3298       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3298_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3428:12: ( SINGLE_QUOTED_TEXT | HEX_NUMBER | BIN_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3298=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == BIN_NUMBER || LA(1) == HEX_NUMBER || LA(1) == SINGLE_QUOTED_TEXT )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3298))
                );
                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 ruletext_stringEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto ruletext_stringEx; /* Prevent compiler warnings */
    ruletext_stringEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, 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_string */

/**
 * $ANTLR start text_string_no_linebreak
 * MySQL.g:3436:1: text_string_no_linebreak : text_string -> ^( STRING_NO_LINEBREAK_TOKEN text_string ) ;
 */
static MySQLParser_text_string_no_linebreak_return
text_string_no_linebreak(pMySQLParser ctx)
{
    MySQLParser_text_string_no_linebreak_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_text_string_return text_string3299;
    #undef	RETURN_TYPE_text_string3299
    #define	RETURN_TYPE_text_string3299 MySQLParser_text_string_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_text_string;
    /* Initialize rule variables
     */

    root_0 = NULL;

    text_string3299.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;



    stream_text_string   = NULL;
    #define CREATE_stream_text_string  if (stream_text_string == NULL) {stream_text_string = antlr3RewriteRuleSubtreeStreamNewAE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"rule text_string"); }

    retval.tree  = NULL;

    {
        // MySQL.g:3436:25: ( text_string -> ^( STRING_NO_LINEBREAK_TOKEN text_string ) )
        // MySQL.g:3437:2: text_string
        {
            FOLLOWPUSH(FOLLOW_text_string_in_text_string_no_linebreak17891);
            text_string3299=text_string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto ruletext_string_no_linebreakEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_text_string; stream_text_string->add(stream_text_string, text_string3299.tree, NULL); }

            /* AST REWRITE
             * elements          : text_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;
            	// 3437:14: -> ^( STRING_NO_LINEBREAK_TOKEN text_string )
            	{
            	    // MySQL.g:3437:17: ^( STRING_NO_LINEBREAK_TOKEN text_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_NO_LINEBREAK_TOKEN, (pANTLR3_UINT8)"STRING_NO_LINEBREAK_TOKEN")
            	        , root_1));

            	        ADAPTOR->addChild(ADAPTOR, root_1, stream_text_string == NULL ? NULL : stream_text_string->nextTree(stream_text_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 ruletext_string_no_linebreakEx; /* Prevent compiler warnings */
    ruletext_string_no_linebreakEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	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_text_string != NULL) stream_text_string->free(stream_text_string);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end text_string_no_linebreak */

/**
 * $ANTLR start literal
 * MySQL.g:3440:1: literal : ( string_literal | num_literal |{...}? temporal_literal | null_literal | bool_literal | ( UNDERSCORE_CHARSET )? HEX_NUMBER |{...}? ( UNDERSCORE_CHARSET )? BIN_NUMBER );
 */
static MySQLParser_literal_return
literal(pMySQLParser ctx)
{
    MySQLParser_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    UNDERSCORE_CHARSET3305;
    pANTLR3_COMMON_TOKEN    HEX_NUMBER3306;
    pANTLR3_COMMON_TOKEN    UNDERSCORE_CHARSET3307;
    pANTLR3_COMMON_TOKEN    BIN_NUMBER3308;
    MySQLParser_string_literal_return string_literal3300;
    #undef	RETURN_TYPE_string_literal3300
    #define	RETURN_TYPE_string_literal3300 MySQLParser_string_literal_return

    MySQLParser_num_literal_return num_literal3301;
    #undef	RETURN_TYPE_num_literal3301
    #define	RETURN_TYPE_num_literal3301 MySQLParser_num_literal_return

    MySQLParser_temporal_literal_return temporal_literal3302;
    #undef	RETURN_TYPE_temporal_literal3302
    #define	RETURN_TYPE_temporal_literal3302 MySQLParser_temporal_literal_return

    MySQLParser_null_literal_return null_literal3303;
    #undef	RETURN_TYPE_null_literal3303
    #define	RETURN_TYPE_null_literal3303 MySQLParser_null_literal_return

    MySQLParser_bool_literal_return bool_literal3304;
    #undef	RETURN_TYPE_bool_literal3304
    #define	RETURN_TYPE_bool_literal3304 MySQLParser_bool_literal_return

    pANTLR3_BASE_TREE UNDERSCORE_CHARSET3305_tree;
    pANTLR3_BASE_TREE HEX_NUMBER3306_tree;
    pANTLR3_BASE_TREE UNDERSCORE_CHARSET3307_tree;
    pANTLR3_BASE_TREE BIN_NUMBER3308_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    UNDERSCORE_CHARSET3305       = NULL;
    HEX_NUMBER3306       = NULL;
    UNDERSCORE_CHARSET3307       = NULL;
    BIN_NUMBER3308       = NULL;
    string_literal3300.tree = NULL;

    num_literal3301.tree = NULL;

    temporal_literal3302.tree = NULL;

    null_literal3303.tree = NULL;

    bool_literal3304.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    UNDERSCORE_CHARSET3305_tree   = NULL;
    HEX_NUMBER3306_tree   = NULL;
    UNDERSCORE_CHARSET3307_tree   = NULL;
    BIN_NUMBER3308_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3440:8: ( string_literal | num_literal |{...}? temporal_literal | null_literal | bool_literal | ( UNDERSCORE_CHARSET )? HEX_NUMBER |{...}? ( UNDERSCORE_CHARSET )? BIN_NUMBER )

            ANTLR3_UINT32 alt946;

            alt946=7;

            switch ( LA(1) )
            {
            case DOUBLE_QUOTED_TEXT:
            case NCHAR_TEXT:
            case SINGLE_QUOTED_TEXT:
            	{
            		alt946=1;
            	}
                break;
            case UNDERSCORE_CHARSET:
            	{
            		switch ( LA(2) )
            		{
            		case DOUBLE_QUOTED_TEXT:
            		case SINGLE_QUOTED_TEXT:
            			{
            				alt946=1;
            			}
            		    break;
            		case HEX_NUMBER:
            			{
            				alt946=6;
            			}
            		    break;
            		case BIN_NUMBER:
            			{
            				alt946=7;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 946;
            		    EXCEPTION->state        = 2;


            		    goto ruleliteralEx;

            		}

            	}
                break;
            case DECIMAL_NUMBER:
            case FLOAT_NUMBER:
            case INT_NUMBER:
            case LONG_NUMBER:
            case ULONGLONG_NUMBER:
            	{
            		alt946=2;
            	}
                break;
            case DATE_SYMBOL:
            case TIMESTAMP_SYMBOL:
            case TIME_SYMBOL:
            	{
            		alt946=3;
            	}
                break;
            case NULL2_SYMBOL:
            case NULL_SYMBOL:
            	{
            		alt946=4;
            	}
                break;
            case FALSE_SYMBOL:
            case TRUE_SYMBOL:
            	{
            		alt946=5;
            	}
                break;
            case HEX_NUMBER:
            	{
            		alt946=6;
            	}
                break;
            case BIN_NUMBER:
            	{
            		alt946=7;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 946;
                EXCEPTION->state        = 0;


                goto ruleliteralEx;

            }

            switch (alt946)
            {
        	case 1:
        	    // MySQL.g:3441:2: string_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_string_literal_in_literal17908);
        	        string_literal3300=string_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, string_literal3300.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3442:4: num_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_num_literal_in_literal17913);
        	        num_literal3301=num_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, num_literal3301.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3444:4: {...}? temporal_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        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 *)"literal";


        	        }

        	        FOLLOWPUSH(FOLLOW_temporal_literal_in_literal17925);
        	        temporal_literal3302=temporal_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, temporal_literal3302.tree);

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3445:4: null_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_null_literal_in_literal17930);
        	        null_literal3303=null_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, null_literal3303.tree);

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3446:4: bool_literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_bool_literal_in_literal17935);
        	        bool_literal3304=bool_literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, bool_literal3304.tree);

        	    }
        	    break;
        	case 6:
        	    // MySQL.g:3447:4: ( UNDERSCORE_CHARSET )? HEX_NUMBER
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3447:4: ( UNDERSCORE_CHARSET )?
        	        {
        	            int alt944=2;
        	            switch ( LA(1) )
        	            {
        	                case UNDERSCORE_CHARSET:
        	                	{
        	                		alt944=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt944)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3447:4: UNDERSCORE_CHARSET
        	        	    {
        	        	        UNDERSCORE_CHARSET3305 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_literal17940);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleliteralEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNDERSCORE_CHARSET3305_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDERSCORE_CHARSET3305));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNDERSCORE_CHARSET3305_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        HEX_NUMBER3306 = (pANTLR3_COMMON_TOKEN) MATCHT(HEX_NUMBER, &FOLLOW_HEX_NUMBER_in_literal17943);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        HEX_NUMBER3306_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, HEX_NUMBER3306));
        	        ADAPTOR->addChild(ADAPTOR, root_0, HEX_NUMBER3306_tree);
        	        }

        	    }
        	    break;
        	case 7:
        	    // MySQL.g:3448:4: {...}? ( UNDERSCORE_CHARSET )? BIN_NUMBER
        	    {
        	        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";


        	        }

        	        // MySQL.g:3448:31: ( UNDERSCORE_CHARSET )?
        	        {
        	            int alt945=2;
        	            switch ( LA(1) )
        	            {
        	                case UNDERSCORE_CHARSET:
        	                	{
        	                		alt945=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt945)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3448:31: UNDERSCORE_CHARSET
        	        	    {
        	        	        UNDERSCORE_CHARSET3307 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_literal17950);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto ruleliteralEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNDERSCORE_CHARSET3307_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDERSCORE_CHARSET3307));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNDERSCORE_CHARSET3307_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        BIN_NUMBER3308 = (pANTLR3_COMMON_TOKEN) MATCHT(BIN_NUMBER, &FOLLOW_BIN_NUMBER_in_literal17953);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruleliteralEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        BIN_NUMBER3308_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, BIN_NUMBER3308));
        	        ADAPTOR->addChild(ADAPTOR, root_0, BIN_NUMBER3308_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 signed_literal
 * MySQL.g:3451:1: signed_literal : ( literal | PLUS_OPERATOR ulong_number | MINUS_OPERATOR ulong_number );
 */
static MySQLParser_signed_literal_return
signed_literal(pMySQLParser ctx)
{
    MySQLParser_signed_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    PLUS_OPERATOR3310;
    pANTLR3_COMMON_TOKEN    MINUS_OPERATOR3312;
    MySQLParser_literal_return literal3309;
    #undef	RETURN_TYPE_literal3309
    #define	RETURN_TYPE_literal3309 MySQLParser_literal_return

    MySQLParser_ulong_number_return ulong_number3311;
    #undef	RETURN_TYPE_ulong_number3311
    #define	RETURN_TYPE_ulong_number3311 MySQLParser_ulong_number_return

    MySQLParser_ulong_number_return ulong_number3313;
    #undef	RETURN_TYPE_ulong_number3313
    #define	RETURN_TYPE_ulong_number3313 MySQLParser_ulong_number_return

    pANTLR3_BASE_TREE PLUS_OPERATOR3310_tree;
    pANTLR3_BASE_TREE MINUS_OPERATOR3312_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    PLUS_OPERATOR3310       = NULL;
    MINUS_OPERATOR3312       = NULL;
    literal3309.tree = NULL;

    ulong_number3311.tree = NULL;

    ulong_number3313.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    PLUS_OPERATOR3310_tree   = NULL;
    MINUS_OPERATOR3312_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3451:15: ( literal | PLUS_OPERATOR ulong_number | MINUS_OPERATOR ulong_number )

            ANTLR3_UINT32 alt947;

            alt947=3;

            switch ( LA(1) )
            {
            case DATE_SYMBOL:
            case TIMESTAMP_SYMBOL:
            case TIME_SYMBOL:
            case BIN_NUMBER:
            case DECIMAL_NUMBER:
            case DOUBLE_QUOTED_TEXT:
            case FALSE_SYMBOL:
            case FLOAT_NUMBER:
            case HEX_NUMBER:
            case INT_NUMBER:
            case LONG_NUMBER:
            case NCHAR_TEXT:
            case NULL2_SYMBOL:
            case NULL_SYMBOL:
            case SINGLE_QUOTED_TEXT:
            case TRUE_SYMBOL:
            case ULONGLONG_NUMBER:
            case UNDERSCORE_CHARSET:
            	{
            		alt947=1;
            	}
                break;
            case PLUS_OPERATOR:
            	{
            		alt947=2;
            	}
                break;
            case MINUS_OPERATOR:
            	{
            		alt947=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 947;
                EXCEPTION->state        = 0;


                goto rulesigned_literalEx;

            }

            switch (alt947)
            {
        	case 1:
        	    // MySQL.g:3452:2: literal
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_literal_in_signed_literal17963);
        	        literal3309=literal(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, literal3309.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3453:4: PLUS_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        PLUS_OPERATOR3310 = (pANTLR3_COMMON_TOKEN) MATCHT(PLUS_OPERATOR, &FOLLOW_PLUS_OPERATOR_in_signed_literal17968);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        PLUS_OPERATOR3310_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PLUS_OPERATOR3310));
        	        ADAPTOR->addChild(ADAPTOR, root_0, PLUS_OPERATOR3310_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_signed_literal17970);
        	        ulong_number3311=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3311.tree);

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3454:4: MINUS_OPERATOR ulong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        MINUS_OPERATOR3312 = (pANTLR3_COMMON_TOKEN) MATCHT(MINUS_OPERATOR, &FOLLOW_MINUS_OPERATOR_in_signed_literal17975);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        MINUS_OPERATOR3312_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, MINUS_OPERATOR3312));
        	        ADAPTOR->addChild(ADAPTOR, root_0, MINUS_OPERATOR3312_tree);
        	        }

        	        FOLLOWPUSH(FOLLOW_ulong_number_in_signed_literal17977);
        	        ulong_number3313=ulong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesigned_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, ulong_number3313.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulesigned_literalEx; /* Prevent compiler warnings */
    rulesigned_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 signed_literal */

/**
 * $ANTLR start string_literal
 * MySQL.g:3459:1: string_literal : string -> ^( STRING_TOKEN string ) ;
 */
static MySQLParser_string_literal_return
string_literal(pMySQLParser ctx)
{
    MySQLParser_string_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_string_return string3314;
    #undef	RETURN_TYPE_string3314
    #define	RETURN_TYPE_string3314 MySQLParser_string_return

    pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_string;
    /* Initialize rule variables
     */

    root_0 = NULL;

    string3314.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:3459:15: ( string -> ^( STRING_TOKEN string ) )
        // MySQL.g:3460:2: string
        {
            FOLLOWPUSH(FOLLOW_string_in_string_literal17988);
            string3314=string(ctx);

            FOLLOWPOP();
            if  (HASEXCEPTION())
            {
                goto rulestring_literalEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) { CREATE_stream_string; stream_string->add(stream_string, string3314.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;
            	// 3460:9: -> ^( STRING_TOKEN string )
            	{
            	    // MySQL.g:3460:12: ^( STRING_TOKEN 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_TOKEN, (pANTLR3_UINT8)"STRING_TOKEN")
            	        , 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:3463: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_TEXT3315;
    pANTLR3_COMMON_TOKEN    UNDERSCORE_CHARSET3316;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3317;
    pANTLR3_COMMON_TOKEN    DOUBLE_QUOTED_TEXT3318;

    pANTLR3_BASE_TREE NCHAR_TEXT3315_tree;
    pANTLR3_BASE_TREE UNDERSCORE_CHARSET3316_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3317_tree;
    pANTLR3_BASE_TREE DOUBLE_QUOTED_TEXT3318_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NCHAR_TEXT3315       = NULL;
    UNDERSCORE_CHARSET3316       = NULL;
    SINGLE_QUOTED_TEXT3317       = NULL;
    DOUBLE_QUOTED_TEXT3318       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NCHAR_TEXT3315_tree   = NULL;
    UNDERSCORE_CHARSET3316_tree   = NULL;
    SINGLE_QUOTED_TEXT3317_tree   = NULL;
    DOUBLE_QUOTED_TEXT3318_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3463:7: ( NCHAR_TEXT | ( UNDERSCORE_CHARSET )? ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? DOUBLE_QUOTED_TEXT )+ )

            ANTLR3_UINT32 alt950;

            alt950=2;

            switch ( LA(1) )
            {
            case NCHAR_TEXT:
            	{
            		alt950=1;
            	}
                break;
            case DOUBLE_QUOTED_TEXT:
            case SINGLE_QUOTED_TEXT:
            case UNDERSCORE_CHARSET:
            	{
            		alt950=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 950;
                EXCEPTION->state        = 0;


                goto rulestringEx;

            }

            switch (alt950)
            {
        	case 1:
        	    // MySQL.g:3464:2: NCHAR_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_TEXT3315 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_TEXT, &FOLLOW_NCHAR_TEXT_in_string18005);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulestringEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_TEXT3315_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_TEXT3315));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_TEXT3315_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3465:4: ( UNDERSCORE_CHARSET )? ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? DOUBLE_QUOTED_TEXT )+
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        // MySQL.g:3465:4: ( UNDERSCORE_CHARSET )?
        	        {
        	            int alt948=2;
        	            switch ( LA(1) )
        	            {
        	                case UNDERSCORE_CHARSET:
        	                	{
        	                		alt948=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt948)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3465:4: UNDERSCORE_CHARSET
        	        	    {
        	        	        UNDERSCORE_CHARSET3316 = (pANTLR3_COMMON_TOKEN) MATCHT(UNDERSCORE_CHARSET, &FOLLOW_UNDERSCORE_CHARSET_in_string18010);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulestringEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        UNDERSCORE_CHARSET3316_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, UNDERSCORE_CHARSET3316));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, UNDERSCORE_CHARSET3316_tree);
        	        	        }

        	        	    }
        	        	    break;

        	            }
        	        }

        	        // MySQL.g:3465:24: ( options {greedy=true; } : SINGLE_QUOTED_TEXT |{...}? DOUBLE_QUOTED_TEXT )+
        	        {
        	            int cnt949=0;

        	            for (;;)
        	            {
        	                int alt949=3;
        	        	switch ( LA(1) )
        	        	{
        	        	case DOUBLE_QUOTED_TEXT:
        	        		{
        	        			{
        	        			   /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState)
        	        			    */
        	        			    int LA949_13 = LA(2);
        	        			    if ( ((!SQL_MODE_ACTIVE(SQL_MODE_ANSI_QUOTES))))
        	        			    {
        	        			        alt949=2;
        	        			    }

        	        			}
        	        		}
        	        	    break;
        	        	case SINGLE_QUOTED_TEXT:
        	        		{
        	        			alt949=1;
        	        		}
        	        	    break;

        	        	}

        	        	switch (alt949)
        	        	{
        	        	    case 1:
        	        	        // MySQL.g:3465:54: SINGLE_QUOTED_TEXT
        	        	        {
        	        	            SINGLE_QUOTED_TEXT3317 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_string18027);
        	        	            if  (HASEXCEPTION())
        	        	            {
        	        	                goto rulestringEx;
        	        	            }
        	        	            if (HASFAILED())
        	        	            {
        	        	                return retval;
        	        	            }

        	        	            if ( BACKTRACKING==0 ) {
        	        	            SINGLE_QUOTED_TEXT3317_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3317));
        	        	            ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3317_tree);
        	        	            }

        	        	        }
        	        	        break;
        	        	    case 2:
        	        	        // MySQL.g:3466:4: {...}? 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_TEXT3318 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_QUOTED_TEXT, &FOLLOW_DOUBLE_QUOTED_TEXT_in_string18034);
        	        	            if  (HASEXCEPTION())
        	        	            {
        	        	                goto rulestringEx;
        	        	            }
        	        	            if (HASFAILED())
        	        	            {
        	        	                return retval;
        	        	            }

        	        	            if ( BACKTRACKING==0 ) {
        	        	            DOUBLE_QUOTED_TEXT3318_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_QUOTED_TEXT3318));
        	        	            ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_QUOTED_TEXT3318_tree);
        	        	            }

        	        	        }
        	        	        break;

        	        	    default:

        	        		if ( cnt949 >= 1 )
        	        		{
        	        		    goto loop949;
        	        		}
        	        		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;
        	        	}
        	        	cnt949++;
        	            }
        	            loop949: ;	/* 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 num_literal
 * MySQL.g:3469:1: num_literal : ( INT_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER );
 */
static MySQLParser_num_literal_return
num_literal(pMySQLParser ctx)
{
    MySQLParser_num_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3319;

    pANTLR3_BASE_TREE set3319_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3319       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3319_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3469:12: ( INT_NUMBER | LONG_NUMBER | ULONGLONG_NUMBER | DECIMAL_NUMBER | FLOAT_NUMBER )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3319=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == DECIMAL_NUMBER || LA(1) == FLOAT_NUMBER || LA(1) == INT_NUMBER || LA(1) == LONG_NUMBER || LA(1) == ULONGLONG_NUMBER )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3319))
                );
                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 rulenum_literalEx;
            }


        }

    }

    // This is where rules clean up and exit
    //
    goto rulenum_literalEx; /* Prevent compiler warnings */
    rulenum_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 num_literal */

/**
 * $ANTLR start bool_literal
 * MySQL.g:3477: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    set3320;

    pANTLR3_BASE_TREE set3320_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3320       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3320_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3477:13: ( TRUE_SYMBOL | FALSE_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3320=(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, set3320))
                );
                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 null_literal
 * MySQL.g:3482: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    set3321;

    pANTLR3_BASE_TREE set3321_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3321       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3321_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3482:13: ( NULL_SYMBOL | NULL2_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3321=(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, set3321))
                );
                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:3487:1: temporal_literal : ( DATE_SYMBOL SINGLE_QUOTED_TEXT | TIME_SYMBOL SINGLE_QUOTED_TEXT | TIMESTAMP_SYMBOL SINGLE_QUOTED_TEXT );
 */
static MySQLParser_temporal_literal_return
temporal_literal(pMySQLParser ctx)
{
    MySQLParser_temporal_literal_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    DATE_SYMBOL3322;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3323;
    pANTLR3_COMMON_TOKEN    TIME_SYMBOL3324;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3325;
    pANTLR3_COMMON_TOKEN    TIMESTAMP_SYMBOL3326;
    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3327;

    pANTLR3_BASE_TREE DATE_SYMBOL3322_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3323_tree;
    pANTLR3_BASE_TREE TIME_SYMBOL3324_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3325_tree;
    pANTLR3_BASE_TREE TIMESTAMP_SYMBOL3326_tree;
    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3327_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    DATE_SYMBOL3322       = NULL;
    SINGLE_QUOTED_TEXT3323       = NULL;
    TIME_SYMBOL3324       = NULL;
    SINGLE_QUOTED_TEXT3325       = NULL;
    TIMESTAMP_SYMBOL3326       = NULL;
    SINGLE_QUOTED_TEXT3327       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    DATE_SYMBOL3322_tree   = NULL;
    SINGLE_QUOTED_TEXT3323_tree   = NULL;
    TIME_SYMBOL3324_tree   = NULL;
    SINGLE_QUOTED_TEXT3325_tree   = NULL;
    TIMESTAMP_SYMBOL3326_tree   = NULL;
    SINGLE_QUOTED_TEXT3327_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3487:17: ( DATE_SYMBOL SINGLE_QUOTED_TEXT | TIME_SYMBOL SINGLE_QUOTED_TEXT | TIMESTAMP_SYMBOL SINGLE_QUOTED_TEXT )

            ANTLR3_UINT32 alt951;

            alt951=3;

            switch ( LA(1) )
            {
            case DATE_SYMBOL:
            	{
            		alt951=1;
            	}
                break;
            case TIME_SYMBOL:
            	{
            		alt951=2;
            	}
                break;
            case TIMESTAMP_SYMBOL:
            	{
            		alt951=3;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 951;
                EXCEPTION->state        = 0;


                goto ruletemporal_literalEx;

            }

            switch (alt951)
            {
        	case 1:
        	    // MySQL.g:3488:2: DATE_SYMBOL SINGLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DATE_SYMBOL3322 = (pANTLR3_COMMON_TOKEN) MATCHT(DATE_SYMBOL, &FOLLOW_DATE_SYMBOL_in_temporal_literal18103);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DATE_SYMBOL3322_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DATE_SYMBOL3322));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DATE_SYMBOL3322_tree);
        	        }

        	        SINGLE_QUOTED_TEXT3323 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18105);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SINGLE_QUOTED_TEXT3323_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3323));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3323_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3489:4: TIME_SYMBOL SINGLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIME_SYMBOL3324 = (pANTLR3_COMMON_TOKEN) MATCHT(TIME_SYMBOL, &FOLLOW_TIME_SYMBOL_in_temporal_literal18110);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIME_SYMBOL3324_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIME_SYMBOL3324));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIME_SYMBOL3324_tree);
        	        }

        	        SINGLE_QUOTED_TEXT3325 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18112);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SINGLE_QUOTED_TEXT3325_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3325));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3325_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3490:4: TIMESTAMP_SYMBOL SINGLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        TIMESTAMP_SYMBOL3326 = (pANTLR3_COMMON_TOKEN) MATCHT(TIMESTAMP_SYMBOL, &FOLLOW_TIMESTAMP_SYMBOL_in_temporal_literal18117);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        TIMESTAMP_SYMBOL3326_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, TIMESTAMP_SYMBOL3326));
        	        ADAPTOR->addChild(ADAPTOR, root_0, TIMESTAMP_SYMBOL3326_tree);
        	        }

        	        SINGLE_QUOTED_TEXT3327 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_temporal_literal18119);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletemporal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SINGLE_QUOTED_TEXT3327_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3327));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3327_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:3495:1: integer_type : ( 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    set3328;

    pANTLR3_BASE_TREE set3328_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3328       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3328_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3495:13: ( INT_SYMBOL | TINYINT_SYMBOL | SMALLINT_SYMBOL | MEDIUMINT_SYMBOL | BIGINT_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3328=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( LA(1) == BIGINT_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, set3328))
                );
                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:3503: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_SYMBOL3329;
    pANTLR3_COMMON_TOKEN    DOUBLE_SYMBOL3330;
    pANTLR3_COMMON_TOKEN    PRECISION_SYMBOL3331;

    pANTLR3_BASE_TREE REAL_SYMBOL3329_tree;
    pANTLR3_BASE_TREE DOUBLE_SYMBOL3330_tree;
    pANTLR3_BASE_TREE PRECISION_SYMBOL3331_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    REAL_SYMBOL3329       = NULL;
    DOUBLE_SYMBOL3330       = NULL;
    PRECISION_SYMBOL3331       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    REAL_SYMBOL3329_tree   = NULL;
    DOUBLE_SYMBOL3330_tree   = NULL;
    PRECISION_SYMBOL3331_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3503:13: ( REAL_SYMBOL | DOUBLE_SYMBOL ( PRECISION_SYMBOL )? )

            ANTLR3_UINT32 alt953;

            alt953=2;

            switch ( LA(1) )
            {
            case REAL_SYMBOL:
            	{
            		alt953=1;
            	}
                break;
            case DOUBLE_SYMBOL:
            	{
            		alt953=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 953;
                EXCEPTION->state        = 0;


                goto rulereal_literalEx;

            }

            switch (alt953)
            {
        	case 1:
        	    // MySQL.g:3504:2: REAL_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        REAL_SYMBOL3329 = (pANTLR3_COMMON_TOKEN) MATCHT(REAL_SYMBOL, &FOLLOW_REAL_SYMBOL_in_real_literal18159);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        REAL_SYMBOL3329_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, REAL_SYMBOL3329));
        	        ADAPTOR->addChild(ADAPTOR, root_0, REAL_SYMBOL3329_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3504:16: DOUBLE_SYMBOL ( PRECISION_SYMBOL )?
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        DOUBLE_SYMBOL3330 = (pANTLR3_COMMON_TOKEN) MATCHT(DOUBLE_SYMBOL, &FOLLOW_DOUBLE_SYMBOL_in_real_literal18163);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulereal_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        DOUBLE_SYMBOL3330_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, DOUBLE_SYMBOL3330));
        	        ADAPTOR->addChild(ADAPTOR, root_0, DOUBLE_SYMBOL3330_tree);
        	        }

        	        // MySQL.g:3504:30: ( PRECISION_SYMBOL )?
        	        {
        	            int alt952=2;
        	            switch ( LA(1) )
        	            {
        	                case PRECISION_SYMBOL:
        	                	{
        	                		alt952=1;
        	                	}
        	                    break;
        	            }

        	            switch (alt952)
        	            {
        	        	case 1:
        	        	    // MySQL.g:3504:30: PRECISION_SYMBOL
        	        	    {
        	        	        PRECISION_SYMBOL3331 = (pANTLR3_COMMON_TOKEN) MATCHT(PRECISION_SYMBOL, &FOLLOW_PRECISION_SYMBOL_in_real_literal18165);
        	        	        if  (HASEXCEPTION())
        	        	        {
        	        	            goto rulereal_literalEx;
        	        	        }
        	        	        if (HASFAILED())
        	        	        {
        	        	            return retval;
        	        	        }

        	        	        if ( BACKTRACKING==0 ) {
        	        	        PRECISION_SYMBOL3331_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, PRECISION_SYMBOL3331));
        	        	        ADAPTOR->addChild(ADAPTOR, root_0, PRECISION_SYMBOL3331_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:3507:1: float_options : OPEN_PAR_SYMBOL INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? 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_SYMBOL3332;
    pANTLR3_COMMON_TOKEN    INT_NUMBER3333;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3334;
    pANTLR3_COMMON_TOKEN    INT_NUMBER3335;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3336;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3332_tree;
    pANTLR3_BASE_TREE INT_NUMBER3333_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3334_tree;
    pANTLR3_BASE_TREE INT_NUMBER3335_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3336_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3332       = NULL;
    INT_NUMBER3333       = NULL;
    COMMA_SYMBOL3334       = NULL;
    INT_NUMBER3335       = NULL;
    CLOSE_PAR_SYMBOL3336       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3332_tree   = NULL;
    INT_NUMBER3333_tree   = NULL;
    COMMA_SYMBOL3334_tree   = NULL;
    INT_NUMBER3335_tree   = NULL;
    CLOSE_PAR_SYMBOL3336_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3507:14: ( OPEN_PAR_SYMBOL INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? CLOSE_PAR_SYMBOL )
        // MySQL.g:3509:2: OPEN_PAR_SYMBOL INT_NUMBER ( COMMA_SYMBOL INT_NUMBER )? CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3332 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_float_options18177);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3332_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3332));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3332_tree);
            }

            INT_NUMBER3333 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_float_options18179);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER3333_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER3333));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER3333_tree);
            }

            // MySQL.g:3509:29: ( COMMA_SYMBOL INT_NUMBER )?
            {
                int alt954=2;
                switch ( LA(1) )
                {
                    case COMMA_SYMBOL:
                    	{
                    		alt954=1;
                    	}
                        break;
                }

                switch (alt954)
                {
            	case 1:
            	    // MySQL.g:3509:30: COMMA_SYMBOL INT_NUMBER
            	    {
            	        COMMA_SYMBOL3334 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_float_options18182);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefloat_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        COMMA_SYMBOL3334_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3334));
            	        ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3334_tree);
            	        }

            	        INT_NUMBER3335 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_float_options18184);
            	        if  (HASEXCEPTION())
            	        {
            	            goto rulefloat_optionsEx;
            	        }
            	        if (HASFAILED())
            	        {
            	            return retval;
            	        }

            	        if ( BACKTRACKING==0 ) {
            	        INT_NUMBER3335_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER3335));
            	        ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER3335_tree);
            	        }

            	    }
            	    break;

                }
            }

            CLOSE_PAR_SYMBOL3336 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_float_options18188);
            if  (HASEXCEPTION())
            {
                goto rulefloat_optionsEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3336_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3336));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3336_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:3512:1: precision : OPEN_PAR_SYMBOL INT_NUMBER COMMA_SYMBOL INT_NUMBER CLOSE_PAR_SYMBOL ;
 */
static MySQLParser_precision_return
precision(pMySQLParser ctx)
{
    MySQLParser_precision_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    OPEN_PAR_SYMBOL3337;
    pANTLR3_COMMON_TOKEN    INT_NUMBER3338;
    pANTLR3_COMMON_TOKEN    COMMA_SYMBOL3339;
    pANTLR3_COMMON_TOKEN    INT_NUMBER3340;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3341;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3337_tree;
    pANTLR3_BASE_TREE INT_NUMBER3338_tree;
    pANTLR3_BASE_TREE COMMA_SYMBOL3339_tree;
    pANTLR3_BASE_TREE INT_NUMBER3340_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3341_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3337       = NULL;
    INT_NUMBER3338       = NULL;
    COMMA_SYMBOL3339       = NULL;
    INT_NUMBER3340       = NULL;
    CLOSE_PAR_SYMBOL3341       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3337_tree   = NULL;
    INT_NUMBER3338_tree   = NULL;
    COMMA_SYMBOL3339_tree   = NULL;
    INT_NUMBER3340_tree   = NULL;
    CLOSE_PAR_SYMBOL3341_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3512:10: ( OPEN_PAR_SYMBOL INT_NUMBER COMMA_SYMBOL INT_NUMBER CLOSE_PAR_SYMBOL )
        // MySQL.g:3513:2: OPEN_PAR_SYMBOL INT_NUMBER COMMA_SYMBOL INT_NUMBER CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3337 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_precision18197);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3337_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3337));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3337_tree);
            }

            INT_NUMBER3338 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_precision18199);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER3338_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER3338));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER3338_tree);
            }

            COMMA_SYMBOL3339 = (pANTLR3_COMMON_TOKEN) MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_precision18201);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            COMMA_SYMBOL3339_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, COMMA_SYMBOL3339));
            ADAPTOR->addChild(ADAPTOR, root_0, COMMA_SYMBOL3339_tree);
            }

            INT_NUMBER3340 = (pANTLR3_COMMON_TOKEN) MATCHT(INT_NUMBER, &FOLLOW_INT_NUMBER_in_precision18203);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            INT_NUMBER3340_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, INT_NUMBER3340));
            ADAPTOR->addChild(ADAPTOR, root_0, INT_NUMBER3340_tree);
            }

            CLOSE_PAR_SYMBOL3341 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_precision18205);
            if  (HASEXCEPTION())
            {
                goto ruleprecisionEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3341_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3341));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3341_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:3516:1: nchar_literal : ( NCHAR_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    NCHAR_SYMBOL3342;
    pANTLR3_COMMON_TOKEN    NATIONAL_SYMBOL3343;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL3344;

    pANTLR3_BASE_TREE NCHAR_SYMBOL3342_tree;
    pANTLR3_BASE_TREE NATIONAL_SYMBOL3343_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL3344_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NCHAR_SYMBOL3342       = NULL;
    NATIONAL_SYMBOL3343       = NULL;
    CHAR_SYMBOL3344       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NCHAR_SYMBOL3342_tree   = NULL;
    NATIONAL_SYMBOL3343_tree   = NULL;
    CHAR_SYMBOL3344_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3516:14: ( NCHAR_SYMBOL |{...}? NATIONAL_SYMBOL CHAR_SYMBOL )

            ANTLR3_UINT32 alt955;

            alt955=2;

            switch ( LA(1) )
            {
            case NCHAR_SYMBOL:
            	{
            		alt955=1;
            	}
                break;
            case NATIONAL_SYMBOL:
            	{
            		alt955=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 955;
                EXCEPTION->state        = 0;


                goto rulenchar_literalEx;

            }

            switch (alt955)
            {
        	case 1:
        	    // MySQL.g:3517:2: NCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL3342 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_nchar_literal18214);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL3342_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL3342));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL3342_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3518: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_SYMBOL3343 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nchar_literal18221);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL3343_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL3343));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL3343_tree);
        	        }

        	        CHAR_SYMBOL3344 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_nchar_literal18223);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL3344_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL3344));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL3344_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:3521: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_SYMBOL3345;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL3346;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL3347;

    pANTLR3_BASE_TREE CHAR_SYMBOL3345_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL3346_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL3347_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    CHAR_SYMBOL3345       = NULL;
    VARYING_SYMBOL3346       = NULL;
    VARCHAR_SYMBOL3347       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    CHAR_SYMBOL3345_tree   = NULL;
    VARYING_SYMBOL3346_tree   = NULL;
    VARCHAR_SYMBOL3347_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3521:16: ( CHAR_SYMBOL VARYING_SYMBOL | VARCHAR_SYMBOL )

            ANTLR3_UINT32 alt956;

            alt956=2;

            switch ( LA(1) )
            {
            case CHAR_SYMBOL:
            	{
            		alt956=1;
            	}
                break;
            case VARCHAR_SYMBOL:
            	{
            		alt956=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 956;
                EXCEPTION->state        = 0;


                goto rulevarchar_literalEx;

            }

            switch (alt956)
            {
        	case 1:
        	    // MySQL.g:3522:2: CHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        CHAR_SYMBOL3345 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_varchar_literal18233);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL3345_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL3345));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL3345_tree);
        	        }

        	        VARYING_SYMBOL3346 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_varchar_literal18235);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARYING_SYMBOL3346_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARYING_SYMBOL3346));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARYING_SYMBOL3346_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3523:4: VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        VARCHAR_SYMBOL3347 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_varchar_literal18240);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulevarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL3347_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL3347));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL3347_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:3526: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_SYMBOL3348;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL3349;
    pANTLR3_COMMON_TOKEN    NVARCHAR_SYMBOL3350;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL3351;
    pANTLR3_COMMON_TOKEN    VARCHAR_SYMBOL3352;
    pANTLR3_COMMON_TOKEN    NATIONAL_SYMBOL3353;
    pANTLR3_COMMON_TOKEN    CHAR_SYMBOL3354;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL3355;
    pANTLR3_COMMON_TOKEN    NCHAR_SYMBOL3356;
    pANTLR3_COMMON_TOKEN    VARYING_SYMBOL3357;

    pANTLR3_BASE_TREE NATIONAL_SYMBOL3348_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL3349_tree;
    pANTLR3_BASE_TREE NVARCHAR_SYMBOL3350_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL3351_tree;
    pANTLR3_BASE_TREE VARCHAR_SYMBOL3352_tree;
    pANTLR3_BASE_TREE NATIONAL_SYMBOL3353_tree;
    pANTLR3_BASE_TREE CHAR_SYMBOL3354_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL3355_tree;
    pANTLR3_BASE_TREE NCHAR_SYMBOL3356_tree;
    pANTLR3_BASE_TREE VARYING_SYMBOL3357_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    NATIONAL_SYMBOL3348       = NULL;
    VARCHAR_SYMBOL3349       = NULL;
    NVARCHAR_SYMBOL3350       = NULL;
    NCHAR_SYMBOL3351       = NULL;
    VARCHAR_SYMBOL3352       = NULL;
    NATIONAL_SYMBOL3353       = NULL;
    CHAR_SYMBOL3354       = NULL;
    VARYING_SYMBOL3355       = NULL;
    NCHAR_SYMBOL3356       = NULL;
    VARYING_SYMBOL3357       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    NATIONAL_SYMBOL3348_tree   = NULL;
    VARCHAR_SYMBOL3349_tree   = NULL;
    NVARCHAR_SYMBOL3350_tree   = NULL;
    NCHAR_SYMBOL3351_tree   = NULL;
    VARCHAR_SYMBOL3352_tree   = NULL;
    NATIONAL_SYMBOL3353_tree   = NULL;
    CHAR_SYMBOL3354_tree   = NULL;
    VARYING_SYMBOL3355_tree   = NULL;
    NCHAR_SYMBOL3356_tree   = NULL;
    VARYING_SYMBOL3357_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3526:17: ( NATIONAL_SYMBOL VARCHAR_SYMBOL | NVARCHAR_SYMBOL | NCHAR_SYMBOL VARCHAR_SYMBOL | NATIONAL_SYMBOL CHAR_SYMBOL VARYING_SYMBOL | NCHAR_SYMBOL VARYING_SYMBOL )

            ANTLR3_UINT32 alt957;

            alt957=5;

            switch ( LA(1) )
            {
            case NATIONAL_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case VARCHAR_SYMBOL:
            			{
            				alt957=1;
            			}
            		    break;
            		case CHAR_SYMBOL:
            			{
            				alt957=4;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 957;
            		    EXCEPTION->state        = 1;


            		    goto rulenvarchar_literalEx;

            		}

            	}
                break;
            case NVARCHAR_SYMBOL:
            	{
            		alt957=2;
            	}
                break;
            case NCHAR_SYMBOL:
            	{
            		switch ( LA(2) )
            		{
            		case VARCHAR_SYMBOL:
            			{
            				alt957=3;
            			}
            		    break;
            		case VARYING_SYMBOL:
            			{
            				alt957=5;
            			}
            		    break;

            		default:
            		    if (BACKTRACKING>0)
            		    {
            		        FAILEDFLAG = ANTLR3_TRUE;
            		        return retval;
            		    }

            		    CONSTRUCTEX();
            		    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
            		    EXCEPTION->message      = (void *)"";
            		    EXCEPTION->decisionNum  = 957;
            		    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  = 957;
                EXCEPTION->state        = 0;


                goto rulenvarchar_literalEx;

            }

            switch (alt957)
            {
        	case 1:
        	    // MySQL.g:3527:2: NATIONAL_SYMBOL VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATIONAL_SYMBOL3348 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18249);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL3348_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL3348));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL3348_tree);
        	        }

        	        VARCHAR_SYMBOL3349 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18251);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL3349_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL3349));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL3349_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3528:4: NVARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NVARCHAR_SYMBOL3350 = (pANTLR3_COMMON_TOKEN) MATCHT(NVARCHAR_SYMBOL, &FOLLOW_NVARCHAR_SYMBOL_in_nvarchar_literal18256);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NVARCHAR_SYMBOL3350_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NVARCHAR_SYMBOL3350));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NVARCHAR_SYMBOL3350_tree);
        	        }

        	    }
        	    break;
        	case 3:
        	    // MySQL.g:3529:4: NCHAR_SYMBOL VARCHAR_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL3351 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18261);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL3351_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL3351));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL3351_tree);
        	        }

        	        VARCHAR_SYMBOL3352 = (pANTLR3_COMMON_TOKEN) MATCHT(VARCHAR_SYMBOL, &FOLLOW_VARCHAR_SYMBOL_in_nvarchar_literal18263);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARCHAR_SYMBOL3352_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARCHAR_SYMBOL3352));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARCHAR_SYMBOL3352_tree);
        	        }

        	    }
        	    break;
        	case 4:
        	    // MySQL.g:3530:4: NATIONAL_SYMBOL CHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NATIONAL_SYMBOL3353 = (pANTLR3_COMMON_TOKEN) MATCHT(NATIONAL_SYMBOL, &FOLLOW_NATIONAL_SYMBOL_in_nvarchar_literal18268);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NATIONAL_SYMBOL3353_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NATIONAL_SYMBOL3353));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NATIONAL_SYMBOL3353_tree);
        	        }

        	        CHAR_SYMBOL3354 = (pANTLR3_COMMON_TOKEN) MATCHT(CHAR_SYMBOL, &FOLLOW_CHAR_SYMBOL_in_nvarchar_literal18270);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        CHAR_SYMBOL3354_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CHAR_SYMBOL3354));
        	        ADAPTOR->addChild(ADAPTOR, root_0, CHAR_SYMBOL3354_tree);
        	        }

        	        VARYING_SYMBOL3355 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18272);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARYING_SYMBOL3355_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARYING_SYMBOL3355));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARYING_SYMBOL3355_tree);
        	        }

        	    }
        	    break;
        	case 5:
        	    // MySQL.g:3531:4: NCHAR_SYMBOL VARYING_SYMBOL
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        NCHAR_SYMBOL3356 = (pANTLR3_COMMON_TOKEN) MATCHT(NCHAR_SYMBOL, &FOLLOW_NCHAR_SYMBOL_in_nvarchar_literal18277);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        NCHAR_SYMBOL3356_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, NCHAR_SYMBOL3356));
        	        ADAPTOR->addChild(ADAPTOR, root_0, NCHAR_SYMBOL3356_tree);
        	        }

        	        VARYING_SYMBOL3357 = (pANTLR3_COMMON_TOKEN) MATCHT(VARYING_SYMBOL, &FOLLOW_VARYING_SYMBOL_in_nvarchar_literal18279);
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulenvarchar_literalEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        VARYING_SYMBOL3357_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, VARYING_SYMBOL3357));
        	        ADAPTOR->addChild(ADAPTOR, root_0, VARYING_SYMBOL3357_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 text_or_identifier
 * MySQL.g:3534:1: text_or_identifier : ( SINGLE_QUOTED_TEXT | identifier );
 */
static MySQLParser_text_or_identifier_return
text_or_identifier(pMySQLParser ctx)
{
    MySQLParser_text_or_identifier_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    SINGLE_QUOTED_TEXT3358;
    MySQLParser_identifier_return identifier3359;
    #undef	RETURN_TYPE_identifier3359
    #define	RETURN_TYPE_identifier3359 MySQLParser_identifier_return

    pANTLR3_BASE_TREE SINGLE_QUOTED_TEXT3358_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    SINGLE_QUOTED_TEXT3358       = NULL;
    identifier3359.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    SINGLE_QUOTED_TEXT3358_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3534:19: ( SINGLE_QUOTED_TEXT | identifier )

            ANTLR3_UINT32 alt958;

            alt958=2;

            {
                int LA958_0 = LA(1);
                if ( (LA958_0 == SINGLE_QUOTED_TEXT))
                {
                    alt958=1;
                }
                else if ( (((LA958_0 >= ACCOUNT_SYMBOL) && (LA958_0 <= YEAR_SYMBOL)) || LA958_0 == BACK_TICK_QUOTED_ID || LA958_0 == DOUBLE_QUOTED_TEXT || LA958_0 == IDENTIFIER))
                {
                    alt958=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 958;
                    EXCEPTION->state        = 0;


                    goto ruletext_or_identifierEx;

                }
            }
            switch (alt958)
            {
        	case 1:
        	    // MySQL.g:3535:2: SINGLE_QUOTED_TEXT
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        SINGLE_QUOTED_TEXT3358 = (pANTLR3_COMMON_TOKEN) MATCHT(SINGLE_QUOTED_TEXT, &FOLLOW_SINGLE_QUOTED_TEXT_in_text_or_identifier18288);
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletext_or_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) {
        	        SINGLE_QUOTED_TEXT3358_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, SINGLE_QUOTED_TEXT3358));
        	        ADAPTOR->addChild(ADAPTOR, root_0, SINGLE_QUOTED_TEXT3358_tree);
        	        }

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3536:4: identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_identifier_in_text_or_identifier18293);
        	        identifier3359=identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto ruletext_or_identifierEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, identifier3359.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 size_number
 * MySQL.g:3540:1: size_number : ( real_ulonglong_number | pure_identifier );
 */
static MySQLParser_size_number_return
size_number(pMySQLParser ctx)
{
    MySQLParser_size_number_return retval;


    pANTLR3_BASE_TREE root_0;

    MySQLParser_real_ulonglong_number_return real_ulonglong_number3360;
    #undef	RETURN_TYPE_real_ulonglong_number3360
    #define	RETURN_TYPE_real_ulonglong_number3360 MySQLParser_real_ulonglong_number_return

    MySQLParser_pure_identifier_return pure_identifier3361;
    #undef	RETURN_TYPE_pure_identifier3361
    #define	RETURN_TYPE_pure_identifier3361 MySQLParser_pure_identifier_return


    /* Initialize rule variables
     */

    root_0 = NULL;

    real_ulonglong_number3360.tree = NULL;

    pure_identifier3361.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;




    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3540:12: ( real_ulonglong_number | pure_identifier )

            ANTLR3_UINT32 alt959;

            alt959=2;

            switch ( LA(1) )
            {
            case INT_NUMBER:
            case LONG_NUMBER:
            case ULONGLONG_NUMBER:
            	{
            		alt959=1;
            	}
                break;
            case BACK_TICK_QUOTED_ID:
            case DOUBLE_QUOTED_TEXT:
            case IDENTIFIER:
            	{
            		alt959=2;
            	}
                break;

            default:
                if (BACKTRACKING>0)
                {
                    FAILEDFLAG = ANTLR3_TRUE;
                    return retval;
                }

                CONSTRUCTEX();
                EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                EXCEPTION->message      = (void *)"";
                EXCEPTION->decisionNum  = 959;
                EXCEPTION->state        = 0;


                goto rulesize_numberEx;

            }

            switch (alt959)
            {
        	case 1:
        	    // MySQL.g:3541:2: real_ulonglong_number
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_real_ulonglong_number_in_size_number18304);
        	        real_ulonglong_number3360=real_ulonglong_number(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesize_numberEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, real_ulonglong_number3360.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3542:4: pure_identifier
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_pure_identifier_in_size_number18309);
        	        pure_identifier3361=pure_identifier(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulesize_numberEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, pure_identifier3361.tree);

        	    }
        	    break;

            }
        }
    }

    // This is where rules clean up and exit
    //
    goto rulesize_numberEx; /* Prevent compiler warnings */
    rulesize_numberEx: ;
    retval.stop = LT(-1);


    if ( BACKTRACKING==0 )
    {

    	retval.stop = LT(-1);

    	retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->rulePostProcessing(ADAPTOR, root_0));
    	ADAPTOR->setTokenBoundaries(ADAPTOR, retval.tree, retval.start, retval.stop);
    }


            if (HASEXCEPTION())
            {
                PREPORTERROR();
                PRECOVER();
                retval.tree = (pANTLR3_BASE_TREE)(ADAPTOR->errorNode(ADAPTOR, INPUT, retval.start, LT(-1), EXCEPTION));
            }
    return retval;
}
/* $ANTLR end size_number */

/**
 * $ANTLR start parentheses
 * MySQL.g:3545: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_SYMBOL3362;
    pANTLR3_COMMON_TOKEN    CLOSE_PAR_SYMBOL3363;

    pANTLR3_BASE_TREE OPEN_PAR_SYMBOL3362_tree;
    pANTLR3_BASE_TREE CLOSE_PAR_SYMBOL3363_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    OPEN_PAR_SYMBOL3362       = NULL;
    CLOSE_PAR_SYMBOL3363       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    OPEN_PAR_SYMBOL3362_tree   = NULL;
    CLOSE_PAR_SYMBOL3363_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3545:12: ( OPEN_PAR_SYMBOL CLOSE_PAR_SYMBOL )
        // MySQL.g:3546:2: OPEN_PAR_SYMBOL CLOSE_PAR_SYMBOL
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            OPEN_PAR_SYMBOL3362 = (pANTLR3_COMMON_TOKEN) MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_parentheses18319);
            if  (HASEXCEPTION())
            {
                goto ruleparenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            OPEN_PAR_SYMBOL3362_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, OPEN_PAR_SYMBOL3362));
            ADAPTOR->addChild(ADAPTOR, root_0, OPEN_PAR_SYMBOL3362_tree);
            }

            CLOSE_PAR_SYMBOL3363 = (pANTLR3_COMMON_TOKEN) MATCHT(CLOSE_PAR_SYMBOL, &FOLLOW_CLOSE_PAR_SYMBOL_in_parentheses18321);
            if  (HASEXCEPTION())
            {
                goto ruleparenthesesEx;
            }
            if (HASFAILED())
            {
                return retval;
            }

            if ( BACKTRACKING==0 ) {
            CLOSE_PAR_SYMBOL3363_tree = (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, CLOSE_PAR_SYMBOL3363));
            ADAPTOR->addChild(ADAPTOR, root_0, CLOSE_PAR_SYMBOL3363_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:3549: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    set3364;

    pANTLR3_BASE_TREE set3364_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3364       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3364_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3549:6: ( EQUAL_OPERATOR | ASSIGN_OPERATOR )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3364=(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, set3364))
                );
                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:3553: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    set3365;

    pANTLR3_BASE_TREE set3365_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3365       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3365_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3553:12: ( GLOBAL_SYMBOL | LOCAL_SYMBOL | SESSION_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3365=(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, set3365))
                );
                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:3560:1: keyword : ( keyword_sp | ( ACCOUNT_SYMBOL | ASCII_SYMBOL | ALWAYS_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 | FOLLOWS_SYMBOL | FORMAT_SYMBOL | GROUP_REPLICATION_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 | PRECEDES_SYMBOL | PREPARE_SYMBOL | REMOVE_SYMBOL | REPAIR_SYMBOL | RESET_SYMBOL | RESTORE_SYMBOL | ROLLBACK_SYMBOL | SAVEPOINT_SYMBOL | SECURITY_SYMBOL | SERVER_SYMBOL | SHUTDOWN_SYMBOL | SIGNED_SYMBOL | SLAVE_SYMBOL | SOCKET_SYMBOL | SONAME_SYMBOL | START_SYMBOL | STOP_SYMBOL | TRUNCATE_SYMBOL | UNICODE_SYMBOL | UNINSTALL_SYMBOL | UPGRADE_SYMBOL | WRAPPER_SYMBOL | XA_SYMBOL ) );
 */
static MySQLParser_keyword_return
keyword(pMySQLParser ctx)
{
    MySQLParser_keyword_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3367;
    MySQLParser_keyword_sp_return keyword_sp3366;
    #undef	RETURN_TYPE_keyword_sp3366
    #define	RETURN_TYPE_keyword_sp3366 MySQLParser_keyword_sp_return

    pANTLR3_BASE_TREE set3367_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3367       = NULL;
    keyword_sp3366.tree = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3367_tree   = NULL;


    retval.tree  = NULL;

    {
        {
            //  MySQL.g:3560:8: ( keyword_sp | ( ACCOUNT_SYMBOL | ASCII_SYMBOL | ALWAYS_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 | FOLLOWS_SYMBOL | FORMAT_SYMBOL | GROUP_REPLICATION_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 | PRECEDES_SYMBOL | PREPARE_SYMBOL | REMOVE_SYMBOL | REPAIR_SYMBOL | RESET_SYMBOL | RESTORE_SYMBOL | ROLLBACK_SYMBOL | SAVEPOINT_SYMBOL | SECURITY_SYMBOL | SERVER_SYMBOL | SHUTDOWN_SYMBOL | SIGNED_SYMBOL | SLAVE_SYMBOL | SOCKET_SYMBOL | SONAME_SYMBOL | START_SYMBOL | STOP_SYMBOL | TRUNCATE_SYMBOL | UNICODE_SYMBOL | UNINSTALL_SYMBOL | UPGRADE_SYMBOL | WRAPPER_SYMBOL | XA_SYMBOL ) )

            ANTLR3_UINT32 alt960;

            alt960=2;

            {
                int LA960_0 = LA(1);
                if ( (((LA960_0 >= ACTION_SYMBOL) && (LA960_0 <= SHARE_SYMBOL)) || ((LA960_0 >= SLOW_SYMBOL) && (LA960_0 <= YEAR_SYMBOL))))
                {
                    alt960=1;
                }
                else if ( (((LA960_0 >= ACCOUNT_SYMBOL) && (LA960_0 <= XA_SYMBOL)) || LA960_0 == SHUTDOWN_SYMBOL))
                {
                    alt960=2;
                }
                else
                {
                    if (BACKTRACKING>0)
                    {
                        FAILEDFLAG = ANTLR3_TRUE;
                        return retval;
                    }


                    CONSTRUCTEX();
                    EXCEPTION->type         = ANTLR3_NO_VIABLE_ALT_EXCEPTION;
                    EXCEPTION->message      = (void *)"";
                    EXCEPTION->decisionNum  = 960;
                    EXCEPTION->state        = 0;


                    goto rulekeywordEx;

                }
            }
            switch (alt960)
            {
        	case 1:
        	    // MySQL.g:3561:2: keyword_sp
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        FOLLOWPUSH(FOLLOW_keyword_sp_in_keyword18363);
        	        keyword_sp3366=keyword_sp(ctx);

        	        FOLLOWPOP();
        	        if  (HASEXCEPTION())
        	        {
        	            goto rulekeywordEx;
        	        }
        	        if (HASFAILED())
        	        {
        	            return retval;
        	        }

        	        if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, keyword_sp3366.tree);

        	    }
        	    break;
        	case 2:
        	    // MySQL.g:3562:4: ( ACCOUNT_SYMBOL | ASCII_SYMBOL | ALWAYS_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 | FOLLOWS_SYMBOL | FORMAT_SYMBOL | GROUP_REPLICATION_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 | PRECEDES_SYMBOL | PREPARE_SYMBOL | REMOVE_SYMBOL | REPAIR_SYMBOL | RESET_SYMBOL | RESTORE_SYMBOL | ROLLBACK_SYMBOL | SAVEPOINT_SYMBOL | SECURITY_SYMBOL | SERVER_SYMBOL | SHUTDOWN_SYMBOL | SIGNED_SYMBOL | SLAVE_SYMBOL | SOCKET_SYMBOL | SONAME_SYMBOL | START_SYMBOL | STOP_SYMBOL | TRUNCATE_SYMBOL | UNICODE_SYMBOL | UNINSTALL_SYMBOL | UPGRADE_SYMBOL | WRAPPER_SYMBOL | XA_SYMBOL )
        	    {
        	        root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


        	        set3367=(pANTLR3_COMMON_TOKEN)LT(1);

        	        if ( ((LA(1) >= ACCOUNT_SYMBOL) && (LA(1) <= XA_SYMBOL)) || LA(1) == SHUTDOWN_SYMBOL )
        	        {
        	            CONSUME();
        	            if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
        	            (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3367))
        	            );
        	            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:3635: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 | CHANNEL_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 | COMPRESSION_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 | FILE_BLOCK_SIZE_SYMBOL | FILTER_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 | INNODB_SYMBOL | IO_SYMBOL | IPC_SYMBOL | ISOLATION_SYMBOL | ISSUER_SYMBOL | INSERT_METHOD_SYMBOL | JSON_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_STATEMENT_TIME_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 | NEVER_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 | REPLICATE_DO_DB_SYMBOL | REPLICATE_IGNORE_DB_SYMBOL | REPLICATE_DO_TABLE_SYMBOL | REPLICATE_IGNORE_TABLE_SYMBOL | REPLICATE_WILD_DO_TABLE_SYMBOL | REPLICATE_WILD_IGNORE_TABLE_SYMBOL | REPLICATE_REWRITE_DB_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 | 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 | STACKED_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 | XID_SYMBOL | XML_SYMBOL | YEAR_SYMBOL );
 */
static MySQLParser_keyword_sp_return
keyword_sp(pMySQLParser ctx)
{
    MySQLParser_keyword_sp_return retval;


    pANTLR3_BASE_TREE root_0;

    pANTLR3_COMMON_TOKEN    set3368;

    pANTLR3_BASE_TREE set3368_tree;

    /* Initialize rule variables
     */

    root_0 = NULL;

    set3368       = NULL;
    retval.start = LT(1); retval.stop = retval.start;


    set3368_tree   = NULL;


    retval.tree  = NULL;

    {
        // MySQL.g:3635: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 | CHANNEL_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 | COMPRESSION_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 | FILE_BLOCK_SIZE_SYMBOL | FILTER_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 | INNODB_SYMBOL | IO_SYMBOL | IPC_SYMBOL | ISOLATION_SYMBOL | ISSUER_SYMBOL | INSERT_METHOD_SYMBOL | JSON_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_STATEMENT_TIME_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 | NEVER_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 | REPLICATE_DO_DB_SYMBOL | REPLICATE_IGNORE_DB_SYMBOL | REPLICATE_DO_TABLE_SYMBOL | REPLICATE_IGNORE_TABLE_SYMBOL | REPLICATE_WILD_DO_TABLE_SYMBOL | REPLICATE_WILD_IGNORE_TABLE_SYMBOL | REPLICATE_REWRITE_DB_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 | 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 | STACKED_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 | XID_SYMBOL | XML_SYMBOL | YEAR_SYMBOL )
        // MySQL.g:
        {
            root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));


            set3368=(pANTLR3_COMMON_TOKEN)LT(1);

            if ( ((LA(1) >= ACTION_SYMBOL) && (LA(1) <= SHARE_SYMBOL)) || ((LA(1) >= SLOW_SYMBOL) && (LA(1) <= YEAR_SYMBOL)) )
            {
                CONSUME();
                if ( BACKTRACKING==0 ) ADAPTOR->addChild(ADAPTOR, root_0, 
                (pANTLR3_BASE_TREE)(ADAPTOR->create(ADAPTOR, set3368))
                );
                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:2174:4: ( OPEN_PAR_SYMBOL expression COMMA_SYMBOL )
    // MySQL.g:2174:5: OPEN_PAR_SYMBOL expression COMMA_SYMBOL
    {
         MATCHT(OPEN_PAR_SYMBOL, &FOLLOW_OPEN_PAR_SYMBOL_in_synpred1_MySQL11103);
        if  (HASEXCEPTION())
        {
            goto rulesynpred1_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


        FOLLOWPUSH(FOLLOW_expression_in_synpred1_MySQL11105);
        expression(ctx);

        FOLLOWPOP();
        if  (HASEXCEPTION())
        {
            goto rulesynpred1_MySQLEx;
        }
        if (HASFAILED())
        {
            return ;
        }


         MATCHT(COMMA_SYMBOL, &FOLLOW_COMMA_SYMBOL_in_synpred1_MySQL11107);
        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:2194:5: ( stored_function_call )
    // MySQL.g:2194:6: stored_function_call
    {
        FOLLOWPUSH(FOLLOW_stored_function_call_in_synpred2_MySQL11224);
        stored_function_call(ctx);

        FOLLOWPOP();
        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
/* End of parsing rules
 * ==============================================
 */

/* ==============================================
 * Syntactic predicates
 */
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;
}
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;
}

/* End of syntactic predicates
 * ==============================================
 */






/* End of code
 * =============================================================================
 */
